Visual c++ 大型系统中的dll替换
当更改dll时,我必须将其放在系统加载到内存的目录中。问题是每次我更改它时,我都必须关闭系统,用新的dll替换dll,然后启动系统。大约需要15/20分钟,非常长Visual c++ 大型系统中的dll替换,visual-c++,dll,Visual C++,Dll,当更改dll时,我必须将其放在系统加载到内存的目录中。问题是每次我更改它时,我都必须关闭系统,用新的dll替换dll,然后启动系统。大约需要15/20分钟,非常长 有人能告诉我如何避免这种情况吗?当您快速切换DLL版本时,请将DLL与可执行文件放在同一目录中,或者在“项目设置->配置属性->调试->环境”中提供切换DLL的目录路径。这样你就不必弄乱你的Windows系统目录了 然而,微软表示: 如果内存中已经加载了具有相同模块名的DLL,则系统在解析到加载的DLL之前,仅检查重定向和清单,而不管
有人能告诉我如何避免这种情况吗?当您快速切换DLL版本时,请将DLL与可执行文件放在同一目录中,或者在“项目设置->配置属性->调试->环境”中提供切换DLL的目录路径。这样你就不必弄乱你的Windows系统目录了 然而,微软表示: 如果内存中已经加载了具有相同模块名的DLL,则系统在解析到加载的DLL之前,仅检查重定向和清单,而不管它位于哪个目录中。系统不搜索DLL
如果对您有效,您可以尝试。Visual Studio放置DLL的目录是固定的,我无法更改它。系统从中获取DLL的目录也是固定的,不能更改。我这里需要的是某种批处理程序或任何实用程序,它们将杀死访问DLL的进程,然后替换DLL,然后重新启动程序。你是说已经加载到内存中的DDL?当它们尚未加载时,我的答案实际上适用。请参阅和一个类似的问题:如果这不是您想要的,请更清楚地解释您的问题。Microsoft链接非常有用。我指的是已经加载到内存中的DLL。我想替换DLL文件并重新加载到内存中。