Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

탐색기에서 폴더 생성/삭제 시 몇 초 동안 멈추는 현상

희한한 현상이 발생하는 군요. ^^;

탐색기에서 폴더를 생성 및 삭제할때마다 이상하게 몇 초동안 explorer.exe 동작 자체가 멈춰버리는 현상이 발생합니다. 뭐가 문제일까 싶어서 현상이 발생하는 순간 덤프를 떠서 windbg로 분석해 보았는데요. ^^

우선, 모든 스레드의 콜 스택을 확인해 보았습니다.

0:107> ~*k

   0  Id: 1ff0.1fcc Suspend: 1 Teb: 00000000`0037f000 Unfrozen
 # Child-SP          RetAddr           Call Site
00 00000000`000cf928 00007ff8`55d65334 USER32!NtUserWaitMessage+0x14
01 00000000`000cf930 00007ff8`55d1db39 SHELL32!CDesktopBrowser::_MessageLoop+0x74
02 00000000`000cf9d0 00007ff6`a624b4a4 SHELL32!SHDesktopMessageLoop+0x39
03 00000000`000cfa00 00007ff6`a62dde56 Explorer!wWinMain+0x6e0
04 00000000`000cfd20 00007ff8`57918102 Explorer!std::_Xout_of_range+0x33a
05 00000000`000cfdf0 00007ff8`585bc574 KERNEL32!BaseThreadInitThunk+0x22
06 00000000`000cfe20 00000000`00000000 ntdll!RtlUserThreadStart+0x34
    
...[생략]...

 106  Id: 1ff0.4230 Suspend: 1 Teb: 00000000`00200000 Unfrozen
 # Child-SP          RetAddr           Call Site
00 00000000`2713e218 00007ff8`54fea484 ntdll!NtCreateFile+0x14
01 00000000`2713e220 00007ff8`54fea156 KERNELBASE!CreateFileInternal+0x314
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for C:\Program Files (x86)\Dropbox\Client\DropboxExt64.31.dll - 
02 00000000`2713e3a0 00007ff8`28d1d123 KERNELBASE!CreateFileW+0x66
03 00000000`2713e400 00007ff8`28d1d483 DropboxExt64_31!DllUnregisterServer+0xab3
04 00000000`2713e460 00007ff8`553b13fd DropboxExt64_31!DllUnregisterServer+0xe13
05 00000000`2713e4a0 00007ff8`552ea35e windows_storage!`CLauncherTelemetry::Instance'::`2'::`dynamic atexit destructor for 'wrapper''+0x54bd
...[생략]...
0b 00000000`2713ebd0 00007ff8`5520cfb1 windows_storage!CAutomaticDestinationList::RemoveDeletedItem+0xb0
0c 00000000`2713ec70 00007ff8`55cf3ae6 windows_storage!CAutomaticDestinationList::RemoveDeletedItems+0x161
...[생략]...
11 00000000`2713f180 00007ff8`551e003f windows_storage!CFileOperation::FinishOperations+0x76
12 00000000`2713f560 00007ff8`55efa7b2 windows_storage!CFileOperation::PerformOperations+0xdf
13 00000000`2713f5c0 00007ff8`55f07356 SHELL32!DeleteItemsInDataObject+0x106
14 00000000`2713f640 00007ff8`54e98fd0 SHELL32!DeleteItemsThreadProc+0xa6
15 00000000`2713f690 00007ff8`57918102 SHCORE!??$MakeAndInitialize@VCClosableStreamWrapper@@UIStream@@PEAU2@$$T@Details@WRL@Microsoft@@YAJPEAPEAUIStream@@$$QEAPEAU3@$$QEA$$T@Z+0x1c4
16 00000000`2713f780 00007ff8`585bc574 KERNEL32!BaseThreadInitThunk+0x22
17 00000000`2713f7b0 00000000`00000000 ntdll!RtlUserThreadStart+0x34

Delete를 했으니, 콜 스택에 삭제 관련 메서드를 포함한 스레드를 하나 발견할 수 있었고 상단에는 DropboxExt64_31.dll이 관여하고 있는 것을 볼 수 있습니다.

Sysinternals의 Autoruns를 이용해 탐색기에 추가된 Dropbox 제품의 플러그인을 제거하니 현상이 해결되었습니다.

그런데... 이렇게 해도 dropbox 제품의 동작에는 아무런 영향이 없었습니다. 단지, 탐색기에서 드롭박스의 폴더 동기화가 완료된 상태를 나타내기 위한 체크 모양의 아이콘만 나타나지 않을 뿐이었습니다. 음... 그렇군요. ^^ 지워도 상관없는 확장이어서 다행입니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/17/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 136  137  138  139  140  141  142  [143]  144  145  146  147  148  149  150  ...
NoWriterDateCnt.TitleFile(s)
1480정성태8/22/201337865개발 환경 구성: 194. 윈도우 서버의 80 포트에 대한 port forwarding 설정 방법파일 다운로드1
1479정성태8/14/201325196오류 유형: 183. IIS - 바인딩 추가 시 Object reference not set to an instance of an object 오류 [5]
1478정성태8/14/201328547오류 유형: 182. 윈도우 정품 활성화 오류 - 0x80070426
1477정성태8/14/201327400VC++: 71. codeplex의 Project Austin - 실감나게 책장 넘기는 표현
1476정성태8/13/201335859디버깅 기술: 55. Windbg - 윈도우 핸들 테이블 (2)
1475정성태8/12/201334951.NET Framework: 377. 프로세스가 종료된 후에도 소켓이 살아있다면?파일 다운로드1
1474정성태8/10/201331068오류 유형: 181. 윈도우 8 - WmiPrvSE.exe 프로세스가 CPU 소비하는 현상
1473정성태8/8/201327872VC++: 70. Win32 socket이 Thread-safe할까? [1]파일 다운로드1
1472정성태8/7/201326261.NET Framework: 376. .NET 2.0의 유니코드 관련 문자열 비교 오류
1471정성태8/7/201331013개발 환경 구성: 193. .aspx 확장자 대신 .html 확장자를 사용하는 방법
1470정성태8/6/201327039오류 유형: 180. DISM.exe 0xc1510111 실행 오류
1469정성태8/6/201324097.NET Framework: 375. System.Net.Sockets.Socket이 Thread-safe할까? [2]파일 다운로드1
1468정성태8/6/201322244오류 유형: 179. IIS - No connection could be made because the target machine actively refused it 127.0.0.1:80
1467정성태8/5/201325696Java: 16. IE에 로드된 Java Applet의 다운로드 위치를 확인하는 방법
1466정성태7/27/201331318.NET Framework: 374. C#과 비교한 C++ STL vector 성능 [7]파일 다운로드1
1465정성태7/18/201334579기타: 33. C:\Windows\Installer 폴더의 용량 줄이기 [3]
1464정성태7/15/201322856오류 유형: 178. Visual Studio 2012 Express - ImportCardinalityMismatchException
1463정성태7/15/201323549오류 유형: 177. [DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.
1462정성태7/5/201326820VC++: 69. geek스러운 C/C++ 퀴즈 문제 [2]
1461정성태6/27/201343361.NET Framework: 373. C# 문자열의 인코딩이란?
1460정성태6/17/201325249.NET Framework: 372. PerformanceCounter - Category does not exist. [1]
1459정성태6/15/201328914Windows: 74. 한글 키가 아닌 영문 키를 기본으로 선택하는 방법 [5]
1458정성태6/13/201329687.NET Framework: 371. CAS Lock 방식이 과연 성능에 얼마나 도움이 될까요? [1]파일 다운로드1
1457정성태6/13/201325907개발 환경 구성: 192. "Probabilistic Programming and Bayesian Methods for Hackers" 예제 코드 실행 방법
1456정성태6/5/201334548.NET Framework: 370. C# - WebKit .NET 사용 [2]파일 다운로드1
1455정성태6/1/201328363.NET Framework: 369. ThreadPool.QueueUserWorkItem의 실행 지연 [4]파일 다운로드1
... 136  137  138  139  140  141  142  [143]  144  145  146  147  148  149  150  ...