Anwendungen hängen an zufälligen Dateien

652
SR_

Ich stelle fest, dass die Anwendung täglich auf meinem Windows 7-System mehrmals täglich seit einigen Tagen einfriert. Dieses System ist seit 4 Jahren stabil, also passiert etwas Neues.

Das Hauptsymptom war, dass Thunderbird beim Start erstarrte und unbrauchbar wurde. Ich habe gedacht, dass dies ein Problem mit Thunderbird war, und schließlich ein neues Profil erstellt, weil mein Profil mehr als 10 Jahre alt ist.

Warum habe ich an das Profil gedacht? Weil ich herausfand, dass ich einige .msfDateien nicht ohne Neustart löschen konnte . Der Versuch, dies zu tun, hat den Explorer eingefroren, der neu gestartet werden musste.
Mit einem neuen Profil fror Thunderbird weiter ein, jedoch seltener, sodass ich Mails lesen und eine schnelle Antwort verfassen konnte.

Gestern habe ich eine .hmtlDatei mit gvim bearbeitet, und gleichzeitig habe ich sie in Firefox geladen, um das Ergebnis zu sehen.
Nach einer Stunde Arbeit erstarrte es wieder. Jeder Prozess, der versucht, die .hmtlDatei zu bearbeiten, wurde eingefroren. Das Töten von Firefox und Gvim hat nicht geholfen.

Die Verwendung des Prozess-Explorers (NICHT als Administrator gestartet) konnte die .hmtlDatei mit der Handle-Suchfunktion nicht anzeigen. Handle.exe konnte auch nicht. Beim Neustart wird die nicht gesperrte Datei entsperrt. Ich habe chkdsk /Bmeine zwei Geräte ( C:ist eine SSD, D:ist eine Festplatte), da die .msfDatei war D:und die .hmtlwar C:.

Ich vermutete die Windows-Suche und löschte die Datenbank.
Ich habe versucht, die Windows-Suche, mein Virenschutzprogramm (Avast) und zwei als Dienst arbeitende Synchronisierungs- / Backup-Tools zu deaktivieren.

Hat keine Sperre freigegeben.

Ich habe diese interessante Windbg-Anwendung gefunden: Hung-Prozess in Windows: Gibt es eine Möglichkeit zu sehen, warum?

Ich habe den Thunderbird-Prozess angehängt, der gerade eingefroren wird, und jetzt sehe ich Folgendes:

FAULTING_IP:  ntdll!DbgBreakPoint+0 00000000`7772cc90 cc int 3  EXCEPTION_RECORD: ffffffffffffffff -- (.exr 0xffffffffffffffff) ExceptionAddress: 000000007772cc90 (ntdll!DbgBreakPoint) ExceptionCode: 80000003 (Break instruction exception) ExceptionFlags: 00000000 NumberParameters: 1 Parameter[0]: 0000000000000000  FAULTING_THREAD: 0000000000000000  BUGCHECK_STR: HANG  PROCESS_NAME: thunderbird.exe  ERROR_CODE: (NTSTATUS) 0xcfffffff - <Unable to get error code text>  EXCEPTION_CODE: (NTSTATUS) 0xcfffffff - <Unable to get error code text>  EXCEPTION_PARAMETER1: 0000000000000000  NTGLOBALFLAG: 0  APPLICATION_VERIFIER_FLAGS: 0  DERIVED_WAIT_CHAIN:   Dl Eid Cid WaitType -- --- ------- -------------------------- 56 74c.1a04 Speculated (Triage) --> 0 74c.12b4 File IO   WAIT_CHAIN_COMMAND: ~56s;k;;~0s;k;;  BLOCKING_THREAD: 00000000000012b4  DEFAULT_BUCKET_ID: APPLICATION_HANG_BlockedOn_FileIO  PRIMARY_PROBLEM_CLASS: APPLICATION_HANG_BlockedOn_FileIO  LAST_CONTROL_TRANSFER: from 00000000751dc1ff to 000000007772df0a  STACK_TEXT:  00000000`0024ddd8 00000000`751dc1ff : 00000000`003becdc 00000000`003becf4 00000000`005847e0   000000ba`00340201 : ntdll!ZwCreateFile+0xa 00000000`0024dde0 00000000`751cd18f : 00000000`003becdc 00000000`00000000 00000000`00000000   00000000`00000060 : wow64!whNtCreateFile+0x10f 00000000`0024deb0 00000000`75152776 : 00000000`77360745 00000000`751c0023 00000000`00000246   00000000`003bf2f8 : wow64!Wow64SystemServiceEx+0xd7 00000000`0024e770 00000000`751cd286 : 00000000`00000000 00000000`75151920 ffffffff`fc5f0000   00000000`7770dfc1 : wow64cpu!TurboDispatchJumpAddressEnd+0x2d 00000000`0024e830 00000000`751cc69e : 00000000`00000000 00000000`00000000 00000000`751c4b10   00000000`7ffe0030 : wow64!RunCpuSimulation+0xa 00000000`0024e880 00000000`777216a6 : 00000000`00584330 00000000`00000000 00000000`7780e670   00000000`777e1950 : wow64!Wow64LdrpInitialize+0x42a 00000000`0024edd0 00000000`7777d150 : 00000000`00000000 00000000`77720db1 00000000`0024f380   00000000`00000000 : ntdll!LdrpInitializeProcess+0x17e3 00000000`0024f2c0 00000000`7770b63e : 00000000`0024f380 00000000`00000000 00000000`fffdf000   00000000`00000000 : ntdll! ?? ::FNODOBFM::`string'+0x25b20 00000000`0024f330 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000   00000000`00000000 : ntdll!LdrInitializeThunk+0xe   FOLLOWUP_IP:  wow64!whNtCreateFile+10f 00000000`751dc1ff 448bd8 mov r11d,eax  SYMBOL_STACK_INDEX: 1  SYMBOL_NAME: wow64!whNtCreateFile+10f  FOLLOWUP_NAME: MachineOwner  MODULE_NAME: wow64  IMAGE_NAME: wow64.dll  DEBUG_FLR_IMAGE_TIMESTAMP: 562593aa  STACK_COMMAND: ~0s ; kb  BUCKET_ID: X64_HANG_wow64!whNtCreateFile+10f  FAILURE_BUCKET_ID: APPLICATION_HANG_BlockedOn_FileIO_cfffffff_wow64.dll!whNtCreateFile  WATSON_STAGEONE_URL: http://watson.microsoft.com/0004cc90.htm?Retriage=1  Followup: MachineOwner --------- 

Also gut, ich war ziemlich überzeugt, dass Thunderbird ein IO blockierte, und jetzt ist es bestätigt. Gemäß der API-Dokumentation kann dieser Aufruf das Öffnen einer vorhandenen Datei sein. Ich habe versucht, das Argument mit dem Dateinamen auszugeben (soweit ich es verstehe) mit diesem Befehl zufällig zu spielen: "dt ntdll! _OBJECT_ATTRIBUTES 00000000`005847e0", aber ich bin mit windbg und den Aufruf von Konventionen nicht vertraut in die Struktur graben

Was kann ich als nächstes tun?

BEARBEITEN:
Nachdem ich meine WinDbg-Version wie vorgeschlagen in die x86-Version geändert hatte, wurden meine Dumps analysierbar.
Das Einfrieren ist ausgegangen, wie es immer der Fall ist, wenn Sie sich auf ein Problem konzentrieren: Es verschwindet kurz, um nicht gelöst zu werden, bis zu dieser Nacht, als Canon DPP während einer Stapelverarbeitung von RAW-Dateien einfrierte.
Hier ist die Spur:

FAULTING_IP:  ntdll!DbgBreakPoint+0 7736000c cc int 3  EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff) ExceptionAddress: 7736000c (ntdll!DbgBreakPoint) ExceptionCode: 80000003 (Break instruction exception) ExceptionFlags: 00000000 NumberParameters: 1 Parameter[0]: 00000000  FAULTING_THREAD: 00000000  BUGCHECK_STR: HANG  PROCESS_NAME: DPPBatch.exe  ERROR_CODE: (NTSTATUS) 0xcfffffff - <Unable to get error code text>  EXCEPTION_CODE: (NTSTATUS) 0xcfffffff - <Unable to get error code text>  EXCEPTION_PARAMETER1: 00000000  MOD_LIST: <ANALYSIS/>  NTGLOBALFLAG: 0  APPLICATION_VERIFIER_FLAGS: 0  DERIVED_WAIT_CHAIN:   Dl Eid Cid WaitType -- --- ------- -------------------------- 1 1b88.1ff4 Speculated (Triage) --> 0 1b88.1948 File IO   WAIT_CHAIN_COMMAND: ~1s;k;;~0s;k;;  BLOCKING_THREAD: 00001948  DEFAULT_BUCKET_ID: APPLICATION_HANG_BlockedOn_FileIO  PRIMARY_PROBLEM_CLASS: APPLICATION_HANG_BlockedOn_FileIO  LAST_CONTROL_TRANSFER: from 74e8c5fd to 77370106  STACK_TEXT:  0018ed8c 74e8c5fd 0018ee28 80100080 0018edcc ntdll!ZwCreateFile+0x12 0018ee30 76e53f56 00000060 80100080 00000001 KERNELBASE!CreateFileW+0x35e 0018ee5c 76e553b4 0058e300 80000000 00000001 kernel32!CreateFileWImplementation+0x69 0018ee8c 100dbf8e 01f4ed98 80000000 00000001 kernel32!CreateFileA+0x37 WARNING: Stack unwind information not available. Following frames may be wrong. 0018eeb8 10002275 01f40000 00000000 10002294 DPPDLL!GNZ_getFilenameFromScriptFile+0x3e 0018eef8 0018ef7c 01f4ed98 00000000 0018ef7c DPPDLL!UCSCloseProfile+0xea5 0018eefc 01f4ed98 00000000 0018ef7c 01f4fc20 0x18ef7c 0018ef7c 00000000 00000000 00000000 00000000 0x1f4ed98 FOLLOWUP_IP:  DPPDLL!GNZ_getFilenameFromScriptFile+3e 100dbf8e 8bf8 mov edi,eax  SYMBOL_STACK_INDEX: 4  SYMBOL_NAME: dppdll!GNZ_getFilenameFromScriptFile+3e  FOLLOWUP_NAME: MachineOwner  MODULE_NAME: DPPDLL  IMAGE_NAME: DPPDLL.dll  DEBUG_FLR_IMAGE_TIMESTAMP: 52251a6c  STACK_COMMAND: ~0s ; kb  BUCKET_ID: HANG_dppdll!GNZ_getFilenameFromScriptFile+3e  FAILURE_BUCKET_ID: APPLICATION_HANG_BlockedOn_FileIO_cfffffff_DPPDLL.dll!GNZ_getFilenameFromScriptFile  WATSON_STAGEONE_URL: http://watson.microsoft.com/0001000c.htm?Retriage=1  Followup: MachineOwner --------- 

Ich verfolgen leicht die entsprechende Datei auf meinem D unten zu sein: Laufwerk: D:\Sauvegarde\Tirages\photos\20151214 - totale D70\\GNZC0E116282C365.vbf. Es hängt den Prozess nach 2 Stunden Arbeit. Ich habe zu dieser Zeit den PC benutzt. Es sieht definitiv aus wie ein Dateisystemfehler oder ein Gerätetreiberfehler, also werde ich chkdsk erneut ausführen.
In der Zwischenzeit habe ich versucht, ProcessExplorer zu starten, um nach Prozessen zu suchen, die auf die Datei warten, es hat funktioniert. Bu tIch erinnerte mich, dass es als Admin gestartet werden sollte, also schließe ich es und klickte mit der rechten Maustaste auf das Symbol und ... Es dauerte ungefähr fünf Minuten, bis ich auftauchte (ich hatte nicht erwartet, dass es auftauchen würde, es überraschte mich). Laut Process Explorer ist der blockierenden Datei wiederum kein Handle zugeordnet (ich habe nach "vbf" gesucht).

Ich denke, meine Frage zum Debugger ist beantwortet (Existenz von 2 Versionen von WinDbg), und mein Problem muss noch gelöst werden, aber ich bin mir nicht sicher, ob es der richtige Ort ist, um Hilfe zu erhalten.

1
Klingt nach einem Malware-Problem. Haben Sie nach Malware gescannt? LPChip vor 8 Jahren 0
@LPChip, was denkst du so? Normalerweise verwende ich keine Scanner von Drittanbietern, da ich ihnen nicht vertraue und mein PC dadurch beschädigt werden kann. Aber versuchen wir es mal: Ich habe HijackThis gerade jetzt ausgeführt und der Bericht hilft mir nicht. Avast findet nichts. sfc / scannow ist nicht glücklich, aber vorher auch nicht. SR_ vor 8 Jahren 0
wow64 zeigt, dass dies ein 64-Bit-Dump eines 32-Bit-Prozesses ist. Verwenden Sie ProcessExplorer oder den 32-Bit-Taskmgr, um einen Speicherauszug zu erstellen. zeigen Sie auf den Thunderbird-Symbol-Server (srv * D: \ symbols \ * http: //symbols.mozilla.org/thunderbird) und führen Sie!! -Analyse -v -hang ** in windbg (x86-Version) aus. magicandre1981 vor 8 Jahren 0
@ magicandre1981 Vielen Dank! Ich kann jetzt in den Stapel graben und meine Bits finden ... ja! Diesmal ist die Datei eine meiner INBOX.msf. Hum, ein Rechtsklick darauf im Explorer. Boom, es hängt Forscher. Ich lasse Process Explorer als Admin laufen, finde Handles und ... nicht in der Liste, verdammt :( SR_ vor 8 Jahren 0
Führen Sie ** chkdsk / f ** aus. Möglicherweise haben Sie Probleme mit dem NTFS-Dateisystem magicandre1981 vor 8 Jahren 0
@ magicandre1981 chkdsk / B impliziert / F (durch / R) SR_ vor 8 Jahren 0
hast du chkdsk ausprobiert? Erkennt es NTFS-Probleme? magicandre1981 vor 8 Jahren 0
@ magicandre1981 Ja, ich habe chkdsk: "Ich habe chkdsk / B meine beiden Geräte". Es hat nichts falsch erkannt. SR_ vor 8 Jahren 0
ok, nehmen Sie einen neuen Dump (diesmal 32Bit) auf und analysieren Sie ihn magicandre1981 vor 8 Jahren 0
@ magicandre1981 Die Nachricht wurde entsprechend bearbeitet. Auch wenn ich immer noch mit dem Problem konfrontiert bin, bin ich nicht sicher, ob superuser.com der richtige Ort ist, um diese Diskussion fortzusetzen. Die ursprüngliche Frage wurde beantwortet. SR_ vor 8 Jahren 0
Hum, eine weitere Spur. Nach dem Neustart schlug DPPBatch mit dem Fehler (hier übersetzt) ​​"nicht genügend Speicherplatz" vor. Ich erinnere mich, dass Thunderbird beim Komprimieren von IMAP-Ordnern den gleichen Fehler gemeldet hat. Ich habe viel freien Platz. Das ist also nicht das Problem. Vielleicht sollte ich fragen, woran es in einer neuen Frage liegen könnte? Das Lesen der NTFS-Dokumentation gibt mir viele Informationen, mit denen ich nicht weiß, was ich tun soll. SR_ vor 8 Jahren 0
Es kann sich lohnen, mit Procdump eine Sicherungskopie des Prozesses zu erstellen, indem Sie die folgenden Optionen verwenden: `procdump -ma -mk processname` Dadurch werden sowohl Stapel für den Benutzermodus als auch für den Kernelmodus erstellt. Informationen dazu, wie Sie damit arbeiten, finden Sie unter https://channel9.msdn.com/Shows/Defrag-Tools/Defrag-Tools-178-Sysinternals-ProcDump-v90. Andernfalls könnte die Ausgabe von fltmc.exe in einer Admin-Eingabeaufforderung von Interesse sein, um festzustellen, welche anderen Dateisystemfilter installiert sind. HelpingHand vor 7 Jahren 0

0 Antworten auf die Frage