标签: c++ winapi
我想从程序中卸载DLL时将其删除(例如,调用FreeLibrary或关闭程序时)。我该怎么办?
答案 0 :(得分:0)
通常,任务非常简单-调用DeleteFile;如果失败(即dll仍被锁定),则使用MOVEFILE_DELAY_UNTIL_REBOOT标志调用MoveFileEx。但是,如果dll位于“程序文件”中的某个位置,则该程序将无法在不提高特权的情况下将其删除。也就是说,用户将不得不以“管理员身份”重新运行该程序并确认特权提升。