Kompiliertes Python (py2exe) als Administrator in Vista ausführen

7

Ist es möglich, kompiliertes Python (über py2exe kommend) als Administrator in Vista zu programmieren?

Noch eine Klarstellung:
Ich habe ein Programm geschrieben, das die Windows-Hosts-Datei ändert (c: \ Windows \ system32 \ drivers \ etc \ hosts) in Vista wird das Programm nicht ausgeführt und wird mit einer Ausnahme fehlschlagen, wenn Sie mit der rechten Maustaste klicken und als Administrator ausgeführt werden Der Benutzer hat Administratorrechte, anders als in XP, wo er ausgeführt wird, wenn der Benutzer Administratorrechte hat, also brauche ich eine Möglichkeit, ihn programmatisch auf die richtigen Rechte zu erhöhen.

    
UnkwnTech 12.10.2008, 04:46
quelle

3 Antworten

5

Meinst du, dass Windows beim Ausführen des Programms eine Erhöhung verlangen soll? Dies wird durch Hinzufügen eines UAC-Manifests zu den EXE-Ressourcen gesteuert. In diesem Blogeintrag wird erläutert, wie das Manifest erstellt und in ein .RES-Datei.

Ich weiß nicht, welche Einrichtungen py2exe zum Einbetten benutzerdefinierter .RES-Dateien zur Verfügung hat. Daher müssen Sie möglicherweise das Tool MT.EXE aus dem Platform SDK verwenden, um das Manifest in Ihr Programm einzubetten. MT.EXE benötigt keine .RES-Dateien; es kann die .manifest-Datei direkt zusammenführen.

    
Roger Lipscombe 12.10.2008, 08:55
quelle
35

Befolgen Sie die Beispiele von Python2x\Lib\site-packages\py2exe\samples\user_access_control fügen Sie einfach uac_info="requireAdministrator" zu console oder windows dict:

hinzu %Vor%     
Ivaylo 18.09.2009 16:15
quelle
3

Nachdem ich Roger Lipscombes Kommentar gelesen habe, habe ich eine Manifest-Datei in py2exe benutzt, ohne wirklich zu wissen, was ich gerade mache. Also könnte funktionieren :

%Vor%

Sie müssen vielleicht etwas herumspielen.

    
John Fouhy 12.10.2008 22:17
quelle