Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Dateibeschreibung auslesen (https://www.delphipraxis.net/102645-dateibeschreibung-auslesen.html)

Diamondback2007 1. Nov 2007 17:57


Dateibeschreibung auslesen
 
hallo,

ich möchte aus einer exe die dateibeschreibung bzw. den namen auslesen.
das heißt aus "winword.exe" wird dann "Microsoft Office Word 2007"
den pfad der exe hab ich. ist das möglich?

vielen dank!

gruß

Pfoto 1. Nov 2007 19:00

Re: Dateibeschreibung auslesen
 
Hallo!

hast du dir schon mal das hier angeschaut:

http://www.swissdelphicenter.ch/de/showcode.php?id=1047
und
http://www.swissdelphicenter.ch/de/showcode.php?id=1987


Gruß
Pfoto

Diamondback2007 1. Nov 2007 19:28

Re: Dateibeschreibung auslesen
 
Vielen dank.
das war genau das was ich gesucht habe :)

gruß

Diamondback2007 4. Nov 2007 12:38

Re: Dateibeschreibung auslesen
 
jetzt habe ich ein weiteres problem:

die oben genannten funktionen scheitern bei der "PhotoViewer.dll" von windows vista.
per explorer kann ich alles sehr schön auslesen, allerdings gibt mir meine funktion nichts zurück.

kann mir jemand helfen? :)

gruß


EDIT: hmmm...hab vielleicht was...

EDIT2: Ist doch nichts, habe nur die versionsinfos bekommen...:(

Luckie 4. Nov 2007 12:48

Re: Dateibeschreibung auslesen
 
Zitat:

Zitat von Diamondback2007
kann mir jemand helfen? :)

Da meine Glaskugel in Reparatur ist, musst du mir schon etwas auf die Sprünge helfen:
- Gibt es eine Fehlermeldung? Wenn ja, welche?
- Hast du die Rückgabewerte der entsprechenden API-Funktionen mal überprüft?
- Was sagt GetLastError?
- Wie sieht dein Code aus?
- Was hast du bisher zur Fehlersuche unternomen, außer hier im Forum zu posten?
- Bist du den Code mal Schritt für Schritt durchgegangen und hast die die Werte der Variablen angeguckt?
- Kannst du die Fehlerquelle irgendwie eingrenzen?
:?

Diamondback2007 4. Nov 2007 13:09

Re: Dateibeschreibung auslesen
 
tut mir leid! :oops:

also problem sieht wie folgt aus:

-wenn ich meine exe normal starte passiert nichts, das heißt
es wird nichts ausgelsen. das feld bleibt leer.

-wenn ich am debuggen bin kann es passieren, dass
ich eine zugriffsverletzung in einer dll bekomme
und meine IDE danach abstürtzt.
das äußert sich darin, dass mein przess nicht mehr beendet
werden kann, auch nicht per Taskmanager.
sobald ich allerdings "bds.exe" beende ist wieder alles normal.
beim erneuten starten der IDE klappt sie wieder bis zum zeitpunkt
des debuggens:
Code:
---------------------------
Fehler
---------------------------
Zugriffsverletzung bei Adresse 0EF1223C in Modul 'bordbk105N.dll'. Schreiben von Adresse 11021000.
---------------------------
OK  Details >>  
---------------------------
Details:

Code:
[0EF1223C]{bordbk105N.dll} Unknown function at @isDbkLoggingOn$qv + $18094
(0000A9FF){DelphiSpeedUp105.dll} [017CB9FF]
[21BA4EAB]{win32debugide100.bpl} Win32Debug.TWin32LinkUnit.GetCppDebugHook + $33
[21BA574B]{win32debugide100.bpl} Win32Debug.TWin32Process.DoLinkUnitCreated + $EB
[2000A332]{rtl100.bpl } System.TInterfacedObject._AddRef + $A
[208EDD13]{dbkdebugide100.bpl} Debug.TProcess.LinkUnitCreated + $7
[208EB607]{dbkdebugide100.bpl} Debug.TEvaluatorCallback.ntfyLinkUnitDelta + $57
[209DEF14]{coreide100.bpl} SyncEdit.TSyncEditPainter.ShowSyncButton + $80
[209DBC75]{coreide100.bpl} SyncEdit.TSyncEditPainter.DrawMark + $899
[209DBC99]{coreide100.bpl} SyncEdit.TSyncEditPainter.DrawMark + $8BD
[209DBCB6]{coreide100.bpl} SyncEdit.TSyncEditPainter.DrawMark + $8DA
[200E53F8]{vcl100.bpl } Graphics.TResourceManager.Unlock + $4
[200E5566]{vcl100.bpl } Graphics.TResourceManager.FreeResource + $82
(00002007){DelphiSpeedUp105.dll} [017C3007]
[20003DC4]{rtl100.bpl } System.@FreeMem + $4
[20006B86]{rtl100.bpl } System.@ClassDestroy + $2
[200E603E]{vcl100.bpl } Graphics.TFont.Destroy + $1E
[200E53F8]{vcl100.bpl } Graphics.TResourceManager.Unlock + $4
[2004AA1B]{rtl100.bpl } Contnrs.TCustomBucketList.FindItem + $17
[2004A9DF]{rtl100.bpl } Contnrs.TCustomBucketList.Find + $17
[209F402B]{coreide100.bpl} EditorControl.PaintMarks + $11B
[20003DC4]{rtl100.bpl } System.@FreeMem + $4
(000013E4){DelphiSpeedUp105.dll} [017C23E4]
[20A59AD2]{coreide100.bpl} EdProcs.SafeEkEval + $4A
[20A99800]{coreide100.bpl} EdKrnl.EkEval + $18
[20A99A02]{coreide100.bpl} EdKrnl.ElisionsAtLine + $36
[20A99800]{coreide100.bpl} EdKrnl.EkEval + $18
[209F6BAF]{coreide100.bpl} EditorControl.TCustomEditControl.UpdateStatus + $203
[200E7B15]{vcl100.bpl } Graphics.TCanvas.GetPenPos + $19
[20143C2D]{vcl100.bpl } Controls.TWinControl.PaintControls + $1FD
[200E7ACA]{vcl100.bpl } Graphics.TCanvas.Unlock + $1E
[20143833]{vcl100.bpl } Controls.TWinControl.DefaultHandler + $D7
[209DF5F4]{coreide100.bpl} SyncEdit.TSyncButton.WMUser + $18
[2013F6A7]{vcl100.bpl } Controls.TControl.WndProc + $2BB
[208F5181]{dbkdebugide100.bpl} Debug.TDebugger.DBKWndProc + $39
[20040DE4]{rtl100.bpl } Classes.StdWndProc + $14
[20160EF8]{vcl100.bpl } Forms.TApplication.ProcessMessage + $FC
[20160F32]{vcl100.bpl } Forms.TApplication.HandleMessage + $A
[20161188]{vcl100.bpl } Forms.TApplication.Run + $CC
[00422971]{bds.exe    } bds.bds (Line 196, "" + 7) + $2
-Fehler tritt nur bei der dll auf, bei allen exes klappt es prima.
-wie gesagt durchdebuggen geht halt leider nicht... :(

gruß

Tyrael Y. 22. Feb 2008 07:17

Re: Dateibeschreibung auslesen
 
Entschuldigung, wenn ich diesen Thread wieder hervorkrame,
aber ich habe das Problem mit der bordbk105N.dll seit gestern Abend auch.

Delphi läuft völlig ok, ausser daß ich nicht mehr debuggen kann.

Ich bekomme genauso eine Zugriffsverletzung wie der Poster vor mir.

Jetzt gerade lasse ich die Reperaturfunktion von Delphi laufen,
mal schauen, ob es helfen wird.

Hat jemand auch das Problem schon mal gehabt und weiss Rat?


Gruß
Tyrael


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:44 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