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 9 von 18   « Erste     789 1011     Letzte »    
Benutzerbild von himitsu
himitsu
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)
 
taveuni

 
Delphi 11 Alexandria
 
#81
  Alt 7. Jun 2010, 11:20
Das Icon-Problem nehm ich mir wohl übers Wochenende mal vor.
Hallo himutsu,
Konntest Du diesbezüglich schon etwas unternehmen/analysieren?

Gruss Werner

PS: Ich wollte Dir eine PM senden. Da heisst es aber ich kann nicht da Dein Posteingang voll sei?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#82
  Alt 7. Jun 2010, 12:08
Am Postfach versuch ich schon noch was zu machen.
(hatte da so schön aufgeräumt und viel gelöscht und nach dem DP-Upgrad ist alles wieder da )

Ja, bezüglich des Icons ist etwas passiert ... es scheint nun zu funktionieren.
Es stimmte 'ne winzige Kleinigkeit in der RC nicht.

Bei meinem FileSplitter (von wo ich den betreffenden Code ja übernommen hatte) fiel es nicht auf, daß die VCL die Form-Icons unter einer anderen ID/Name erwartet, da dieses eine nonVCL-Anwendung war.

Aufgrund eines Fehler in der DP (kann den ersten Beitrag nicht editieren),
gibt es die aktuelle Dateien doch erstmal hier.

(vielleicht findet sich ja ein Mod, welcher diese im Beitrag #1 Updatet, solange dieses für Normalsterbliche nicht möglich ist)
Angehängte Dateien
Dateityp: 7z ManifestCreator.7z (134,6 KB, 18x aufgerufen)
Dateityp: txt ManifestCreatorLang.xml.txt (49,0 KB, 16x aufgerufen)
Dateityp: 7z ManifestCreator_exe.7z (580,3 KB, 23x aufgerufen)
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#83
  Alt 8. Jun 2010, 10:19
Hallo himitsu,

Es funktioniert nun wirklich fast alles.
Ich hab leider noch was zu meckern:

Wenn ich nun die res erstellen lasse und einbinde wird zur Designzeit
der alte NT-Stil angezeigt. Dies ist insofern schlecht als die Proportionen
usw. nicht mehr ganz stimmen. Kann (Du) man das auch noch machen?

Gruss Werner
Miniaturansicht angehängter Grafiken
ide_designtime_res.jpg   creator_designtime_res.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#84
  Alt 8. Jun 2010, 10:42
Nee, daran kann ich leider nix ändern.

Die .RES wird ja erst beim Compilieren in die EXE reingelinkt und ist erst dann für das Formular verfügbar.



Aber ich hab im Designer eigentlich noch keine Unterschiede entdeckt?


Seit Delphi 2009 (oder gar 2007 ... das kenn ich nicht) wird im Designer alles im XP-Style angezeigt (selbst wenn keines in die Anwendung eingebunden wird) und bis TurboDelphi/D2006 war der Formeditor immer ohne XP-Design (selbst wenn es dann in der Anwendung drine war).

OK, das geht bestimmt auch mit'm TDE ... mein D7 hatte ich mal aus Lange Weile umgerüstet (siehe Anhang) ... dazu muß man einfach nur die IDE ( {delphi}/bin/delphi32.exe bzw. {delphi}/bin/bds.exe ) mit einem Manifest nachrüsten. Dazu hat ich mit einem Resourcen-Editor (Resource-Hacker) in die EXE die Manifest-Resource eingebaut.

[edit] jetzt find ich ihn erst http://www.delphipraxis.net/146200-x...elphi-7-a.html
Miniaturansicht angehängter Grafiken
delphi-7-im-xp-style.png  

Geändert von himitsu ( 8. Jun 2010 um 10:46 Uhr)
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#85
  Alt 8. Jun 2010, 11:24
Hmmh..
Versteh ich jetzt alles nicht grad so.
Wenn ich in D2007 ein neues Projekt erstelle ist automatisch in der
IDE Projektoptionen/Anwendung/Laufzeit-Themes aktivieren angewählt.
Ich habe dann auch während der Designzeit das Theme.
Unchecke ich dann diese Option, erstelle das Projekt neu, schliess und
öffne es wieder ist das Theme weg (Allerdings dann logischerweise auch zur Laufzeit).

Was also macht die IDE da mit der "Laufzeit-Themes aktivieren" Option dass diese
auch zur Designzeit sichtbar ist?
Oder wie kann ich notfalls dies manuell machen ohne die IDE.exe zu patchen?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#86
  Alt 8. Jun 2010, 12:44
Unchecke ich dann diese Option, ..., schliess und öffne es wieder ist das Theme weg (Allerdings dann logischerweise auch zur Laufzeit).
Stümmt, is mir noch nie aufgefallen.
Hab nur gemerkt, daß in Delphi7 der Design-Editor immer ohne Style ist (egal ob XP-Man auf der Form liegt oder nicht).

Und daß sich unter D2009/2010 am Aussehn nix ändert, wenn ich diese Option ausstelle. (war aber noch nie auf die Idee gekommen zwischenzeitlich das Projekt mal neu zu laden)


Gut, wenn ich jetzt wüßte woran/wie der Form-Editor es genau festmacht, ob er die Form mit oder ohne Theme darstellen soll, dann könnte man da vielleicht was machen.
  Mit Zitat antworten Zitat
taveuni

 
Delphi 11 Alexandria
 
#87
  Alt 9. Jun 2010, 07:49
Auf einen Workaround hat mich Andreas Hausladen gebracht.

Delphi-Quellcode:
program Project1;

//{$DEFINE RELEASE}

uses
  Forms,
  Unit1 in 'Unit1.pas{Form1};

{$IFDEF RELEASE}
  {$R Project1.manifest.res}
{$ELSE}
  {$R *.res}
{$ENDIF}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
So kann man während der Entwicklung das IDE Manifest benutzen und für den Release das Richtige.

Zum ursprünglichen Problem:
Vermutlich nicht ganz trivial. Da die Ansicht erst nach dem Schliessen und wieder öffnen ändert ist
anzunehmen dass die ganze Sache im Memory der IDE stattfindet.

Danke an jbg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#88
  Alt 9. Jun 2010, 08:47
Delphi-Quellcode:
{$IFDEF RELEASE}
  {$R *.manifest.res}
{$ELSE}
  {$R *.res}
{$ENDIF}
Sollte auch gehn (vorallem praktisch, da es dann überall gleich bleibt)

Was passiert denn, wenn die erstellte Manifestresource.
Project1.res hieße und über {$R *.res} eingebunden würde?
  Mit Zitat antworten Zitat
Benutzerbild von dor557
dor557

 
Delphi 10.1 Berlin Starter
 
#89
  Alt 27. Aug 2010, 12:01
Habe da ein problem mit dem manifest creator.

Funktionieren tut das Programm Super. Kein frage aber mein Norton Anti-Virus sagt das dich das programm verdächtig verhält und wird automatisch gelöscht.

Was macht das programm denn was für das Norton Anti-Virus verdächtig ist ??

Gruss Sascha
Sascha Nickel
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#90
  Alt 27. Aug 2010, 12:14
Gibt es eine genaue Fehler-/Ursachenbescheibung seitens Norton AV?

Bei welchen Aktionen passiert das denn?
Also wann passiert das und was hast du mit diesem Programm grad gemacht, bevor dieses passierte?

Ich wüßte ehrlich gesagt jetzt nicht, was da Schlimmes gemacht werden sollte.
Kannst gerne nachsehn ... die Quellcodes sind ja vorhanden.

Die EXE ist zwar UPX-komprimiert, aber dieses sollte eigentlich keine Probleme verursachen.

[add]
Ein kurzer Test zeigt, daß anscheinend sonst keiner große Probleme damit hat.
http://www.virustotal.com/file-scan/...e89-1282903990
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 9 von 18   « Erste     789 1011     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 20:47 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