也许我的问题完全错了,但这是我想到的第一件事 .

所以,我有两个进程(两个exes) - 让它称之为 AB . 进程 A 在单独的工作目录中启动进程 B 作为分离进程(使用Qt的 QProcess::startDetached() ) . 在某些时候 B 决定更新 A . 它向它发送一个信号并退出 A (使用 QApplication::quit() ) . 之后 B 下载文件并尝试将它们替换(解压缩)到 A 's folder, but unzipping fails. The library I' m用于解压缩(quazip)没有任何错误 - 它只是失败 . 另一个有趣的事情 - 在解压缩过程中删除 A 文件夹中的某些文件 .

这是我项目的结构:
Process Aa.exe 使用 1.dll2.dll3.dll
Process Bb.exe 使用 1.dll2.dll

这个dll是相同的,但它们被复制到不同的文件夹 - AB 's folders. One of the dlls is used for communication via socket/server. Another dll uses extern variables (don't知道 - 也许它以某种方式相关) .

该zip文件具有相同的 a.exe1.dll2.dll3.dll 文件 . B 无法将某些文件解压缩到 A 的文件夹,但该文件夹中的某些旧文件被删除了 . 根据任务管理器 A 没有运行,zip文件绝对正确 .

我的操作系统是Windows 7 .