我有一個必須使用管理員權限執行的應用程序。如果UAC開啓,那麼一切都很好。但是,如果UAC已關閉,則啓動時不會出現提示(即使對於標準用戶),應用程序也會以受限制的權限啓動。在沒有UAC的情況下在系統上執行具有管理員權限的應用程序
帶動詞「runas」的開始過程不起作用。
有沒有什麼辦法可以顯示標準UAC登錄對話框並執行具有管理權限的應用程序,即使UAC已關閉?
更新: 清單包括:
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.1.6.0" processorArchitecture="X86" name="setup" type="win32"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>
和everithing是確定的,當UAC處於活動狀態。但是,如果UAC處於關閉狀態,則不起作用。
更新2::此行爲由MSDN Step 6: Create and Embed an Application Manifest (UAC)(請參閱表格「標準用戶帳戶的應用程序啓動行爲」最後一行)記錄。所以我無法用任何清單解決這個問題。還有其他解決方案嗎?
這是你想要做什麼? http://stackoverflow.com/questions/2818179/how-to-force-my-net-app-to-run-as-administrator-on-windows-7 – Arie
「UAC已關閉」的角度是一個模糊的。聽起來像該機器的管理員不想允許需要提升的程序運行。因此您無法在該機器上運行您的程序。直到你沒有提升或管理人員降級,這樣做纔會變得更好。我們無法幫助您達到目標。 –
@HansPassant是正確的。如果您的應用*需要*管理員權限,並且該機器不允許提升的應用運行,那麼您無法運行您的應用,對不起。 (爲什麼您的應用需要管理員權限?) –