如何知道文件正在被传输 ,并且传输完成后将整个文件删除

[复制链接]
查看11 | 回复7 | 2021-1-27 06:22:38 | 显示全部楼层 |阅读模式
如何知道文件正在被传输,并且传输完成后将整个文件删除
分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
if(IsTransmiting(szFileName))
{
WaitIt();
DeleteFile(szFileName);
}

回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
这种问题嘛,直接设置标志位即可!
在开始传输的时候BOOLIsTranslating=TRUE;
完成的时候等于FALSE;
根据标志判断即可。
回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
假如有一台医疗仪器通过网口和电脑连接,电脑在D盘有个文件夹A,A中有个文件a.csv,把文件夹A共享,仪器在文件夹A中自动搜索csv文件,并把a.csv文件自动调入仪器。
请问如何编程实现以下功能:监控文件a.csv的传送,并且文件传送完成后进行提示。
大体是这样的过程应该如何处理啊
回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
用fopen_s打开后传输文件
其他程序再次打开会失败,直到打开成功为止,认为传输完毕
回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
要显示进度就要仪器和你的C程序通讯,来完成传输,不然那个进度是仪器那边知道,你不知道,你只能知道这个文件被删了。
回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
仪器传输文件用的肯定是类似XXSend(),XXReceive()的API函数,Hook住这些函数。
学学HookAPI技术吧,应该能解决你的问题。
回复

使用道具 举报

千问 | 2021-1-27 06:22:38 | 显示全部楼层
传输之前获得文件大小传输的过程中在本地记录每次传输到哪里,传输到文件的最后即等于文件的大小就提示完成
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行