How to request administrator permissions when the program starts?
Add the following to your manifest file:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
You can also use highestAvailable
for the level.
Look here about embedding manifest files:
http://msdn.microsoft.com/en-us/library/bb756929.aspx
PS: If you don't have a manifest file, you can easily add a new one:
In Visual Studio, right click project -> Add Item -> Choose Application Manifest File ( under General for Visual C# items)
The added file will already have the above part, just change the level to requireAdministrator
from asInvoker
Put this XML in a file called yourexename.exe.manifest:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0><trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> <security> <requestedPrivileges> <requestedExecutionLevel level="highestAvailable" /> </requestedPrivileges> </security></trustInfo></assembly>
You need to use the requestedExecutionLevel
token in a manifest: