Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   ExifReader (https://www.delphipraxis.net/22734-exifreader.html)

Darty 23. Okt 2004 07:05

Re: ExifReader
 
Soch gestern Abend hatte ich es von Deiner Homepage downgeloaded.
Beim ausführen hat es sich selbstständig entpackt. Nun einfach auf den
Install.bat geklickt. Nun im Kontexmenue erscheint nun JPEG-Exif Information.
Tja dann versucht an den einen oder anderen Bild und leider erscheint dann
immer der Self-Extraktor der dann die Dateien im Win Verzeichnis entpacken will.
Da es aber bereits entpackt ist muss ich es überschreiben. Und das wars.
Das Spiel wiederholt sich bei den nächsten Bilder genauso.
Entweder ich mach da irgendwas falsch ? Oder die in moment downloadbare Version
ist ein kleiner Fehler unterlaufen ?
Hab Win2000 müsste ja eigentlich funzen ?

MathiasSimmack 23. Okt 2004 07:51

Re: ExifReader
 
Das passiert eigentlich nur, wenn du die Dateien aus der 7Zip-Exe in den gleichen Ordner entpacken lässt, in dem auch die Archivdatei liegt. Und dieser Ordner wird IMHO beim Start der 7Zip-Exe standardmäßig angezeigt. Das Problem ist, dass bei Luckie das Archiv und das eigentliche Programm den gleichen Namen tragen.
Folglich kommt beim Entpacken die Meldung, ob er die Datei "ExifReader.exe" ersetzen soll. Sagst du Nein, dann wird das Programm nicht entpackt, und die Batch kopiert logischerweise die 7Zip-Exe in das Windows-Verzeichnis.

So gesehen ist es ein Flüchtigkeitsfehler. Es gibt zwei Möglichkeiten:

1. Luckie wählt für das Archiv einen anderen Namen, etwa "ExifReader_Setup.exe" o.ä.
2. Du wählst beim Entpacken einen anderen Ordner.

Hey, es gibt noch eine dritte Möglichkeit: Luckie könnte auch ein Setup schreiben, bei dem der Anwender bequem beim Ausführen wählen kann, ob er die Shell-Extension will, ob es eine Verknüpfung im "Senden an"-Ordner sein darf, usw.

Luckie, kennst du nicht irgendwen, der Ahnung von Setups hat? Den würde ich mal fragen. :mrgreen:

notErnie 23. Okt 2004 09:05

Re: ExifReader
 
Ein eingefleischter nonVCL-Fan wie Luckie kann sich wohl kaum für Setup-Programme begeistern; er macht das wohl lieber über Batch-Dateien :)

Ab wann tritt eigentlich das Phänomen des "Altersstarrsinns" auf? :mrgreen:

Ein sehr gutes Programm zum Erzeugen von Setup-Programmen (incl. Delphi-Sourcecode) ist Inno-Setup von Jordan Russell. Auf seiner Homepage gibt es auch den Link auf das ISTool von Bjørnar Henden.

Der "Overhead" der von Inno-Setup erzeugten Setup-Programme ist sehr gering, die im Setup-Programm (der zu installierenden Anwendung) enthaltenen Dateien werden recht effizient komprimiert.

Inno-Setup kann ich nur wärmstens weiterempfehlen...

Bert

EDIT: Hat zwar nix mehr mit Delphi zu tun, aber IrfanView holt aus JPGs auch recht viele EXIF-Informationen heraus :mrgreen:

MathiasSimmack 23. Okt 2004 09:58

Re: ExifReader
 
Ich bin auch ein nonVCL-Fan. Allerdings stehe ich auch auf Setups. Und meine Bemerkung war lediglich ein Witz. Erstens kennt Luckie diverse Setups. Zweitens kann er vermutlich auch damit umgehen. Und drittens: Selbst wenn nicht, er wüsste genau wen er fragen könnte. ;)

Man muss Luckie eben nur mal ... äh ... beibringen, dass durch seine Veröffentlichungen in Zeitschriften usw. seine Programme auch an Anwender geraten, die vllt. noch nicht ganz so versiert sind und viel lieber ein bequemes Setup nutzen würden. Wenn er dann immer noch nicht will, dann ist es Altersstarrsinn. :mrgreen:



PS: 582 kB (Inno Setup) im Vergleich zu 345 kB (NSIS) bei gleichem Funktionsumfang, das ist schon ein enormer Overhead. Mit LZMA und Ultra-Einstellungen kann man die Inno-Version zwar auf 538 kB schrumpfen, aber es ist immer noch größer.

Darty 23. Okt 2004 10:31

Re: ExifReader
 
Zitat:

Zitat von MathiasSimmack
So gesehen ist es ein Flüchtigkeitsfehler. Es gibt zwei Möglichkeiten:

1. Luckie wählt für das Archiv einen anderen Namen, etwa "ExifReader_Setup.exe" o.ä.
2. Du wählst beim Entpacken einen anderen Ordner.

Also Dein 2. Tip habe ich angewendet und siehe da. Es klappt wirklich :) Jetzt kann ich es mal näher analysieren.
Zitat:

Zitat von MathiasSimmack
Hey, es gibt noch eine dritte Möglichkeit: Luckie könnte auch ein Setup schreiben, bei dem der Anwender bequem beim Ausführen wählen kann, ob er die Shell-Extension will, ob es eine Verknüpfung im "Senden an"-Ordner sein darf, usw.

Luckie, kennst du nicht irgendwen, der Ahnung von Setups hat? Den würde ich mal fragen. :mrgreen:

Da kenne ich Luckie, er denkt nicht immer an solche User die "dumm" sind wie ich :) Aber ne im Ernst, hätte ich vielleicht auch noch hinbekommen aber wenn da schon install.bat so einladend aussieht muss es dann auch funzen :) Also Luckie, Du siehst wo noch Verbesserungsbedürftig ist, da Deine Programme sicher oft runtergeladen werden :)

:angel: Nun hat Luckie heute wieder Arbeit aufgeschwatzt bekommen von uns :angel:

notErnie 23. Okt 2004 10:47

Re: ExifReader
 
Zitat:

Zitat von MathiasSimmack
Ich bin auch ein nonVCL-Fan. Allerdings stehe ich auch auf Setups. Und meine Bemerkung war lediglich ein Witz. Erstens kennt Luckie diverse Setups. Zweitens kann er vermutlich auch damit umgehen. Und drittens: Selbst wenn nicht, er wüsste genau wen er fragen könnte. ;)

Man muss Luckie eben nur mal ... äh ... beibringen, dass durch seine Veröffentlichungen in Zeitschriften usw. seine Programme auch an Anwender geraten, die vllt. noch nicht ganz so versiert sind und viel lieber ein bequemes Setup nutzen würden. Wenn er dann immer noch nicht will, dann ist es Altersstarrsinn. :mrgreen:



PS: 582 kB (Inno Setup) im Vergleich zu 345 kB (NSIS) bei gleichem Funktionsumfang, das ist schon ein enormer Overhead. Mit LZMA und Ultra-Einstellungen kann man die Inno-Version zwar auf 538 kB schrumpfen, aber es ist immer noch größer.

@Mathias: Klar, mit 583/538 KB gegen 345 KB hast Du immer Recht. Aber laß doch mal die "kleineren" NSIS-Setups auf Win98/WinNT4 los oder schau Dir die Optionen von Inno-Setup (mittels IS-Tool) an.

Ansonsten bin ich der Meinung, daß Inno-Setup ein Delphi-Programm (mit Sourcecode) ist und NSIS ***eben nicht***!!! Noch Fragen? :dp:

Bert

EDIT: Tschulligung, mein 56k-Modem hat wohl leider im falschen Thread geantwortet/geposted.

Luckie 23. Okt 2004 10:58

Re: ExifReader
 
Zitat:

Zitat von MathiasSimmack
Luckie, kennst du nicht irgendwen, der Ahnung von Setups hat? Den würde ich mal fragen. :mrgreen:

Verdammt, wer war das bloß? Da war doch mal was? :gruebel: :mrgreen:

Zitat:

Zitat von noErnie
Ein sehr gutes Programm zum Erzeugen von Setup-Programmen (incl. Delphi-Sourcecode) ist Inno-Setup von Jordan Russell. Auf seiner Homepage gibt es auch den Link auf das ISTool von Bjørnar Henden.

Ich wäre da eher für NSIS, erzeugt kleinere Setups. Und da ich letzten monat über 5 GB Traffic hatte (5GB habe ich frei) sollte alles so klein wie möglich sein. ;)

notErnie 23. Okt 2004 11:40

Re: ExifReader
 
Gibt's denn hier nur noch völlig realitätsfremde Nörgler, die alles besser haben wollen - ohne Gegenleistung oder ohne Gegenfinanzierung?

Sprich: Der deutsche Staat (zu dem ich mich als hier als geborener Steuerzahler leider noch bekennen muss) macht alles für Dich! Und als Gegenleistung bietest Du an: "Ich bin deutscher Staatsangehöriger"...

Klar, alle Nörgler bekommen fast immer die neuesten Versionen der BEANSTANDTEN Version von MS kostenlos...

The Mob rules...

Bert

Daniel 23. Okt 2004 11:43

Re: ExifReader
 
Hallo Bert,

sorry - aber ich kann in Deinem Beitrag keine Verbindung zu diesem Thread erkennen. Luckie hat deutlich gemacht, warum er auf kleine Setups seiner Anwendungen angewiesen ist.
Wo liegt in Deinen Augen das Problem?

notErnie 23. Okt 2004 11:58

Re: ExifReader
 
Danke Daniel,

habe mich gerade selbst gelöscht.

Bert

Luckie 23. Okt 2004 12:21

Re: ExifReader
 
Zitat:

Zitat von notErnie
Gibt's denn hier nur noch völlig realitätsfremde Nörgler, die alles besser haben wollen - ohne Gegenleistung oder ohne Gegenfinanzierung?

Sprich: Der deutsche Staat (zu dem ich mich als hier als geborener Steuerzahler leider noch bekennen muss) macht alles für Dich! Und als Gegenleistung bietest Du an: "Ich bin deutscher Staatsangehöriger"...

Klar, alle Nörgler bekommen fast immer die neuesten Versionen der BEANSTANDTEN Version von MS kostenlos...

The Mob rules...

Was hat das damit zu tun, dass ich NSIS bevorzuge? Und wo habe ich genörgelt? Ich habe nur argumentiert, warum ich NSIS vorziehen würde. Desweiteren besteht kein Unterschied zwischen Inno und NSIS, beide sind freiverfügbar.

Und der Zusammenhang mit dem deutschen Sattat geht mir im Moment völlig ab. :gruebel:

Wäre schön, wenn wir wieder zum Thema zurückfinden könnten und das ist mein Programm ExifReader und nicht die Mentalität der Deutschen gegenüber dem Staat. Danke.

MathiasSimmack 23. Okt 2004 13:09

Re: ExifReader
 
Ja, also noch mal meine Meinung, die ich aber auch schon auf der allerersten Seite geäußert habe: Die Shell-Extension ist, mit Verlaub, Quatsch. Für diesen speziellen Fall reicht ein typischer Eintrag in die Registry. Eben so, wie man es bei allen Beiträgen zum Thema "Dateityp registrieren" findet. :)

Wenn du eine Shell-Extension machen willst, dann mach´s so wie Hagen geschrieben hat: Als Erweiterung der Eigenschaften. Sprich: Rechtsklick auf JPEG-Datei -> Eigenschaften. Und dort hängst du eine zusätzliche Property page mit Infos zum Bild oder zur Kamera ein. Und meinetwegen mit einem Button, mit dem du den ExifReader auch noch mal starten kannst.

Ansonsten, wenn dir wieder einfällt, wer das mit den Setups war (;)): Derjenige hätte eine lauffähige Version, die du anpassen kannst. Aber wenn du dir NSIS runterlädst, dann nimm bitte nicht den Snapshot 2.02 von gestern (22.10). Der ist IMHO etwas verbuggt beim Aufruf von externen Programmen und beim Warten auf die Beendigung desselben. Ich habe ihn schon wieder deinstalliert und durch den 2.01er-Snapshot vom 6.10. ersetzt.

Luckie 23. Okt 2004 13:13

Re: ExifReader
 
Zitat:

Zitat von MathiasSimmack
Ja, also noch mal meine Meinung, die ich aber auch schon auf der allerersten Seite geäußert habe: Die Shell-Extension ist, mit Verlaub, Quatsch. Für diesen speziellen Fall reicht ein typischer Eintrag in die Registry. Eben so, wie man es bei allen Beiträgen zum Thema "Dateityp registrieren" findet. :)

Kann man dass denn auch so machen, dass dieser zusätzliche Eintrag nur bei bestimmten Dateitypen angezeigt wird? Ich meine, das ginge nicht. Außerdem war es mal eine Gelegenheit für mich, so was mal zu machen.

Zitat:

Wenn du eine Shell-Extension machen willst, dann mach´s so wie Hagen geschrieben hat: Als Erweiterung der Eigenschaften. Sprich: Rechtsklick auf JPEG-Datei -> Eigenschaften. Und dort hängst du eine zusätzliche Property page mit Infos zum Bild oder zur Kamera ein. Und meinetwegen mit einem Button, mit dem du den ExifReader auch noch mal starten kannst.
Das finde ich etwas aufwendig.

MathiasSimmack 23. Okt 2004 13:29

Re: ExifReader
 
Zitat:

Zitat von Luckie
Kann man dass denn auch so machen, dass dieser zusätzliche Eintrag nur bei bestimmten Dateitypen angezeigt wird? Ich meine, das ginge nicht.

Vllt. bin ich noch nicht ganz wach :gruebel:, aber wo siehst du den Unterschied zu dem Weg, den du momentan mit der Shell-Erweiterung gehst? Oder meinst du vllt. bei bestimmten Dateien. Wenn bspw. JPEG #1 diese Infos nicht enthält, dass dann der Menüpunkt gar nicht erst zu sehen ist. Oder wie? Ansonsten kapiere ich´s jetzt nicht. Du kannst doch bei der Installation (mit einem Setup bspw.) festlegen, für welche Endungen dein Programm registriert werden soll.
Es geht zwar mit Inno Setup auch, aber hier sehe ich einen Vorteil von NSIS: Du kannst bzw. musst nämlich den internen Schlüssel auslesen, mit dem bspw. die Endung ".jpg" verknüpft ist. Auf die Weise nutzt du den schon vorhandenen Registryeintrag und erweiterst nur die Einstellungen des Anwenders, ohne dessen übrige Einstellungen zu überschreiben.

Zitat:

Außerdem war es mal eine Gelegenheit für mich, so was mal zu machen.
Ist schon okay. Aber im Moment startest du den im Windows-Ordner liegenden ExifReader doch auch bloß via "ShellExecute". Die Shell-Extension ist quasi bloß davor geschaltet. Mehr oder weniger: Doppelt gemoppelt. ;)

Zitat:

Das finde ich etwas aufwendig.
Echt? Ich nicht. Du musst ja nicht alle Infos des Programms nehmen. Vllt. nur diese Seite mit dem Memo, in dem alle Daten aufgelistet sind. Und wer´s genau bzw. aufgeteilter wissen will, der klickt eben auf den Button in/auf dieser Property page und startet dein Programm.

Alienhere 23. Okt 2004 13:32

Re: ExifReader
 
Würglich nett, was ihr Euch da gegenseitig "mitteilt".

Meine "Schüler" (Variationen der Sesamstrasse-Figuren) waren da etwas kooperativer.

mfg

Luckie 23. Okt 2004 13:36

Re: ExifReader
 
Zitat:

Zitat von MathiasSimmack
Zitat:

Zitat von Luckie
Kann man dass denn auch so machen, dass dieser zusätzliche Eintrag nur bei bestimmten Dateitypen angezeigt wird? Ich meine, das ginge nicht.

Vllt. bin ich noch nicht ganz wach :gruebel:, aber wo siehst du den Unterschied zu dem Weg, den du momentan mit der Shell-Erweiterung gehst?

Ich meine, dass mein Menüeintrag nur erscheint, wenn auch eine JPEG-Datei ausgewählt wurde, da es bei allen anderen Dateitypen keinen Sinn macht.

Zitat:

Außerdem war es mal eine Gelegenheit für mich, so was mal zu machen.
Ist schon okay. Aber im Moment startest du den im Windows-Ordner liegenden ExifReader doch auch bloß via "ShellExecute". Die Shell-Extension ist quasi bloß davor geschaltet. Mehr oder weniger: Doppelt gemoppelt. ;)[/quote]
Die Shellextension barcuhe ich für den Menüeintrag nur für die JPEGs.

bigg 23. Okt 2004 14:02

Re: ExifReader
 
Matthias hat schon recht. In deinem Fall würde auch ein Eintrag in der Registry reichen,
also ohne Shellerweiterung.

Die Shellerweiterung wäre nur dann interessant für dich, wenn:
- du mehrere Dateien mit einmal öffnen möchtest
- oder du gleich prüfst, ob in der Bilddatei die Kamaradaten vorhanden sind

MathiasSimmack 23. Okt 2004 14:26

Re: ExifReader
 
Zitat:

Zitat von Luckie
Ich meine, dass mein Menüeintrag nur erscheint, wenn auch eine JPEG-Datei ausgewählt wurde, da es bei allen anderen Dateitypen keinen Sinn macht.

Aha, jetzt weiß ich was du meinst. Wenn bspw. ".jpg" mit MS Paint verknüpft ist, intern also von mir aus auf "bmpfile" zeigt, dann würden natürlich auch alle anderen Dateien, die intern auf diesen Registryschlüssel linken, deinen Menüeintrag zeigen. In dem Fall wäre deine Shell-Extension natürlich besser, weil dann der Eintrag direkt im Registryschlüssel ".jpg" und nicht im intern verknüpften Dateitypschlüssel angelegt wird.

Gut, dann formuliere ich einfach meine Kritik um :mrgreen:: Du kannst Programm und Shell-Extension doch in einem Ordner lassen. Entweder legst du in der Registry einen "AppPath"-Eintrag ab, der auf dein Programm zeigt, oder du gehst davon aus, dass sich der Reader im gleichen Verzeichnis wie die DLL befinden muss. Ist das nicht der Fall, zeigst du den Menüeintrag der Extension gar nicht erst an. Damit umgehst du dieses Zwangskopieren in den Windows-Ordner. Du weißt doch, dass Microsoft das nicht mehr gern sieht, wenn Programme so was machen. ;)

Luckie 29. Okt 2004 20:45

Re: ExifReader
 
So, Verbesserungsvorschlag von Mathias in die Tat umgesetzt. Registriert man für die Shell Erweiterung die DLL sucht sie die Anwendung nun im selben Ordner.

Download: ExifReader [451 KB]
ExifReader Homepage: http://exifreader.luckie-online.de

SMan 1. Jul 2006 11:01

Re: ExifReader
 
Hallo!

Verwende deine Klasse in einem Projekt von mir.
Wollte nur sagen, danke :bounce2: great work!

negaH 1. Jul 2006 13:05

Re: ExifReader
 
@Luckie: Ja das geht und ist im Grunde ja auch der Sinn. Schätze aber mal das du das jetzt schon selber rausgefunden haben wirst (habe deine DLL jetzt nicht getestet).

Du kannst also aktiv darauf reagieren was im Kontextmenu und auch in der Property Page der Eigenschaften angezeigt wird und ob es überhaupt angezeigt wird.

Der nächste Schritt ist :) Erweiterung der Shell mit einem Hint zu einer JPG,JPEG Datei die wichtige Infos anzeigt im Hint zur Datei !

Gruß Hagen

ConnorMcLeod 20. Sep 2011 20:27

AW: ExifReader
 
Tagchen, ist bei dem Projekt ein Update für D2010 etc. angedacht? Es gibt (zumindest) Probleme mit AnsiString/String.

Luckie 20. Sep 2011 20:50

AW: ExifReader
 
Nein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:17 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz