none
Bug su Windows 7 con Visual Studio 2010 RRS feed

  • Discussione generale

  • Buongiorno,

    volevo sottoporvi un problema che ho riscontrato su Windows 7 con Visual Studio 2010.

    Stavo sviluppando un applicazione, la quale deve effettuare accesso al registro di configurazione per salvare dei parametri.

    Visto che Windows 7 ha l'UAC attivo e che la creazione di una chiave di registro mi restituiva accesso negato ho creato un file manifest cosi composto (come consigliato su http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/52640035-b12c-4332-91a6-aca12bd26b20):

    <?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.0.0.0" name="MyApplication.app"/>
     <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
      <security>
       <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <!-- UAC Manifest Options
          If you want to change the Windows User Account Control level replace the 
          requestedExecutionLevel node with one of the following.
    
        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
        <requestedExecutionLevel level="highestAvailable" uiAccess="false" />
    
          If you want to utilize File and Registry Virtualization for backward 
          compatibility then delete the requestedExecutionLevel node.
        -->
        <requestedExecutionLevel level="requireAdministrator" uiAccess="true" />
       </requestedPrivileges>
      </security>
     </trustInfo>
    </asmv1:assembly>

    Ma una volta avviata l'applicazione dopo pochi minuti il sistema diventa instabile.

    Molti servizi di windows, pur risultando avviati non funzionano più (in particolare il servizio Provider Gruppo Home va in errore e non si riesce a riavviarlo), il sistema non accede più ad internet ed è necessario riavviare il sistema e cancellare il file manifest per non riscontrare più le problematiche sopra elencate.

    Per accedere al registro devo quindi avviare visual studio con privilegi di amministratore e lavorare senza il file manifest.

    Adesso io il problema l'ho risolto, ma volevo comunque segnalare questa falla di sistema.

    Saluti, Dario Bondì

    venerdì 22 ottobre 2010 23:37

Tutte le risposte

  • Dario Bondì wrote:

    Buongiorno,

    volevo sottoporvi un problema che ho riscontrato su Windows 7 con Visual Studio 2010.

    Stavo sviluppando un applicazione, la quale deve effettuare accesso al registro di configurazione per salvare dei parametri.

    Visto che Windows 7 ha l'UAC attivo e che la creazione di una chiave di registro mi restituiva accesso negato ho creato un file manifest cosi composto (come consigliato suhttp://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/52640035-b12c-4332-91a6-aca12bd26b20):

    [...]


    Ma una volta avviata l'applicazione dopo pochi minuti il sistema diventa instabile.

    Molti servizi di windows, pur risultando avviati non funzionano più (in particolare il servizio Provider Gruppo Home va in errore e non si riesce a riavviarlo), il sistema non accede più ad internet ed è necessario riavviare il sistema e cancellare il file manifest per non riscontrare più le problematiche sopra elencate.

    Per accedere al registro devo quindi avviare visual studio con privilegi di amministratore e lavorare senza il file manifest.

    Adesso io il problema l'ho risolto, ma volevo comunque segnalare questa falla di sistema.

    Saluti, Dario Bondì

    Non capisco la relazione tra le cose:
    - tu hai sviluppato una applicazione che triggera UAC automaticamente grazie al manifest.
    - lanci la tua applicazione e modifichi delle chiavi di registry ... ma non dici quali.
    - da quel momento il sistema è instabile

    Detto così il problema è solo della tua applicazione che è andato a pasticciare nel registry.
    Se le cose stanno diversamente puoi spiegare meglio la situazione?
     Considerato che l'elevazione fin dall'avvio è fuori dalla certificazione Windows, bisognerebbe capire quali sono i settaggi che hanno bisogno di elevazione. Se usi HKCR non ne hai bisogno.
     -- Raffaele Rialdi  http://www.iamraf.net
    Weblog: http://blogs.ugidotnet.org/raffaele
    Microsoft MVP profile https://mvp.support.microsoft.com/profile/raffaele
    UGIdotNET - http://www.ugidotnet.org/


    Raffaele Rialdi [MVP] My articles and videos: http://www.iamraf.net Italian blog: http://blogs.ugidotnet.org/raffaele
    domenica 24 ottobre 2010 09:12