#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. scrapy抓取拉勾网职位信息(五)——代码优化

    上一篇我们已经让代码跑起来,各个字段也能在控制台输出,但是以item类字典的形式写的代码过于冗长,且有些字段出现的结果不统一,比如发布日期. 而且后续要把数据存到数据库,目前的字段基本都是string ...

  2. Java常用工具类之自定义访问对象

    package com.wazn.learn.util; import javax.servlet.http.HttpServletRequest; /** * 自定义访问对象工具类 * * 获取对象 ...

  3. 基于NMAP日志文件的暴力破解工具BruteSpray

    基于NMAP日志文件的暴力破解工具BruteSpray   使用NMAP的-sV选项进行扫描,可以识别目标主机的端口对应的服务.用户可以针对这些服务进行认证爆破.为了方便渗透测试人员使用,Kali L ...

  4. CodeForces - 1017C The Phone Number

    题面在这里! 一开始有一种构造猜想,可以把答案降到 sqrt(N) 级别. 考虑把 {1,2,...,n} 分成 sqrt(N) 段,每一段是连续的sqrt(N)个数.然后我们倒着把每一段数放上. 比 ...

  5. hdu 3294 manacher 求回文串

    感谢: http://blog.csdn.net/ggggiqnypgjg/article/details/6645824/ O(n)求给定字符串的以每个位置为中心的回文串长度. 中心思想:每次计算位 ...

  6. HDU 5646 DZY Loves Partition 数学 二分

    DZY Loves Partition 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5646 Description DZY loves parti ...

  7. 实战-130W表增加字段耗时

    工作需要对130W的表增加字段,因为是操作线上数据库,所以提前在本地调查下耗时. 首先建表: CREATE TABLE `alter_cloumn_test` ( `id` int(11) unsig ...

  8. HashMap结构及使用

    HashMap的数据结构 HashMap主要是用数组来存储数据的,我们都知道它会对key进行哈希运算,哈系运算会有重复的哈希值,对于哈希值的冲突,HashMap采用链表来解决的.在HashMap里有这 ...

  9. JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式

    JSON JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 它基于JavaScript(Standard ECMA-262 3rd Edition - D ...

  10. Handling Errors and Exceptions

    http://delphi.about.com/od/objectpascalide/a/errorexception.htm Unfortunately, building applications ...