Vra

Ek het probeer om 'n paar Win32 dinge doen in C # 3,5 tot verhoogde User Rights vir 'n konsole app kry. Ek ontwikkel op Visual Studio 2008 SP1 / DDR en dinge werk goed wanneer hardloop onder die debugger. Dinge ook werk goed wanneer ek hardloop die konsole app stand-alone. Dinge loop ook fyn toe ek alles in 'n MSI te verpak en installeer dit op 'n bediener 2003 en hardloop die konsole inligting.

As ek dieselfde MSI neem en installeer dit op 'n 2008-bediener met UAC aangeskakel, dan die konsole app hardloop, kry ek boodskappe soos hierdie:

Unable to set right for the account "DOMAIN\QAUSER": SeCreateGlobalPrivilege
System.UnauthorizedAccessException    Attempted to perform an unauthorized operation.

Ek kan nie verwag dat my ontplooiing / bediener bestuurders om iets te doen met my app behalwe installeer dit, en hulle is nie van plan af UAC te draai. Daar moet 'n paar programmatiese manier wees om behoorlik te stel gebruikersregte wat ek kan byvoeg by die konsole app - iemand wat weet hoe

Dankie.

Ander wenke

Ek neem aan dat UAC aangeskakel op die masjien 2008 en ek kan nog nie kommentaar lewer op jou vraag te vind.

As dit so is, verseker dat in jou app.manifest lêer in VS (onder eiendomme), verandering

<requestedExecutionLevel  level="asInvoker" uiAccess="false" />

na

<requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />

Selfs al is die kode wel soos 'n administrateur, wat jy hoef te kry deur die UAC waarskuwing.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top