Domanda

Ho un'applicazione a 32 bit ci sto lavorando su obiettivi .NET 3.5;VS2010 è il mio strumento di sviluppo.La mia app richiede privilegi elevati per una varietà di cose, quindi ho un manifesto dell'applicazione che ha la seguente riga:

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

Perché è la cosa giusta da fare, ho anche le righe del manifesto che indicano l'applicazione è compatibile con Windows 7 e Windows Vista:

<!--The ID below indicates application support for Windows Vista -->
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
<!--The ID below indicates application support for Windows 7 -->
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>

L'app funziona alla grande su Windows 7 e Windows Vista.Si apre subito il controllo dell'account utente, non avere influenzato dalla virtualizzazione del registro di sistema, etc.Il manifesto è chiaro che ci lavorano.

Tuttavia, nel 2008 R2 nessuna di queste cose sono vere.UAC messaggio non viene visualizzato.Virtualizzazione del registro di sistema avviene (il mio problema principale).È come se fosse completamente ignorando il mio manifesto dell'applicazione.Non ho idea di dove guardare o cosa controllare.Ho eseguito esattamente la stessa bit su 7, Vista e 2008 R2 e ottenere esattamente gli stessi risultati ogni volta.Il mio 2008 R2 installazione è completamente vaniglia, in quanto è solo una appena installato VM per il test.

Inoltre, io sono abbastanza sicuro che i Server 2008 opera come 2008 R2, sostanzialmente ignorando il manifesto.Qualsiasi aiuto sarebbe molto apprezzato!

È stato utile?

Soluzione

Ho capito la strana risposta alla mia domanda, anche se si presenta in due parti:

  • Per qualche ragione, io non sto ricevendo un messaggio UAC in 2008 o 2008 R2, ma in entrambi i casi l'applicazione è ottenere correttamente elevata e l'applicazione di virtualizzazione è disabilitato correttamente.

  • La mia app, essendo a 32 bit, è stato iscritto nel Wow6432Node chiave del registro di sistema, quindi ho pensato di virtualizzazione stava accadendo, perché le mie modifiche non erano che appare.Se avevo testato nel 2008 x86, che ho avuto, non avrei trovato che le modifiche sono presente, ma non in x64 OSs.

Altri suggerimenti

Server 2008 R2 ha UAC disattivato per impostazione predefinita. Se è spento, quindi gli utenti dal gruppo di amministratori hanno diritti di amministratore completi e gli utenti non-admin non li hanno e non possono essere elevati in un account amministratore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top