仅当在 D:\test\output\(可执行文件复制到的位置)打开 Windows 资源管理器时,以下代码才会在 EndUpdateResource 调用上引发 110 错误:
std::ifstream in("C:\\Windows\\notepad.exe", std::ios::binary);
std::ofstream out("D:\\test\\output\\notepad.exe", std::ios::binary);
out << in.rdbuf();
in.close();
out.close();
Handle hUpdateRes = BeginUpdateResource(_T("D:\\test\\output\\notepad.exe"), FALSE);
EndUpdateResource(hUpdateRes, FALSE);
只要我没有在 Windows 资源管理器中打开该文件夹,它就可以正常工作。如果我打开它会抛出错误。另外,如果我在 BeginUpdateResource 调用之前执行具有读写访问权限的 CreateFile,即使我打开了输出文件夹,它也会正常工作。我真的很困惑,非常感谢任何帮助。谢谢!
我禁用了机器上的按需病毒扫描程序,代码不再抛出错误。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)