locked
Explorer.exe crash (hang) bei Zugriff auf Freigabe shell32.dll und / oder browcli.dll RRS feed

  • Frage

  • Ich suche seit zwei Jahren eine Lösung für einen häufigen Explorer.exe Crash ... habe alles Mögliche getestet, Fixit, Updates, Shell Erweiterungen  abgeschaltet usw.

    Was kann das noch sein ?

    EXCEPTION_RECORD:  ffffffffffffffff -- (.exr 0xffffffffffffffff)
    ExceptionAddress: 0000000000000000
       ExceptionCode: 80000003 (Break instruction exception)
      ExceptionFlags: 00000000
    NumberParameters: 0

    FAULTING_THREAD:  0000000000000025

    BUGCHECK_STR:  HANG

    PROCESS_NAME:  explorer.exe

    ERROR_CODE: (NTSTATUS) 0xcfffffff - <Unable to get error code text>

    EXCEPTION_CODE: (NTSTATUS) 0xcfffffff - <Unable to get error code text>

    NTGLOBALFLAG:  0

    APPLICATION_VERIFIER_FLAGS:  0

    DERIVED_WAIT_CHAIN: 

    Dl Eid Cid     WaitType
    -- --- ------- --------------------------
       37  c78.16c8 Unknown               

    WAIT_CHAIN_COMMAND:  ~37s;k;;

    BLOCKING_THREAD:  00000000000016c8

    DEFAULT_BUCKET_ID:  APPLICATION_HANG_BlockedOn_NetworkCall

    PRIMARY_PROBLEM_CLASS:  APPLICATION_HANG_BlockedOn_NetworkCall

    LAST_CONTROL_TRANSFER:  from 000007fef1277f11 to 00000000774bdc2a

    STACK_TEXT: 
    00000000`0a2bee68 000007fe`f1277f11 : 00000000`000009bc 00000000`00001000 00000000`00001000 000007fe`fd2a1635 : ntdll!ZwDeviceIoControlFile+0xa
    00000000`0a2bee70 000007fe`f1278193 : 00000000`000009bc 00000000`067b5f00 00000000`0a2bf118 00000000`0a2befd8 : browcli!DeviceControlGetInfo+0xe1
    00000000`0a2bef00 000007fe`f127339f : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`0923f0e0 : browcli!GetBrowserServerList+0x10f
    00000000`0a2bef70 000007fe`f1273187 : 00000000`00000000 00000000`00000000 00000000`00000064 00000000`ffffffff : browcli!EnumServersForTransport+0x4f
    00000000`0a2bf030 000007fe`f1272d10 : 00000000`001e7878 00000000`00000064 00000000`00000000 00000000`00000000 : browcli!NetServerEnumEx+0x45b
    00000000`0a2bf1e0 000007fe`f7ae4fca : 00000000`00000000 00000000`00000064 00000000`001e7860 00000000`ffffffff : browcli!NetServerEnum+0x40
    00000000`0a2bf240 000007fe`f7ae2d38 : 00000000`00000002 00000000`00000000 00000000`00000000 00000000`00000000 : ntlanman!DOMAIN_ENUMNODE::GetInfo+0x86
    00000000`0a2bf2b0 000007fe`f7b1a317 : 00000000`0a2bf4b0 00000000`00000000 00000000`0a2bf4b0 00000000`0a2bf5b0 : ntlanman!NPOpenEnum+0x495
    00000000`0a2bf320 000007fe`f7b1246f : 00000000`00000032 00000000`0a2bf4b0 00000000`0a2bf4b0 000007fe`f7b12cf4 : mpr!CProviderOpenEnum::TestProvider+0x43
    00000000`0a2bf360 000007fe`f7b1a33f : 00000000`0a2bf4b0 00000000`00000000 0000d412`00000001 00000000`00000000 : mpr!CRoutedOperation::GetResult+0x145
    00000000`0a2bf3e0 000007fe`f7b1254d : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`000005a8 : mpr!CProviderOpenEnum::GetResult+0x17
    00000000`0a2bf410 000007fe`f7b124f9 : 00000000`0a2bf4b0 00000000`0a2bf4b0 00000000`00000002 00000000`0a2bf4b0 : mpr!CMprOperation::Perform+0x3f
    00000000`0a2bf450 000007fe`f7b1605c : 00000000`00000000 00000000`00000000 00000000`04b7ae00 00000000`00000000 : mpr!CRoutedOperation::Perform+0x29
    00000000`0a2bf480 000007fe`f39f371b : 0000027e`00000002 00000000`00000000 00000000`00000000 00000000`04be8e70 : mpr!WNetOpenEnumW+0x12f
    00000000`0a2bf550 000007fe`f39f3d42 : 000007fe`f39f3cdc 00000000`00000000 00000000`001e8c10 00000000`00000000 : fdWNet!CWNetProvider::EnumerateFunc+0x8b
    00000000`0a2bfa50 00000000`77490d5b : 00000000`09395d40 00000000`09395d40 00000000`00000000 00000000`0a2bfee8 : fdWNet!CWNetProvider::ThreadProc+0x66
    00000000`0a2bfa90 00000000`774903d6 : 00000000`00000000 00000000`0019f750 00000000`00000000 00000000`0696f988 : ntdll!RtlpTpWorkCallback+0x16b
    00000000`0a2bfb70 00000000`773659cd : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!TppWorkerThread+0x5ff
    00000000`0a2bfe70 00000000`7749b981 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : kernel32!BaseThreadInitThunk+0xd
    00000000`0a2bfea0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x1d


    FOLLOWUP_IP:
    browcli!DeviceControlGetInfo+e1
    000007fe`f1277f11 413bc5          cmp     eax,r13d

    SYMBOL_STACK_INDEX:  1

    SYMBOL_NAME:  browcli!DeviceControlGetInfo+e1

    FOLLOWUP_NAME:  MachineOwner

    MODULE_NAME: browcli

    IMAGE_NAME:  browcli.dll

    DEBUG_FLR_IMAGE_TIMESTAMP:  4ff4bd99

    STACK_COMMAND:  ~37s ; kb

    BUCKET_ID:  X64_HANG_browcli!DeviceControlGetInfo+e1

    FAILURE_BUCKET_ID:  APPLICATION_HANG_BlockedOn_NetworkCall_cfffffff_browcli.dll!DeviceControlGetInfo

    Followup: MachineOwner


    • Bearbeitet ckmrx Dienstag, 8. September 2015 14:28
    Dienstag, 8. September 2015 14:27

Antworten

  • STACK_TEXT: 
    00000000`0a2bee68 000007fe`f1277f11 : 00000000`000009bc 00000000`00001000 00000000`00001000 000007fe`fd2a1635 : ntdll!ZwDeviceIoControlFile+0xa
    00000000`0a2bee70 000007fe`f1278193 : 00000000`000009bc 00000000`067b5f00 00000000`0a2bf118 00000000`0a2befd8 : browcli!DeviceControlGetInfo+0xe1
    00000000`0a2bef00 000007fe`f127339f : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`0923f0e0 : browcli!GetBrowserServerList+0x10f

    Mit dem Procmon solltest du einen Dateizugriff sehen.
    Interessant wäre halt, bei welcher Aktion sich der Explorer aufhängt.

    Hast du Netzlaufwerke, Netzordner o.ä. zu den Favoriten des Explorers hinzugefügt?

    Donnerstag, 10. September 2015 15:42

Alle Antworten

  • Hallo ckmrx,

    fang mal mit 

    sfc /scannow 

    an und lass die die Infos mal ausgeben:

    findstr /c:"[SR]" %windir%\logs\cbs\cbs.log >c:\windows\logs\cbs\sfcdetails.log

    Schau mal in Autoruns vom Sysinternals und schalte mal alle Shell-Erweiterungen aus. Ggf. mal abgesicherten Modus mit Netzwerktreibern und schauen, ob der Fehler auch da auftritt.

    Hast du irgendwelche Virtualisierungssoftware? Daemon Tools oder Virtual Clone Drive?

    Wenn man nicht mehr weiter weiß, ist es immer sinnvoll mal mit ProcMon das Ganze zu betrachten.

    Auch der Application Verifier wäre noch eine Option nach Fehlern zu suchen.

    Was ist das für eine Freigabe - wo zeigt sie hin etc?

    Auf welchem Server liegt die Freigabe? Wird der Server sauber aufgelöst in beide Richtungen?


    Best regards,

    David das Neves

    Technology Specialist - Consulting Services
    Computacenter AG & Co. oHG - Munich

    Blog    

    Caution: This post was written with the intention to help and may contain errors.
    If my post was helpful or answered your question please mark it respectively. Thanks.


    Dienstag, 8. September 2015 19:43
  • Hi,

    sfc ist mehrfach gelaufen (ohne Fehler) , chkdsk /f /r auch, viele Shell Erweiterungen sind abgeschaltet, über Autoruns  auch alles Mögliche, bei ProcMon konnte ich nichts erkennen, 3 oder 4 Microsoft Fixe zu dem Explorer Crash sind installiert, nichtbenötigte Software wurde deinstalliert - auch der ganze Lenovo kram - Crash (Hang)  dumps wurde mit procdump erstellt und analysiert,  mehrere Tools haben keine Schadsoftware gefunden -  langsam glaub ich es liegt am Server :) 

    Auflösung  funktioniert   Win7 <-> 2008Server (kein DC) 

    Ich guck nach dem CBS log.

    Mittwoch, 9. September 2015 08:52
  • STACK_TEXT: 
    00000000`0a2bee68 000007fe`f1277f11 : 00000000`000009bc 00000000`00001000 00000000`00001000 000007fe`fd2a1635 : ntdll!ZwDeviceIoControlFile+0xa
    00000000`0a2bee70 000007fe`f1278193 : 00000000`000009bc 00000000`067b5f00 00000000`0a2bf118 00000000`0a2befd8 : browcli!DeviceControlGetInfo+0xe1
    00000000`0a2bef00 000007fe`f127339f : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`0923f0e0 : browcli!GetBrowserServerList+0x10f

    Mit dem Procmon solltest du einen Dateizugriff sehen.
    Interessant wäre halt, bei welcher Aktion sich der Explorer aufhängt.

    Hast du Netzlaufwerke, Netzordner o.ä. zu den Favoriten des Explorers hinzugefügt?

    Donnerstag, 10. September 2015 15:42
  • Hallo *,

    der Explorer crasht beim durchklicken der Ordner in der Freigabe egal ob über Netzlaufwerk oder UNC Pfad.

    Donnerstag, 24. September 2015 08:05
  • Na siehste mal.
    Leider hat die Moderation den Thread schon als gelöst markiert...

    Hast du denn den Filezugriff im Procmon gesehen?
    Es könnte dir helfen, wenn du den erweiterten Filter einschaltest, dort solltest du ein IOCTL_Device_Control (oder so ähnlich) zum Fehlerzeitpunkt sehen.

    Was hängt denn da für eine Freigabe drin? NAS, Fileserver etc?
    Wie klickst du durch (mach doch mal nen Screenshot des Explorers).
    Passiert das eventuell, wenn ein bestimmter Ordner angeklickt werden?

    Ich würde das Thema nochmal reproduzieren und versuchen einen Netzwerktrace mitlaufen zu lassen, dort sollte man dann die Kommunikation zu dem entsprechenden Zeitpunkt sehen.

    Ein anderer Versuch wäre, ein Rückschritt auf SMB1. Eventuell setzt da der Server die Spezifikation nicht korrekt um, was den Explorer verwirrt - oder er antwortet gar nicht, und der Explorer verhält sich falsch.

    Donnerstag, 24. September 2015 10:58
  • Hallo ck,

    hast du schon mal einen clean reboot gemacht? Versuch da den Fehler nochmal zu reproduzieren. Damit kannst du komplett und relativ simpel ausschließen, dass es doch nicht eine ShellExtension oder anderes 3rd party Tool ist.

    Link

    Wenn der Fehler trotzdem noch auftritt, dann mit der Vorgehensweise vom Lennart weitermachen.


    Greetings,

    David das Neves

    Technology Specialist - Consulting Services
    Computacenter AG & Co. oHG - München

    Blog    

    Caution: This post may contain errors.

    Donnerstag, 24. September 2015 13:07