Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   thumbs.db (https://www.delphipraxis.net/24922-thumbs-db.html)

MaBuSE 28. Jun 2004 17:14


thumbs.db
 
Hallo,

kennt jemand ein Programm um auf die Infos der thumbs.db zuzugreifen?

Oder noch besser hat jemand etwas Delphi Quelltext der das kann ;-)

Ich weiß, das die Thumbs.db im "Compound File Binary File Format" angelegt ist.
http://longhorn.msdn.microsoft.com/l...aryformat.aspx

Das ist das "Microsoft's OLE 2 Compound Document Format" in dem auch die MS Office Dokumente strukturiert sind.

In dem Dateisystem sind die einzelnen JPS abgelegt, aber es scheinen die Quantisierung und Huffman Tabellen zu fehlen bzw. es gibt Probleme beim decoding der JPGs.

Ich hoffe das jemand eine Lösung zu diesem Problem hat.

Vielen Dank

ps: Falls jemand auf die Idee kommt zu schreiben, probier doch mal einen Viewer wie z.B. IrvanView. Die können das alle NICHT !!! (Habe ich schon getestet.)

Falls es ein Viewer doch kann, dann bitte mit url hier posten. Ich probier das dann gleich :-)
Aber bitte vorher testen, und nicht ich glaube der kann das ... und dann kann er es doch nicht :-(

Danke nochmals :dp:

MaBuSE 6. Jul 2004 23:13

Re: thumbs.db
 
Ist wirklich niemand da, der sich mit so was auskennt ?

MrKnogge 7. Jul 2004 00:14

Re: thumbs.db
 
Bist du sicher, dass in der thumbs.db alle Bilder enthalten sind ?

Ich habe einen Ordner mit mehreren hundert Jpegs, und die thumbs.db darin liegt noch im 2 stelligem KiloByte-Bereich :gruebel:

scp 7. Jul 2004 00:24

Re: thumbs.db
 
Zitat:

Zitat von MrKnogge
Bist du sicher, dass in der thumbs.db alle Bilder enthalten sind ?

Ich habe einen Ordner mit mehreren hundert Jpegs, und die thumbs.db darin liegt noch im 2 stelligem KiloByte-Bereich :gruebel:

Wie der Name schon sagt, sind dort nur Thumbnails, also kleine Vorschau-Bilder drin. Und da muss nicht von jedem Bild eins drin sein, sondern nur von denen, wo Windows so ein Thumb schon einmal benötigt hat.

MaBuSE 7. Jul 2004 08:45

Re: thumbs.db
 
Zitat:

Zitat von scp
Zitat:

Zitat von MrKnogge
Bist du sicher, dass in der thumbs.db alle Bilder enthalten sind ?
Ich habe einen Ordner mit mehreren hundert Jpegs, und die thumbs.db darin liegt noch im 2 stelligem KiloByte-Bereich :gruebel:

Wie der Name schon sagt, sind dort nur Thumbnails, also kleine Vorschau-Bilder drin. Und da muss nicht von jedem Bild eins drin sein, sondern nur von denen, wo Windows so ein Thumb schon einmal benötigt hat.

Das ist korrekt.

Wenn Windows eine Vorschau darstellt, dann wandert das Thumbnail in dieses File. Wenn im Explorer Menü-Ansicht-Miniaturansicht eingestellt ist, wandern alle Bilder in die Thumbs.db. Thumbs.db ist ein verstektes Systemfile. Die Bilder sind im Kleinformat als *.jpg Dateien vorhanden. Aber warscheinlich um Platz zu sparen hat Microsoft auf die Header mit der Quantisierung und den Huffman Tabellen der *.jpg Dateien verzichtet.

Ich habe keine Ahnung wie man auf die Dateien zugreifen kann.

Ich will ja auch nicht unbedingt ein fertiges Programm oder Komponente, aber ich will wissen wie es geht, damit ich es selbst programmieren kann. (Wobei - wenn jemand den "fertigen" Source posten würde, hätte ich auch nichts dagegen :mrgreen: )

MaBuSE 30. Jul 2004 14:34

Re: thumbs.db
 
Zitat:

Zitat von MaBuSE
Ist wirklich niemand da, der sich mit so was auskennt ?

Sorry, das ich schon wieder nerve, aber es muss doch jemand wissen. :gruebel:

DelphiFreund 30. Jul 2004 14:37

Re: thumbs.db
 
Ich dachte immer das wär so ne Art Dateiindex.

MaBuSE 30. Jul 2004 14:42

Re: thumbs.db
 
Zitat:

Zitat von delphifreund
Ich dachte immer das wär so ne Art Dateiindex.

Nee, da sind alle Thumbnails drin die Windows schon erstellt hat. (z.B. bei der Vorschau)

Ich brauche ein Codeschnippsel (oder zur Not auch ein Programm), dass mir die in einer Thumbs.db enthaltenen Bilder anzeigt.

sakura 30. Jul 2004 15:08

Re: thumbs.db
 
Sage mal, kommst Du zufällig an die Daten eines Eintrages bereits ran? Oder fehlt auch dieser erste Schritt noch? Wenn ja, dann poste doch mal so einen Datenstream als Anhang ;)

...:cat:...

dizzy 30. Jul 2004 15:22

Re: thumbs.db
 
Also ich hab grad mal Google und das MSDN durchwühlt, und scheinbar weiss es echt niemand :?. Auch in einigen englischen C-Foren hab ich des gleiche Frage gesehen, aber eine Lösung gab es nie.

Das erfolgversprechndste wäre wohl, wenn du einfach mal eine nette Mail an M$ schickst, mit der freudlichen Bitte dir die Specs zukommen zu lassen. Und wenn sie es tun, dann biiitte posten ;)

gruss und viel Glück,
dizzy

Mirilin 30. Jul 2004 15:29

Re: thumbs.db
 
:hi:

Klick - vielleicht hilfts ja :)


mfg Tobias

dizzy 30. Jul 2004 15:31

Re: thumbs.db
 
@Miri: :mrgreen: den hab ich auch gesehen... Nur wollte ich mich jetzt nicht da anmelden. Hab noch nicht mal den Text wirklich gelesen, da dort dick drunter steht: Sign up to see the solution. Fand ich doof... :)

Mirilin 30. Jul 2004 15:32

Re: thumbs.db
 
:hi:

einfach runterscrollen :)


mfg Tobias

dizzy 30. Jul 2004 15:35

Re: thumbs.db
 
:wall: :wall: :wall: :wall: :wall:
:evil:

Is nich mein Tach heute...

scp 30. Jul 2004 16:14

Re: thumbs.db
 
Hier ist auch ein Bespiel für MSDN-Library durchsuchenIExtractImage in Delphi mit nötiger Interface-Deklaration.

MaBuSE 9. Aug 2004 09:44

Re: thumbs.db
 
Erst mal vielen Dank für die Antworten.

Zitat:

Zitat von scp
Hier ist auch ein Bespiel für MSDN-Library durchsuchenIExtractImage in Delphi mit nötiger Interface-Deklaration.

Leider geht bei mir www.delphi3000.com nicht :-( läd ewig und gibt dann nur eine leere Seite aus.

Hier hab ich auch noch was gefunden:
http://forum.java.sun.com/thread.jsp...essage=1906854

Ich stehe aber voll auf dem Schlauch.

Ich habe im Moment gat nichts außer jede Menge thumb.db Dateien.

Warum will ich das haben?
Ich habe ausversehen ca. 1500 Bilder von meiner HDD gelöscht. nun habe ich einen leeren Verzeichnisbaum in dem nur jede Menge thumbs.db Dateien sind.
Ich würde gerne wissen, welche Bilder ich gelöscht habe. Um dann falls benötigt die Orginale wieder zu beschaffen.
Und nein, wiederherstellen der Dateien ist nach mehrfachen Kopieraktionen und mehrfachen Defragmentierung der HDD nicht mehr möglich :-(
Ich habe die Bilder vor einigen Monaten gelöscht, aber es nicht bemerkt.
(Bug in meinem "nicht mehr benötigte Dateien Lösch"-Skript)

scp 11. Aug 2004 08:19

Re: thumbs.db
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier mal das Demo von Delphi3000 als Anhang.

MaBuSE 11. Aug 2004 08:46

Re: thumbs.db
 
Zitat:

Zitat von scp
Hier mal das Demo von Delphi3000 als Anhang.

Vielen Dank.

Ich kam gestern Abend auch die Seite. :wink:
Ich habe mich sogar Registriert um auf den Artikel lesen zu können.

Dummerweise ist das aber nicht das was ich will. Der erzeugt aus einem Bild mit der API ein Thrumbnail. Ich kann aber nicht auf die Bilder in der Datei zugreifen.

Wenn ich das richtig verstanden habe, macht die API das gleiche wie der Explorer.

1. API Aufruf mit "großem" Bild
2. API schaut nun nach ob ein thumbneil in thumbs.db vorhanden ist.
3. Wenn nein -> Erstellung eines Thumbnails -> Anzeige
4. Wenn ja -> Ist Thrumbnail in thumbs.db aktuell?
5. Wenn nein -> Erstellung eines Thumbnails -> Anzeige
6. Wenn ja -> Anzeige

Was leider nicht geht:
- Liste der enthaltenen Bilder :evil:
- Anzeigen eines Bildes aus der thumbs.db, das nicht in groß existiert :evil:

*heul*

...oder ich bin einfach zu blöd. :gruebel:

lume96 11. Aug 2004 09:58

Re: thumbs.db
 
Hi,

das hat jetzt zwar mit Delphi direkt nicht mehr viel zu tun, könnte Dir aber vielleicht erst mal weiterhelfen.

Die Thumbnails in einer Thumbs.db kannst Du mit Hilfe von PolyView betrachten und auch ausdrucken.

PolyView kannst Du hier finden.

Wenn Du eine Thumbs.db-Datei mit Polyview öffnest, wird diese als Multi-Page Image-Datei geöffnet; soll im Klartext heissen, dass Du am Anfang nur einen Thumbnail siehst. Mit CTRL+PgUp und CTRL+PgDn kannst Du 'browsen'. Die Gesamtanzahl der Seiten (und somit der Thumbnails) kannst Du von der Statusleiste entnehmen, wenn die Maus über einem Thumbnail ist.

Zu Polyview gibt es auch PolyImage (Pro), ein ActiveX Control. Den gibt es leider nicht als Demo/Eval. Aus den Releasenotes geht hervor, dass dieses ActiveX-Control auch Thumbs.db auslesen kann (erscheint logisch da PolyView sicher auf PolyImage Pro basiert).

Hoffe, dass hilft Dir erst einmal weiter.

MfG
Lutz

MaBuSE 11. Aug 2004 10:34

Re: thumbs.db
 
Zitat:

Zitat von lume96
Die Thumbnails in einer Thumbs.db kannst Du mit Hilfe von PolyView betrachten und auch ausdrucken.

:!: Du bist mein Held :!:

Damit ist meine offene Frage beantwortet. (Markier ich gleich als erledigt)

Ich werde aber weiter Infos zu diesem Thema sammeln.
Wenn es andere programmieren können, können wir das auch!
(Falls eine Lösung entsteht, werde ich sie selbstverständlich hier posten)

[edit] Danke ! [/edit]

lume96 11. Aug 2004 10:42

Re: thumbs.db
 
Zitat:

Zitat von MaBuSE
[edit] Danke ! [/edit]

Kein Problem, freut mich, wenn ich auch mal helfen konnte.

MfG
Lutz

sakura 11. Aug 2004 19:27

Re: thumbs.db
 
Könntet Ihr mir mal bitte folgenden Wunsch erfüllen:

Füllt ein Verzeichnis mit 4 Grafiken (verschieden lange Dateinamen) und geht dann im Explorer auf Miniaturansicht.

Fügt die erstellte Datei thumbs.db dann hier als Attachement an und schreibt mir dazu, wie die Dateien heißen und Größe (KB; Höhe & Breite des Bildes).

Ich habe die thumbs.db für

Windows 2003
Windows XP Prof

andere Systeme gesucht :zwinker:

...:cat:...

P.S.: Jetzt ist es wieder eine offene Frage :mrgreen:

MaBuSE 11. Aug 2004 22:48

Re: thumbs.db
 
Liste der Anhänge anzeigen (Anzahl: 4)
Zitat:

Zitat von sakura
Könntet Ihr mir mal bitte folgenden Wunsch erfüllen:

Für Dich machen wir doch fast alles :mrgreen:

Also nun folgt ein thumbs.db, dass mit Windows ME erzeugt wurde:

Code:
D:\sakura>ver

Windows Millennium [Version 4.90.3000]

D:\sakura>dir

 Datenträger in Laufwerk D: hat keine Bezeichnung
 Seriennummer des Datenträgers: 0949-1A00
 Verzeichnis von D:\sakura

.             <DIR>       11.08.04  23:28 .
..            <DIR>       11.08.04  23:28 ..
CCC     JPG      584.924  06.07.01   8:27 ccc.JPG
ÜBERSI~1 JPG       13.606  11.08.04  23:33 Übersicht.jpg
A       JPG      604.658  06.07.01   8:26 a.jpg
BB      JPG      618.450  06.07.01   8:27 bb.Jpg
         4 Datei(en)            1.821.638 Bytes
         2 Verzeichnis(se)         399,49 MB frei

D:\sakura>dir /AH

 Datenträger in Laufwerk D: hat keine Bezeichnung
 Seriennummer des Datenträgers: 0949-1A00
 Verzeichnis von D:\sakura

THUMBS  DB        15.872  11.08.04  23:38 Thumbs.db
         1 Datei(en)               15.872 Bytes
         0 Verzeichnis(se)         399,49 MB frei

D:\sakura>
a.jpg, bb.jpg, ccc.jpg:
Size: 1280 x 960 Pixels
Color: 16,7 Millions (24 BitsPerPixel)

Übersicht.jpg
Size: 440 x 103 Pixels
Color: 16,7 Millions (24 BitsPerPixel)

Ich habe die verwendeten Bilder auch als Anhang gepostet, damit kannst du mit den selben Bildern eine thumbs.db auf XP erstellen und vergleichen :-)

Achtung Die Bilder sind sinnfrei. Runterladen lohnt nicht. (1,75 MB) :twisted:

Zitat:

Zitat von sakura
P.S.: Jetzt ist es wieder eine offene Frage :mrgreen:

Ist ja schon frech meine "beantwortete" Frage wieder zu öffnen :mrgreen:

[edit]
Nachtrag:
Laut PolyView sind Thumbnails in Thumbs.db
a, bb, ccc: 80x60 Pixel und Übersicht 80x19 Pixel groß.

Ich hoffe das bringt Dich weiter...
[/edit]

MaBuSE 11. Aug 2004 23:01

Re: thumbs.db
 
Liste der Anhänge anzeigen (Anzahl: 1)
Noch ein Nachtrag:

Das liebe Forum flüsterte mir:

Attachment kann nicht hinzugefügt werden, da die maximale Anzahl von 4 Attachments in dieser Nachricht erreicht wurde


Grrrrr.... :evil:
Das liebe Forum flüsterte mir:

Die Erweiterung db ist hier verboten


Na also :stupid:

sakura 11. Aug 2004 23:28

Re: thumbs.db
 
Liste der Anhänge anzeigen (Anzahl: 1)
Deine Thumbs.db schaue ich mir morgen an. Hier ein Screenie meiner Lösung für XP Prof SP 2 :firejump:

...:cat:...

MaBuSE 12. Aug 2004 08:40

Re: thumbs.db
 
Zitat:

Zitat von sakura
Deine Thumbs.db schaue ich mir morgen an. Hier ein Screenie meiner Lösung für XP Prof SP 2 :firejump:

:!: :!: :!: Respekt :!: :!: :!:

Du hast was programmiert, was es fast nirgendwo im Web gibt!

---Bernhard--- 14. Jan 2007 10:56

Re: thumbs.db
 
Hi.

Sorry, dass ich so nen alten Thread wieder hervorhol...
Aber ich bin schon lange auf der Suche nach einem Programm, mit dem man die thumbs.db-Dateien auslesen kann. Leider bis jetzt nicht sehr erfolgreich.

Sakura hat aber einen Screenshot von einem selbst entwickelten Programm gepostet, mit dem gerade das möglich ist.
Gibt es das Programm oder evtl. sogar den QT dazu irgendwo zum Download? Konnte leider nichts finden.
Wenn nicht, wäre ich für einen Hinweis dankbar, mit welchen Mitteln diese Dateien ausgelesen werden können.

:hi:

Garfield 14. Jan 2007 11:25

Re: thumbs.db
 
Sieh Dir mal den Anhang zu Beitrag #17 an.

Sonst gibt es da noch zwei Projekte in C++:

http://www.codeproject.com/listctrl/ThumbsViewer.asp
http://www.codeproject.com/vcpp/gdip...ailsViewer.asp

---Bernhard--- 14. Jan 2007 11:48

Re: thumbs.db
 
Zitat:

Zitat von Garfield
Sieh Dir mal den Anhang zu Beitrag #17 an.

Sonst gibt es da noch zwei Projekte in C++:

http://www.codeproject.com/listctrl/ThumbsViewer.asp
http://www.codeproject.com/vcpp/gdip...ailsViewer.asp

Also die zwei Programme in C++ sind imho nur Thumbnailviewer, also sie erstellen Thumbnails, können aber nicht die thumbs.db auslesen. :(

Und den Anhang von Post #17 habe ich mir auch bereits angeschaut, der macht aber anscheinend auch nichts anderes, außer Thumbnails erstellen.
Ich seh da keine direkte Möglichkeit, an den Inhalt der thumbs.db ranzukommen, also an die (ehemaligen) Dateinamen und den Images.

Garfield 14. Jan 2007 12:37

Re: thumbs.db
 
Ich dachte, dass im Ordner "Basic" wäüre ein Extractor. Aber Du hast Recht, es werden nur Thumbs erstellt.

Hobby-Programmierer 14. Jan 2007 21:57

Re: thumbs.db
 
Nabend ...,
schau Dir mal ThumbDBLib an. Leider in C# geschrieben und da verstehe ich nur Bahnhof. Mich würde das auslesen der Thumbs ebenfalls interessieren! Hier noch ein Demo.

LG Mario

PS. Vielleich lässt sich Sakura ja erweichen und zeigt zumindest Teile des Codes zum auslesen ...

retnyg 28. Jan 2007 13:05

Re: thumbs.db
 
scheinbar will sakura uns nur verarschen, ein screenshot ist noch lange kein beweis.
andernfalls hätte er ja wohl den code gepostet.

Daniel G 28. Jan 2007 13:07

Re: thumbs.db
 
DAS bezweifel ich einfach mal... :?

Zacherl 28. Jan 2007 13:46

Re: thumbs.db
 
Lol .. ich denke ja nicht, dass Sakura uns verarscht .. wieso sollte er? Außerdem findet man den Source zum auslesen der Thumbnails auch nach kurzer Suche im Internet.

(Zumindest zum Anzeigen der Thumbs aus einem Ordner)

retnyg 28. Jan 2007 16:02

Re: thumbs.db
 
Zitat:

Zitat von Florian Bernd
Außerdem findet man den Source zum auslesen der Thumbnails auch nach kurzer Suche im Internet.

tatsächlich ? dann her damit...

Zacherl 28. Jan 2007 16:08

Re: thumbs.db
 
www.pscode.com --> da hab ich das meine ich gesehen gehabt.

MrKnogge 28. Jan 2007 16:10

Re: thumbs.db
 
Zitat:

Zitat von retnyg
Zitat:

Zitat von Florian Bernd
Außerdem findet man den Source zum auslesen der Thumbnails auch nach kurzer Suche im Internet.

tatsächlich ? dann her damit...

Hobby-Programmierer hat doch sogar in diesem Thema ein link dazu gepostet.

Gruß

Daniel G 28. Jan 2007 16:32

Re: thumbs.db
 
Zitat:

Zitat von retnyg
Zitat:

Zitat von Florian Bernd
Außerdem findet man den Source zum auslesen der Thumbnails auch nach kurzer Suche im Internet.

tatsächlich ? dann her damit...

Schlecht geschlafen? Klingt ganz schön rotzig...

MaBuSE 29. Jan 2007 09:48

Re: thumbs.db
 
Zitat:

Zitat von retnyg
scheinbar will sakura uns nur verarschen, ein screenshot ist noch lange kein beweis.
andernfalls hätte er ja wohl den code gepostet.

Wie bist Du denn drauf???

Ich habe einen funktionierenden Quellcode. Er ist aber nur eingeschränkt nutzbar (nur XP), da sich das Format der thumbs.db Dateien geändert hat. Leider kann ich den Quellcode hier nicht veröffentlichen, da ich dann gegen das Urheberrecht verstoßen würde.
Und wegen so einem unfreundlichen Menschen wie Dir, mach ich mich bestimmt nicht strafbar !!!

Es sei nur soviel gesagt:
Zitat:

Suche mal im Internet nach IStorage und STATSTG (unit ActiveX). Da findest Du den Ansatz.

retnyg 29. Jan 2007 11:08

Re: thumbs.db
 
Zitat:

Zitat von MaBuSE
Zitat:

Zitat von retnyg
scheinbar will sakura uns nur verarschen, ein screenshot ist noch lange kein beweis.
andernfalls hätte er ja wohl den code gepostet.

Wie bist Du denn drauf???

nun, ich suchte code in google, fand dies vielversprechende thema und zitterte schon vor vorfreude, als sakura vollmundig verkündete, eine analyse zu starten, und noch mehr als der screenshot veröffentlicht wurde und hier schon lobeshymnen verfasst wurden.
die enttäuschung war dann allerdings gross, als ich merkte, dass auf grosse worte keine taten folgten, so dass ich versuchte den typen aus der reserve zu locken....

Zitat:

Zitat von Florian Bernd
www.pscode.com --> da hab ich das meine ich gesehen gehabt.

thanx, das sieht vielversprechend aus, wenn es auch nur in VB ist ( http://www.pscode.com/vb/scripts/Sho...63142&lngWId=1 )
edit: funktioniert aber nicht


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:22 Uhr.
Seite 1 von 2  1 2      

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