É factível, mas não é fácil de explicar.
Existem apenas três motivos para um aplicativo solicitar a elevação na inicialização:
- a guia Compatibilidade tem a opção "Executar este programa como administrador"
- o aplicativo tem um manifesto (incorporado ou externo) que especificou
requireAdministrator
- há uma atualização de compatibilidade da Microsoft que a marcou como administrador necessário
Supondo que você já tenha verificado a guia de compatibilidade e o aplicativo não esteja configurado para exigir administrador:
Opróximopassoéverificarseháummanifestoderecursoincorporado.Eunãovouentraremcomovocêpodedescobririsso.Maspuleparacriarummanifestoparavocêmesmo.
CrieumarquivonomesmodiretórioqueoFalloutModManager(nãoseiaqueexe
échamado,masvouchamá-lodeFalloutModManager.exe
:
FalloutModManager.exe FalloutModManager.exe.manifest
Estenovoarquivomanifest
quevocêcriaéumarquivodetextosimples,contendoxml,comumaentradademanifestoquedizquequeremoslançarasInvoker,emvezderequireAdministrator:
FalloutModManager.exe.manifest
<?xmlversion="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="client"
type="win32" />
<description>Poorly written Fallout Mod Manager fails on XP as standard user</description>
<!-- Disable file and registry virtualization, and don't require elevation -->
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
Ter este arquivo ao lado de seu executável é chamado de " manifesto externo ". Também é possível que o executável tenha um recurso incorporado, o qual você precisaria de uma ferramenta como o Resource Hacker para ver ou modificar.