Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Debug Fehler (https://www.delphipraxis.net/197168-debug-fehler.html)

MicMic 19. Jul 2018 20:02

Debug Fehler
 
Hallo,
gestern die Delphi Cummunity Version installiert.
Also erst mal, hab ich wenig Durchblick wegen nem Debugger usw.
Ich starte halt mein Programm und fertig :)

Jedoch erscheint folgende Meldung und das ca. 15 mal (Zugriff verweigert) mit verschiedenen ReturnHr/tid Werten und eine mit "Unbekannter Fehler".
Code:
Debug-Ausgabe:
onecoreuap\shell\windows.storage\fileenum.cpp(216)\windows.storage.dll!759D7FF7: (caller: 7588FD81) ReturnHr(1) tid(840) 80070005 Zugriff verweigert

Debug-Ausgabe:
onecoreuap\shell\ext\thumbnailcache\lib\thumbcacheobj.cpp(1848)\thumbcache.dll!65072512: (caller: 65072624) ReturnHr(1) tid(324) 80004005 Unbekannter Fehler
    CallContext:[\InitializeCache]
Ich kann damit eigentlich gar nichts anfangen und bin mir überhaupt nicht sicher, ob sich das irgendwie auf meine Anwendung auswirkt. Kennt sich da jemand aus?

Gruß
Michael

MicMic 19. Jul 2018 21:24

AW: Debug Fehler
 
Ich hab was rausgefunden.
SHGetFileInfo macht diesen Debug-Fehler
Nun hab ich SHGetFileInfoA. Damit geht es, bei 32 und 64 Bit Kompilierung (unter einem 64Bit Windows).
Fragt sich nur wie ein echtes 32 Bit Windows darauf reagiert.

Ich glaub das hat auch was zusagen. Es gibt ja viele API-Funktionen mit "A" und mit "W" am Ende.

Ich musste auch mein "String" zu "AnsiString" ändern.

Michael

MicMic 19. Jul 2018 21:32

AW: Debug Fehler
 
Ne, geht doch nicht mit SHGetFileInfoA
Wenn ich jedenfalls diesen Befehl weglasse (ob mit "A" am Ende oder ohne), kommen diese Debug-Fehler nicht.
Nur brauche ich SHGetFileInfo

Hmm, per Google finde ich auch nichts

Michael

Schokohase 19. Jul 2018 22:07

AW: Debug Fehler
 
Zitat:

Zitat von MicMic (Beitrag 1408005)
Hmm, per Google finde ich auch nichts

Bei Google suchendelphi SHGetFileInfo (ca. 20.000 Ergebnisse)

MicMic 19. Jul 2018 22:16

AW: Debug Fehler
 
Zitat:

Zitat von Schokohase (Beitrag 1408011)
Zitat:

Zitat von MicMic (Beitrag 1408005)
Hmm, per Google finde ich auch nichts

Bei Google suchendelphi SHGetFileInfo (ca. 20.000 Ergebnisse)


Toll :) aber nicht mit dem Debug-Problem. Vielleicht stimmt ja auch irgendwo ein Pfad von Delphi nicht, denn irgendwo gibt's ja ein Zugriffsproblem. Die Anwendung von SHGetFileinfo geht aber wie gewünscht, trotz Debug-Fehler bzw. Debug-Info.

Michael

Schokohase 19. Jul 2018 23:08

AW: Debug Fehler
 
Nun, du zeigst uns ja nichts von deinem Code der da Probleme macht, also musst du dich selber auf die Suche machen.

MicMic 20. Jul 2018 13:25

AW: Debug Fehler
 
Ich glaube nicht das der Code hier weiter hilft aber schön wärs, wenn ich da irgendwo ein Fehler habe.

Erst mal wird die IconListe zugewiesen:
Code:
// SFI ist von Typ TSHFileInfoW;
ZeroMemory(@SFI, SizeOf(SFI));
SysIL := SHGetFileInfo('', 0, SFI, SizeOf(SFI),SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
If SysIL <> 0 Then
Begin
 IL.Handle := SysIL;
 IL.ShareImages := TRUE;
 IL.DrawingStyle := dsTransparent;
End;
Dies wirft keine Debug-Infos aus, mit diesen "Zugriff verweigert".

Später im Code nutze ich u.a. folgenden Problemcode:
Code:
// Info ist vom Typ TSHFileInfoW;
ZeroMemory(@Info, SizeOf(Info));
SHGetFileInfo(PChar(pa+fn),FILE_ATTRIBUTE_DIRECTORY,Info,SizeOf(Info),SHGFI_SYSICONINDEX Or SHGFI_ATTRIBUTES)
Dies meldet dann den "Zugriff verweigert" im Debug-Fenster. Ich habe auch ein wenig hin und her, sprich statt PChar dieses PWideChar genommen und die Info-Variable z.B. mit "_SHFILEINFOW" anstatt "TSHFileInfoW". Auch gebe ich ein mögliches Icon-Handle wieder frei (DestroyIcon(Info.hIcon). Der "Problemcode" wird mehrmals aufgerufen. Als Beispiel 100x (ist immer anders) aber im Debug-Fenster habe ich dann nicht 100x "Zugriff verweigert", eher nur so ca. 15 Stück solcher Meldungen. Wenn ich nun Delphi mit Admin-Rechten starte, verringert sich die Anzahl dieser Meldungen (ich glaube 4 waren es noch) und wie ich schon sagte, ist die Debug-Meldung weg, wenn ich SHGetFileInfo nicht aufrufe.

Dann hatte ich ja noch eine andere Meldung aufgeschrieben
Code:
onecoreuap\shell\ext\thumbnailcache\lib\thumbcacheobj.cpp(1848)\thumbcache.dll!65072512: (caller: 65072624) ReturnHr(1) tid(324) 80004005 Unbekannter Fehler
    CallContext:[\InitializeCache]
Und eben mal was neues (2 davon) im Debug-Fenster.
Code:
Debug-Ausgabe:
internal\sdk\inc\wil\win32helpers.h(119)\windows.storage.dll!00007FFB00C04978: (caller: 00007FFB00B2E9FF) ReturnHr(1) tid(774) 80070002 Das System kann die angegebene Datei nicht finden.
SHGetFileInfo und alles andere funktioniert ja. Ich habe auch keine Programmabstürze oder ähnliches. Nur die Debug-Infos/Fehler kommen, sobald ich das Programm starte. Da muss irgendwo ein Grundproblem sein. Abgesehen von Delphi findet man per Google zu "windows.storage.dll" einiges. Zum Beispiel "Windows-Explorer stürzt immer ab - windows.storage.dll". Meist immer etwas mit dem Explorer. Mein Windows 10 selbst läuft eigentlich. Ist auch noch eine recht frische Installation. Aber es bezieht sich ja nicht alles auf "windows.storage.dll", da ich z.B. auch einen "Unbekannten Fehler" von "thumbcache.dll" bekomme... alles halt in diesem Debug-Fenster.

Michael

Uwe Raabe 20. Jul 2018 13:46

AW: Debug Fehler
 
Zitat:

Zitat von MicMic (Beitrag 1408086)
Ich habe auch keine Programmabstürze oder ähnliches. Nur die Debug-Infos/Fehler kommen, sobald ich das Programm starte. Da muss irgendwo ein Grundproblem sein.

Das ist kein Problem, sondern lediglich eine Debug-Ausgabe der ShellAPI. Ähnliche Meldungen kommen hier auch - die kannst du getrost ignorieren.

MicMic 20. Jul 2018 13:56

AW: Debug Fehler
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1408089)
Zitat:

Zitat von MicMic (Beitrag 1408086)
Ich habe auch keine Programmabstürze oder ähnliches. Nur die Debug-Infos/Fehler kommen, sobald ich das Programm starte. Da muss irgendwo ein Grundproblem sein.

Das ist kein Problem, sondern lediglich eine Debug-Ausgabe der ShellAPI. Ähnliche Meldungen kommen hier auch - die kannst du getrost ignorieren.

Nun ja, aber irgendwas stimmt ja trotzdem nicht aber hört sich trotzdem gut an, wenn ich es ignorieren darf. :)
Ist aber schon wie ein Pickel auf der Nase... der stört immer, auch wenn man trotzdem noch riechen kann *lach
Michael

Uwe Raabe 20. Jul 2018 14:10

AW: Debug Fehler
 
Zitat:

Zitat von MicMic (Beitrag 1408097)
Nun ja, aber irgendwas stimmt ja trotzdem nicht

Muss gar nicht mal sein. Da hat halt ein Windows-Programmierer eine Meldung in die Debug-Ausgabe geschrieben. Vielleicht hat man auch nur vergessen, diese beim Release wieder rauszunehmen. Damit wird nur ein Zustand oder ein Ereignis mitgeteilt, aber das bedeutet erstmal keinen Fehler.


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