#coding:utf-8

 from ctypes import *
from FileCopy import * def GetFilePathList(FilePath):
dll = CDLL(r"F:\VSProject\FileFunction20190101Dll\Release\FileFunction20190101Dll.dll")
Length = c_int(0)
return dll.TraversFileInterface(FilePath) des = 'E:\Pictures'
src = 'J:\Video&Pictures' #源路径文件列表获取
psrcchar = GetFilePathList(src)
szSrcBuffer = c_char_p(psrcchar)
SrcFilePath = szSrcBuffer.value
SrcFilePathList = SrcFilePath.split('\r\n') #目标文件列表获取
pdeschar = GetFilePathList(des)
szDesBuffer = c_char_p(pdeschar)
DesFilePath = szDesBuffer.value
DesFilePathList = DesFilePath.split('\r\n') #生成目标路径比对集合
DesFileSet = set()
for FilePath in DesFilePathList:
#print FilePath.split('\\')[-1]
DesFileSet.add(FilePath.split('\\')[-1]) NewSrcFileList = []
#根据目标路径内容剔除已存在文件
for FilePath in SrcFilePathList:
#print FilePath.split('\\')[-1]
if FilePath.split('\\')[-1] not in DesFileSet:
NewSrcFileList.append(FilePath) #根据目的地址路径对源文件列表进行改造替换,生成拷贝目的地址
DesCopyList = []
for FilePath in NewSrcFileList:
CopyPath = FilePath.replace(src, des)
CopyPath = CopyPath[0:CopyPath.rfind('\\')+1]
CopyFromSrcToDes (FilePath, CopyPath)
#DesCopyList.append(CopyPath) print len(NewSrcFileList)
print len(DesCopyList)
#dll.PrintHex(filedata, len(filedata))

FileCopy文件

 import os

 def CopyFileByList():
return def CopyFromSrcToDes(src, des):
cmdname = 'xcopy ' + '\"' + src + '\"' + ' \"' + des + '\"'
RunCmd(cmdname)
return def RunCmd(cmd):
print cmd
ret = os.system(cmd)
return

文件同步程序,Python和C写的DLL的更多相关文章

  1. [开源] 基于ABP,Hangfire的开源Sharepoint文件同步程序----SuperRocket.SPSync

    (一)项目背景 Sharepoint是微软的一个产品,很多公司都在使用它,也有很多公司以前使用它,现在可能需要移植到别的平台,也可能只是移植其中的文件存储,比如说移植到微软云,或者亚马逊云存储.Sup ...

  2. 信号量和PV操作写出Bakery算法的同步程序

    面包店烹制面包及蛋糕,由n个销售员卖出.当有顾客进店购买面包或蛋糕时,应先在取号机上取号,然后等待叫号,若有销售员空闲时便叫下一号,试用信号量和PV操作写出Bakery算法的同步程序. 设计要求 1) ...

  3. 远程文件同步详解(Remote File Sync)

    1. 远程文件同步的常见方式: 1.cron + rsync 优点: 简单 缺点:定时执行,实时性比较差:另外,rsync同步数据时,需要扫描所有文件后进行比对,进行差量传输.如果文件数量达到了百万甚 ...

  4. linux服务器之间的文件同步;rsync+inotifywait;同步多个目录

    1.双向同步:unison+inotify 2.单向同步:rsync+inotify python版的pyinotify 本文介绍第二种方法: 1.Inotify 是一个 Linux特性,它监控文件系 ...

  5. 使用WinSCP进行简单代码文件同步

    前言传输协议FTPFTPSSFTPSCP为什么使用WinSCP?CMD的FTP命令FileZillaPuTTYrsyncSublime的SFTP插件WinSCPWinSCP进行简单代码文件同步总结备注 ...

  6. 实战远程文件同步(Remote File Sync)

    1. 远程文件同步的常见方式: 1.cron + rsync 优点: 简单 缺点:定时执行,实时性比较差:另外,rsync同步数据时,需要扫描所有文件后进行比对,进行差量传输.如果文件数量达到了百万甚 ...

  7. BAT实现服务器文件同步

    服务器文件同步有很多工具,例如 GoodSync.rsync.BitTorrent Sync等……其实WINDOWS下自带了一个文件同步利器:ROBOCOPY.它是一个命令行的目录复制命令,自从Win ...

  8. sharepoint多个NLB的web前段如何进行文件同步?

    大家都知道,sharepoint2010服务器场可能有2个或2个以上的web服务器做NLB,有个时候牵涉到上传文件到文件夹(说到这里,有人会说全部以二进制文件保存到文档库啊,但是有些情况不允许的,比如 ...

  9. 烂泥:linux文件同步之rsync学习(一)

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天刚好有空就打算开始学习linux下的文件同步软件rsync,在学习rsync时,我们可以分以下几个步骤进行: 1. rsync是什么 2. rsy ...

随机推荐

  1. aop相关术语

    AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向切面的编程.并不是全部的AOP框架都是一样的.他们连接点模型的功能可能有强弱之分,有些可以字段,方法,构 ...

  2. php获取当前域名、主机、URL、端口、参数、网址、路径、代理等【转】

    <?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br />"; //获取网页地址 echo $_SERVER['PH ...

  3. 【BZOJ 4662】 4662: Snow (线段树+并查集)

    4662: Snow Time Limit: 40 Sec  Memory Limit: 256 MBSubmit: 136  Solved: 47 Description 2333年的某一天,临冬突 ...

  4. [BZOJ5093]图的价值(NTT+第二类Stirling数)

    5093: [Lydsy1711月赛]图的价值 Time Limit: 30 Sec  Memory Limit: 256 MBSubmit: 250  Solved: 130[Submit][Sta ...

  5. 修改npm仓库地址

    在C:\Users\Administrator文件夹下找到.npmrc 添加registry = http://registry.cnpmjs.org淘宝镜像地址,保存

  6. VK Cup 2016 - Round 1 (Div. 2 Edition) C. Bear and Forgotten Tree 3 构造

    C. Bear and Forgotten Tree 3 题目连接: http://www.codeforces.com/contest/658/problem/C Description A tre ...

  7. Git 中文件的状态和流转区

    Git的文件主要处于三种状态,分别是 staged, modified, committed. Git文件流转有三个区域,分别是 工作区域. 索引区域. 本地数据区域. 要修改对一个文件进行操作,首先 ...

  8. 利用DC/DC开关调节器延长DSP系统的电池寿命 - 动态电压调节

    http://www.analog.com/zh/content/dc-to-dc_switching_regulator_insights/fca.html 作者:Sridhar Gurram,Ol ...

  9. Mysql5.7全新的root密码规则

    http://blog.csdn.net/erlib/article/details/48003681

  10. jQuery向父辈遍历的方法

      通过DOM树可以可容易的访问到html文档中的所有元素 例如向上访问父辈的元素有以下方法 1.parent()方法可以得到所定元素的直接父元素 $("span").parent ...