AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Manifest-Creator
Thema durchsuchen
Ansicht
Themen-Optionen

Manifest-Creator

Ein Thema von himitsu · begonnen am 2. Sep 2009 · letzter Beitrag vom 26. Dez 2015
Antwort Antwort
Seite 7 von 18   « Erste     567 8917     Letzte »    
Benutzerbild von himitsu
himitsu Online
Registriert seit: 11. Okt 2003
Moin Leutchen,

hatte mir eben mal schnell 'nen billiges (inzwischen leicht aufgemotztes) Progrämmchen erstellt,
womit man sich 'nen XP-Manifest zusammenklicken könnte.

vielleicht kann's ja wer gebrauchen



Ist jetzt nix Besonderes und ich weiß auch noch nicht, ob auch alles so richtig läuft

Erstellt wird die XML-Resource, welche man in eine *.manifest kopiert/speichert
und dann entweder so mit seinem Programm mitliefert oder direkt in die Resourcen einbindet.
Wie man es halt so kennt.

Zusätzlich wird noch ein Resourcen-Script erstellt, welches die Resource direkt enthält und nicht erst von einer externen Datei einbindet.
  • Standardmäßig ist eine Englisch-Deutsche-Sprachdatei direkt integriert
  • wird eine externe Sprachdatei "ManifestCreatorLang.xml" im Projektverzeichnis gefunden, so wird diese stattdessen beim Programmstart geladen
  • es kann sich also jeder die angehängte ManifestCreatorLang.xml nehmen, um weitere Sprachen erweitern (zum Format in die ersten Kommentare der ManifestCreatorU.pas reinschauen oder einfach mal nach >>"eng"<< suchen, dieses direkt übersetzen
    und dann natürlich hier im Thread hochladen )
  • es werden keinerlei Informationen gespeichert (weder in der Registry, noch in irgendeiner Datei ... abgesehn von den Dateien, welche ihr euch selber manuell speichert, dazu zählen auch die Optionen, welche im Programmverzeichnis gespeichert liegen)
  • und falls wem noch die eine oder andere Section fehlt, dann möge er sich einfach melden
    (nachsehn kann man z.B. hier http://msdn.microsoft.com/en-us/library/aa375632.aspx )
  • die ActiveX-Libraries werden standardmäßig nicht geladen,
    da es sonst etwas langsamer läd (bei mir so 2-5 Sekunden, statt fast sofort)
  • das Laden der ActiveX-Libs läßt sich aber zuschalten
    > einfach als Parameter "-LoadActiveX" mit angeben
  • es läßt sich via Parameter ein Projekt (*.ini) erstellen/laden
    gespeichert muß aber selber werden (sowas wie Autosave beim Beenden gibt's nicht)
    > das Projekt kann via Parameter geladen werden "-IniFile=..."
  • dieses Programm läßt sich als Tool in die IDE integrieren
    Code:
    Titel:     Manifest-Creator
    Programm:  [color=gray]C:\ ... \[/color]ManifestCreator.exe
    Parameter: -IniFile=$PROJECT -CreateIni
    oder
    Code:
    ...
    Parameter: -IniFile=$PROJECT -CreateIni -LoadActiveX
    bis Delphi 2007 so
    Code:
    Parameter: -IniFile== $PROJECT -CreateIni
    und bis Delphi 7 so
    Code:
    ...
    Parameter: -IniFile== $EXENAME -CreateIni
  • in die Resourcedatei (.rc) können nun auch ein Programmicon und Versionsinformationen integriert werden
  • in dem Suchfeld kann man Einträge über ihren Namen suchen und es werden Teilweise auch untegeordnete Infos berücksichtigt, z.B. die CLSIDs und der DLL-Name im Bereich ActiveX
  • die ComboBox mit dem * dahinter, ändert nix an dem Manifest, sondern zeigt nur rechts im InfoMemo passende Texte an, also in diesem Fall was mit der Anwendung unter verschiedenen Rechten passiert.




[initial] v1.2 2009-09-02
[update] v1.3 2009-10-24 19:05
...
[update] v1.4b 2009-12-18 22:45 - Fehler in Sprachdatei
[update] v1.4d 2010-05-25 18:30 - siehe Beitrag #59 (Vieles)
[update] v1.4f 2010-05-29 14:00 - siehe Beitrag #60-#72 (neue IDE-Integration)
[update] v1.4g 2010-05-31 22:00 - siehe Beitrag #74 (kleinere Fehler und neue Parameterbehandlung)
[update] v1.4g2 2010-06-01 09:00 - siehe Beitrag #75 (kleiner Fehler in Sprachverwaltung)
[update] v1.4h 2010-06-01 12:00 - siehe Beitrag #78 (Probleme mit der Projektverwaltung)
[update] v1.5 2010-06-03 00:30 - siehe Beitrag #80 (gewaltige Aufräumaktion)
[info] v1.5a 2010-08-04 08:06 - Neues Forum (URLs der Delphi-PRAXiS haben sich geändert)
[info] v1.5a 2010-08-27 12:45 - Anhänge neu hochgeladen (das Forenupdate hatte die Dateinamen geschrottet) und dabei gleich das UPX weggelassen (man darf nun eh keine EXE mehr hochladen )
[upload] beim Update gehen die Counter verloren > alt = 303x exe, 30x xml und 48x Sources (Memo an mich selbst, da ich garnicht neugierig bin)
[update] v1.5b 2010-08-27 15:33 - CMDs überarbeitet (UPX deaktiviert)
[update] v1.5c 2013-10-03 21:16 - siehe Beitrag #111 - Horst0815 (Support: XE-XE4 & Win8 / Archtektur: amd64)
[update] v1.5d 2013-11-09 20:38 - siehe Beitrag #109 & #112 - blablab & nru (Bugfix: $RESOURCE / Support: Win8.1)
[update] v1.6 2013-11-10 23:23 - siehe Beitrag #122 (Support: XE5 / Codeformatierung und einige Komponentennamen überarbeitet / Funktionen soriert (Regionen) / große Funktionen aufgeteilt / XML als Resource eingebunden)
[update] v1.6a 2013-11-11 01:44 - assemblyIdentity:language berichtigt und kleiner Bugfiges
[update] v1.6b 2013-11-11 23:43 - siehe Beitrag #125 (Bugfix: Ressource-Typ / weitere Komponenten benannt / Windows Server-Namen aufgenommen / Systemsprache laden )
[upload] beim Update gehen die Counter verloren > alt = 557x exe, 248x xml und 279x Sources (860x 278x 327x)
[update] v1.x 2013-12-15 - Sprachbehandlung überarbeitet / angefangen alle Komponenten zu übersetzen / neue XML-Behandlung angefangen (siehe __TestButton)
[update] v2.0 2015-02-08 23:23 - siehe Beitrag #137 (XE6-XE8 / Windows 10 / IdentityType win32 / alle Komponenten fertig übersetzt
[update] v2.0a 2015-02-13 04:05 - siehe Beitrag #140 (DPI-Aware / Hilfe-URLs / Sprachenladefunktion überarbeitet / Suche für fehlende Hilfetexte )
[upload] beim Update gehen die Counter verloren > alt = 176x exe, 84x xml und 104x Sources (1036x 362x 431x)
[update] v2.0b 2015-02-14 12:38 - siehe Beitrag #147 (Bugfix: DPI-Aware / Bugfix: File-Version / Übersetzungen)


Online: http://svn.geheimniswelten.de:8080/!/#ManifestCreator
Checkout: http://svn.geheimniswelten.de:8080/s...reator/Develop
Login, falls nötig: Gast (gast)

Es wird nur die EXE benötigt.
Die Sprach-XML kann man nutzen, um die Übersetzng oder bestimmte Optionen zu erweitern. (z.B. neue Sprache oder OperatingSystemIDs)
Und wofür der Quelltext (inkl. XML) ist, sollte wohl klar sein.
Miniaturansicht angehängter Grafiken
screeny_201.png  
Angehängte Dateien
Dateityp: 7z ManifestCreator.exe.7z (702,1 KB, 398x aufgerufen)
Dateityp: xml ManifestCreatorLang.xml (69,0 KB, 159x aufgerufen)
Dateityp: 7z ManifestCreator.source.7z (213,7 KB, 167x aufgerufen)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (19. Mär 2015 um 11:53 Uhr)
 
wine

 
Delphi 7 Personal
 
#61
  Alt 27. Mai 2010, 19:21
Zitat von himitsu:
...

Falls jemand hierfür ein schönes Programm-Icon kennt ... bin auf der Suche nach sowas.
Zum Manifest-Creator-Icon fällt mir ein/habe ich nachgeschlagen:

http://www.albertmartin.de/latein/?q=Manifest&con=0

http://de.wikipedia.org/wiki/Kommunistisches_Manifest

Da Dein Programm (habe es noch nicht ausprobiert) Open-Source ist, fände ich eine rote Faust ganz passend


wine
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#62
  Alt 28. Mai 2010, 07:40
Hallo Himitsu,

Zitat von himitsu:
Ich hab mal versucht die Verwaltung der IDE-Integration mit zu integrieren.
Grossartig! Wo ist denn die Version?

Zitat von himitsu:
Falls das läuft, würde ich noch ein/zwei was beim Speichern verbessern und eventuell noch die RC gleich mit zur RES compilieren lassen.
Das wäre mein nächster Wunsch Vorschlag Bitte gewesen!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

 
Delphi 12 Athens
 
#63
  Alt 28. Mai 2010, 08:04
Zitat von taveuni:
Wo ist denn die Version?
diesmal gleich im Post #1 eingefügt

Aber, wie gesagt, ich weiß nich, ob auch alle Registry-Pfade richtig sind und ob demnach auch alle Delphi-Version richtig erkannt/behandelt werden.
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#64
  Alt 28. Mai 2010, 09:54
Ich brauch noch eine kleine Bedienungsanleitung

Das integrieren in meine IDE (2007) hat geklappt.
Der ManifestCreator ist unter Tools aufgeführt.

Wenn ich nun ein Projekt lade und dann Tools/ManifestCreator kommt die Meldung
"Datei "$PROJECT.manifest.ini" existiert nicht.

Ich setze dann meine Optionen und speichere die Ini mit dem Namen: "Projektname.manifest.ini".
Lade ich mein Projekt nun wieder und führe Tools/ManifestCreator auf habe ich wieder die Meldung?

Ausserdem: Wie erstelle ich nun automatisch die *res?

Und:
Funktionert (wenn es denn funktioniert) das mit dem erstellen/suchen der Ini Datei auch wenn ich eine
Projektgruppe lade und dann in den jeweiligen Projekten den Creator via IDE lade?

Was in diesem Zusammenhang noch praktisch wäre:
Eine Möglichkeit eine zentrale Konfigurationsdatei für den Creator im Projektverzeichnis über welche
man ein /Common Verzeichnis angeben könnte. Denn bei einer Projektgruppe mit vielen Unterprojekten
wird es schnell unübersichtlich. Aber dies wäre nur die Luxusvariante.

Danke für Deine Top Arbeit.

Edit:
Kann es sein das der ManifestCreator im Projektverzeichnis liegen muss?
Wohl eher nicht oder?
Miniaturansicht angehängter Grafiken
notexists_615.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

 
Delphi 12 Athens
 
#65
  Alt 28. Mai 2010, 10:11
Zitat:
"Datei "$PROJECT.manifest.ini" existiert nicht.
Hmmm, eigentlich hatte ich das doch repariert?


Kannst du mal bitte in der Registry nachschauen was für ein Wert in
HKEY_CURRENT_USER > Software\Borland\BDS\5.0\Manifest-Creator > Params
drinsteht?


Nee, er muß nicht im Projektverzeichnis liegen.
Es läuft wohl nur was bei einer Abfrage schief ... eigentlich sollte über einen Parameter notfalls diese Meldung unterdrückt werden, wenn beim Start die gewünschte Manifest-Projektdatei noch nicht existiert, welche dann in dem Delphi-Projektverzeichnis abgelegt wird.
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#66
  Alt 28. Mai 2010, 10:46
Zitat von himitsu:
Kannst du mal bitte in der Registry nachschauen was für ein Wert in
HKEY_CURRENT_USER > Software\Borland\BDS\5.0\Manifest-Creator > Params
drinsteht?
Hmmh..
Bei mir gibt es überhaupt keinen Key mit "Manifest-Creator" in der Registry.
Nur einen Value:
Computer\HKEY_CURRENT_USER\Software\Borland\BDS\5. 0\Transfer\ -> Name=Title3 Typ=REG_SZ Value=Manifest-Creator
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

 
Delphi 12 Athens
 
#67
  Alt 28. Mai 2010, 12:56
Ahh OK, dann eben Params3 in HKCU\Software\Borland\BDS\5.0\Transfer ... da fehlte bestimmt der Parameter "CreateIni".

- daß mit den Parameter sollte jetzt stimmen
- die RES kann man sich nun direkt kompilieren lassen
- der bekannte "falscher Dateiname in CMD"-Fehler ist endlich komplett weg (da hatte sich noch ein Teil versteckt)
- beim Beenden und beim neu Laden sollte jetzt eine Abfrage kommen, ob man nicht speichern will, wenn was verändert wurde

Planungen:
- einige der Eingabefelder über Parameter zugänglich machen, damit diese auch von Extern (über Parameter) zugewiesen werden können ... weiterer Schritt in Bezug auf die Fernsteuerbarkeit.



Man braucht also nun nur noch {$INCLUDE *.Manifest.res} in die DPR (oder von mir aus auch in eine PAS) schreiben, geht auf Tool > Manifest-Creator erstellt sein Manifest, beendet und speichert
und schon beim nächsten Compilieren der Anwendung sollte das Manifest eingebunden werden.
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#68
  Alt 28. Mai 2010, 13:14
Hmhhh.

Nun sucht er die manifest.ini an einem sehr speziellen Ort.
Wie das denn?
Miniaturansicht angehängter Grafiken
pfad_159.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

 
Delphi 12 Athens
 
#69
  Alt 28. Mai 2010, 13:38
Das liegt leider nicht an meinem Programm.
In Delphi 2006 tritt das selbe Problem auf.

Aus irgendeinem Grund ersetzt Delphi das "$PROJECT" im Parameter nicht durch Projektdatei+Pfad.

(gut, in Delphi geht es auch nich, aber dieses kenn $PROJECT noch nicht)


Da werde ich wohl mal gucken müssen, wieso Delphi, bzw. die IDE da nix ersetzt und welche Variable in D7 verwendet werden muß.
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#70
  Alt 28. Mai 2010, 13:48
Zitat von himitsu:
Da werde ich wohl mal gucken müssen, wieso Delphi, bzw. die IDE da nix ersetzt und welche Variable in D7 verwendet werden muß.
Hallo himitsu,

Danke. Ich hab aber D2007 nicht D7. Aber vermutlich egal.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 7 von 18   « Erste     567 8917     Letzte »    


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:

(?)

LinkBack to this Thread

Erstellt von For Type Datum
Manifest ? BytecoreWiki This thread Refback 4. Aug 2010 19:08

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:30 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