AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Delphi Programm, das AdminRechte braucht unter Vista
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi Programm, das AdminRechte braucht unter Vista

Offene Frage von "CodeX"
Ein Thema von Tom4321 · begonnen am 14. Feb 2007 · letzter Beitrag vom 21. Jan 2008
Antwort Antwort
Seite 1 von 3  1 23      
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
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 10:41
Versuch mal das Manifest als Ressource in die Exe einzubinden. Wie das geht, sollte hier im Forum zu finden sein.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Tom4321

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

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 10:46
Leider nichts gefunden, oder bin ich zu blöd??
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#4

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 10:49
Hier im Forum suchenRessourcen einbinden - liefert z.B. http://www.delphipraxis.net/internal...=478975#478975
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Tom4321

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

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 10:49
Sorry, man sollte nich nach "Manifest einbinden" suchen
  Mit Zitat antworten Zitat
Tom4321

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

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 11:07
Also leider wieder kein Erfolg. Ich bin wie folgt vorgegangen:

1. Manifest als Textfile im gleichen Folder wie die Exe abspeichern.
2. Mit einem Texteditor einen xyz.rc-File erstellen. Inhalt:
Manifest RT_MANIFEST "Demo.exe.manifest"
3. Eine xyz.bat-Datei erstellet. Inhalt:
brcc32 xyz.rc
4. Einen Doppelklick auf diese .bat-Datei.
5. Diese xyz.Res-Datei wie folgt in der .dpr vor begin eingetragen.
{$R xyz.res}

Ergebnis: Gar keines, es ist wie vorher. Sieht jemand meinen Fehler??
  Mit Zitat antworten Zitat
Tom4321

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

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 12:02
So kleines Update: Habe mal mit dem PE Builder in die Exe reibgeschaut und das Manifest File wird eingebunden, nur leider ohne jegliches Ergebnis?!
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 12:07
Ich hatte vor einer Weile auch mal damit rumgetestet, bin aber grad nicht an einem Vista-Rechner.

Lass mal probehalber uiAccess weg, damit der Defaultwert genommen wird (der ist, glaub ich aber false)

Ich schau dann noch mal nach.
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#9

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 14. Feb 2007, 12:23
Schau mal in die PowerPoint-Slides von CodeGear zu dem Thema:
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
471 Beiträge
 
Delphi 12 Athens
 
#10

Re: Delphi Programm, das AdminRechte braucht unter Vista

  Alt 23. Feb 2007, 13:47
Ich habe jetzt auch mit diesem Thema zu kämpfen ... bisher erfolglos.

Ich habe die Anleitung von CodeGear (aus der im Post vorher verlinkten PP Präsentation) Schritt für Schritt befolgt.
Leider bekomme ich beim Ausführen der Exe die Meldung "Diese Anwendung konnte nicht gestartet werden, weil die Anwendungskonfiguration nicht korrekt ist. Zur Problembehandlung sollten Sie die Anwendung neu installieren."

Der Inhalt der ExecutionLevelAdmin.manifest (abgetippt, aber mehrmals kontrolliert. Vllt ist ja trotzdem ein Typo drin)
XML-Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft.com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type="win32"
        name="Microsoft.Windows.Common-Controls"
        version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"
        language="*"
        processorArchitecture="x86" />
    </dependentAssembly>
  </dependency>

  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPriviledges>
        <requestedExecutionLevel
          level="requireAdministrator"/>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>
Inhalt der ExecutionLevelAdmin.rc:
Code:
1 24 "ExecutionLevelAdmin.manifest"
Die Automatische Umwandlung hat mit nachfolgender Zeile leider nicht funktioniert (es kam immer die Meldung beim Kompilieren "ExecutionLevelAdmin.res nicht gefunden")
{$R 'ExecutionLevelAdmin.res' 'ExecutionLevelAdmin.rc'} Deshalb habe ich diese manuell mit
Code:
brcc32 ExecutionLevelAdmin.rc
umgewandelt.


So und nun stehe ich mit ganz oben angemerkter Fehlermeldung da und weiß nicht weiter. Kann mir da jetzt helfen?

EDIT: So ein Mist! Warum sieht man die Fehler erst nachdem man nachfragt, weil man zuvor Stunden damit verbracht hat, vergeblich rumzuprobieren? Bei "requestedPriviledges" ist natürlich ein "d" zuviel. Und schon geht das ganze ...

Aber glücklich bin ich mit der Lösung dann doch nicht wirklich. Es kommt ja jetzt beim Start immer eine UAC Meldung, die man bestätigen muss. Geht das nicht irgendwie noch anders? Also eine einmalige Abfrage wäre ja noch OK, aber bei JEDEM Programmstart??
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz