阅读:1135回复:4
文件替换问题
如果一个文件正在使用,如何将这个文件替换掉,这样下次启动时可以解决bug???高手请指招。
|
|
沙发#
发布于:2004-06-18 16:04
问题解决了,重新启动后文件被覆盖,源文件消失!谢。
|
|
板凳#
发布于:2004-06-15 14:13
如果一个文件正在使用,如何将这个文件替换掉,这样下次启动时可以解决bug???高手请指招。 方式大致这样,使用MoveFileEx函数,在dwFlag中包括 比如你要将C:\A.dll替换为D:\A.dll,这样调用 MoveFileEx("D:\\A.dll" , "C:\\A.dll" , MOVEFILE_REPLACE_EXISTING|MOVEFILE_DELAY_UNTIL_REBOOT) ; 注意:你这样D:\A.dll变会丢失。 我没有测试,实在没有那么多时间对所有问题都一一写代码测试,你测试一下然后把结果告诉我。谢谢 msn: mfczmh@sian.com |
|
|
地板#
发布于:2004-06-15 14:04
试一试这段代码 这是什么意思? |
|
|
地下室#
发布于:2004-06-14 17:21
试一试这段代码
char cTempFileName[0x80]; char cTempPathName[0x100]; char cFileName[0x100]; char szFileToDel[64]; strcpy(szFileToDel,"C:\\CreateLgtFile.exe"); sprintf(cTempPathName, "%c:\\", szFileToDel[0]); if(GetTempFileName(cTempPathName, "_@", 0, cTempFileName) == 0){ return ; } if(MoveFileEx(szFileToDel, cTempFileName, 1) == 0){ return ; } if(MoveFileEx(cTempFileName, NULL, 4) == 0){ return ; } return ; |
|