AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen FreePascal Wie kann man ein Manifest unter Lazarus bearbeiten?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie kann man ein Manifest unter Lazarus bearbeiten?

Ein Thema von gauggi · begonnen am 27. Aug 2009 · letzter Beitrag vom 29. Aug 2009
Antwort Antwort
gauggi

Registriert seit: 18. Apr 2006
177 Beiträge
 
#1

Wie kann man ein Manifest unter Lazarus bearbeiten?

  Alt 27. Aug 2009, 21:45
Hallo!

Ich habe mit Lazarus ein Programm geschrieben, welches mit Adminrechten unter Vista/Win7 gestartet werden sollte.

Damit das Betriebssystem erkennt, dass das Programm mit höheren Rechten gestartet werden sollte, muss man die Manifest Datei leicht abändern, etwa so:

XML-Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0]
 <assemblyIdentity version="1.1.1.1"
  processorArchitecture="X86"
  name="YourApplicationExeName"
  type="win32"/>
 <description>elevate execution level</description>
 <trustenfo xmlns="urn:schemas-microsoft-com:asm.v2]
 <security>
  <requestedPrivileges>
   <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
  </requestedPrivileges>
 </security>
 </trustenfo>
</assembly>
Wenn ich nun die Manifestdatei, welche Lazarus mir automatisch erstellt, so abändere wie oben, funktioniert es immer noch nicht, beim nächsten Compilieren wird das Manifest von Lazarus ohne mein Zutun wieder in den Ursprungszustand gebracht. Gibt es da irgendeine Möglichkeit?

Danke schon mal.

Grüße
  Mit Zitat antworten Zitat
Peter1999

Registriert seit: 13. Dez 2007
Ort: Dresden
88 Beiträge
 
Delphi XE2 Professional
 
#2

Re: Wie kann man ein Manifest unter Lazarus bearbeiten?

  Alt 27. Aug 2009, 22:03
Hi,
ist es denn wirklich nötig das Manifest über Lazarus einzubinden?
Nimm doch den Vista UAC Maker und hänge das Manifest nachträglich an die EXE. Geht eigentlich gut und man kann nichts falsch machen .

Viele Grüße,
Peter
  Mit Zitat antworten Zitat
gauggi

Registriert seit: 18. Apr 2006
177 Beiträge
 
#3

Re: Wie kann man ein Manifest unter Lazarus bearbeiten?

  Alt 27. Aug 2009, 22:14
Zitat von Peter1999:
Hi,
ist es denn wirklich nötig das Manifest über Lazarus einzubinden?
Nimm doch den Vista UAC Maker und hänge das Manifest nachträglich an die EXE. Geht eigentlich gut und man kann nichts falsch machen .

Viele Grüße,
Peter
Hallo!

Zuerstmal vielen Dank für deine Hilfe, jedoch zerstört der Vista UAC Maker leider meine EXE. "ist keine zulässige Win32 Anwendung", vermeldet Windows Vista. Kann es sein, dass es mit Lazarus Exe'n nicht funktioniert, was ja auch irgendwie sonderbar wäre.

Grüße
  Mit Zitat antworten Zitat
Peter1999

Registriert seit: 13. Dez 2007
Ort: Dresden
88 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Wie kann man ein Manifest unter Lazarus bearbeiten?

  Alt 27. Aug 2009, 23:52
Tja, dann also doch klassisch

1. In Lazarus das Manifest abschalten!!
2. Dein Manifest funktioniert nicht, nimm mal das hier
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="Application.exe" type="*"/>
  <description>elevate execution level</description>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
   <security>
     <requestedPrivileges>
      <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
     </requestedPrivileges>
   </security>
  </trustInfo>
  <dependency>
   <dependentAssembly>
     <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="*"/>
   </dependentAssembly>
  </dependency>
</assembly>
3. im UTF8 Format als Manifest.xml abspeichern
4. eine ASCII-Datei Manifest.rc anlegen, mit folgendem Inhalt:
1 24 "Manifest.xml" 5. Diese Datei mit folgendem Aufruf kompilieren:

windres -i manifest.rc -o manifest.lrs

Die windres.exe ist im Verzeichnis ...\lazarus\fpc\2.2.2\bin\i386-win32\

6. Die lrs-Datei muss in den Ordner mit deinem Projekt
7. In deinem Projekt fügst du folgende Zeile ein:
Delphi-Quellcode:
begin
  {$R manifest.lrs}      <<<<------------------------
  {$I project1.lrs}
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Falls du mit Lazarus 0.9.26.2 arbeitest, kannst du auch gleich die Datei von mir nehmen.

So, also jetzt viel Erfolg

Gute Nacht.
Angehängte Dateien
Dateityp: zip manifest_747.zip (1,2 KB, 16x aufgerufen)
  Mit Zitat antworten Zitat
gauggi

Registriert seit: 18. Apr 2006
177 Beiträge
 
#5

Re: Wie kann man ein Manifest unter Lazarus bearbeiten?

  Alt 29. Aug 2009, 21:52
Hallo Peter!

Es funktioniert.

Ich möchte mich bei der recht herzlich für deine großartige Hilfe bedanken. Du hast alles leicht verständlich und gut nachvollziehbar aufgelistet. Vielen Dank!
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:45 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