Einzelnen Beitrag anzeigen

Tom4321

Registriert seit: 31. Aug 2006
40 Beiträge
 
#1

Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 10:35
Hallo Leute,

also ich habe mich jetzt schon durch die Suche "gecrawlt" aber leider nichts wirklich passendes gefunden

Also folgendes Problem: Ich habe eine Applikation die Adminrechte braucht. Unter XP kein Problem. Unter Vista allerdings dank UAC schon. Das Programm aus dem Installer laufen lassen funtioniert ohne Probleme, beim zweiten Start funktioniert es nicht mehr richtig.

Starte ich das Programm dann über das Kontextmenü als Admin, läuft es wieder wunderbar.

Also war meine Idee dem programm fix mitzugeben das es mit Adminrechten startet, sollte ja über eine Manifestdatei nicht das Problem sein.

Also habe ich (wie im Forum beschrieben) der Exe per Installer eine Manifestdatei (die heisst wie die .EXE plus .manifest) dazukopiert. Sie sieht folgendermassen aus:

Delphi-Quellcode:
<?xml version="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="Meine Programname"
                   type="win32"/>
 <description>Meine Programmbeschreibung</description>
 
 <trustInfo xmlns="urn:schemas-microsoft.com:asm.v3">
   <security>
     <requestedPrivileges>
       <requestedExecutionLevel
         level="requireAdministrator"
         uiAccess="false"/>
     </requestedPrivileges>
   </security>
 </trustInfo>
</assembly>
Im Projekt selber ist keine Manifest-Komponente eingebunden.

Tja und was passiert? Gar nichts. Das Programm startet unter Vista beim zweiten Start wieder mit Userrechten (sprich es kommt keine UAC-Abfrage) und geht nicht. Was mache ich falsch?

Ich habe im Forum gelesen, das man solche Manifestdateien auch in die .Exe einbinden kann, aber wie?

Theoretisch wäre mir lieber die Datei extra dazuzuliefern.

Wer kann helfen??
  Mit Zitat antworten Zitat