我試圖以編程方式取得windows 8.1 system32文件夾中uxtheme.dll的所有權(C++)。我讀了,嘗試了幾個小時的搜索,但無法找到任何解決方案。每次設置uxtheme所有權時,它都不會顯示在屬性選項卡中。所有權和完整權限始終由Trusted Installer繼承。在C++中取得uxtheme.dll的所有權並贏得8.1
我試過system("takeown /f C:\Windows\system32\uxtheme.dll")
,它打印出成功,但可悲的是不工作。
同樣可以從msdn的功能TakeOwnership()
。 [http://msdn.microsoft.com/en-us/library/windows/desktop/aa379620%28v=vs.85%29.aspx]
我需要做什麼,繼承本地所有權管理員,所以我可以改變這個DLL?資源保護與它有什麼關係?
一旦設置了所有權,我將能夠用MoveFileEx()替換dll嗎?
非常感謝你, lody
當你使用'system'函數時,它會爲該命令創建一個* new *進程,這就是爲什麼它不起作用。 –
至於'TakeOwnership'函數,與任何其他系統函數一樣,您需要檢查*爲什麼*失敗。這是通過['GetLastError'](http://msdn.microsoft.com/en-us/library/windows/desktop/ms679360%28v=vs.85%29.aspx)函數完成的(注意:只有在調用if一個函數實際上失敗了)。請參閱[這裏的錯誤代碼列表](http://msdn.microsoft.com/en-us/library/windows/desktop/ms681381%28v=vs.85%29.aspx)。 –
謝謝你的快速啓動!那麼我應該使用WinExec()還是ShellEexecute()?正如我所說,它不會失敗。它退出消息「DACL改變成功」。 – lody