I am getting this error: Unhandled exception at 0x76fab89c (shell32.dll) in explorer.exe: 0xC0000005: Access violation reading location 0x00000000. Which I have seen many times in my life, it usually means that my code is trying to access a NULL pointer. However here is the call stack: shell32.dll!CShellItem::_GetPropertyStoreWorker() + 0x44 bytes shell32.dll!CShellItem::GetPropertyStoreForKeys() + 0x38 bytes thumbcache.dll!CThumbnailCache::_GetMonikerDataFromShellItem() + 0x8b bytes thumbcache.dll!CThumbnailCache::GetThumbnail() + 0x11c bytes shell32.dll!CSetOperationCallback::_LookupThumbnail() + 0x8d bytes shell32.dll!CSetOperationCallback::_PrefetchCachedThumbnails() + 0xb6 bytes shell32.dll!CSetOperationCallback::OnNextBatch() + 0x4f bytes shell32.dll!CEnumTask::_PushBatchToView() + 0x68 bytes shell32.dll!CEnumTask::_IncrFillEnumToView() + 0x2ca5 bytes shell32.dll!CEnumTask::_IncrEnumFolder() + 0x8da5a bytes shell32.dll!CEnumTask::InternalResumeRT() + 0xa6 bytes shell32.dll!CRunnableTask::Run() + 0x92 bytes browseui.dll!CShellTask::TT_Run() + 0x2d bytes browseui.dll!CShellTaskThread::ThreadProc() + 0x87 bytes browseui.dll!CShellTaskThread::s_ThreadProc() + 0x21 bytes shlwapi.dll!_ExecuteWorkItemThreadProc@4() + 0xe bytes ntdll.dll!_RtlpTpWorkCallback@8() + 0xaa bytes ntdll.dll!_TppWorkerThread@4() + 0x274 bytes kernel32.dll!@BaseThreadInitThunk@12() + 0x12 bytes ntdll.dll!__RtlUserThreadStart@8() + 0x27 bytes Interestingly enough my code is not in the call stack. Since I am writing a namespace extension that is using DefView, I must have passed something wrong to the shell. However what is it? How do I tell? This namespace extension works correctly in Windows XP, this is a new error in Vista. -Wayne {6230289B-5BEE-409e-932A-2F01FA407A92}
Hello Wayne, This a quick note to let you know that I am performing research on this issue and will get back to you as soon as possible. Shell team members and I are holding a discussion on it. I appreciate your patience. Regards, Jialiang Ge (jialge@online.microsoft.com, remove 'online.') Microsoft Online Community Support ================================================= Delighting our customers is our #1 priority. We welcome your comments and suggestions about how we can improve the support we provide to you. Please feel free to let my manager know what you think of the level of service provided. You can send feedback directly to my manager at: msdnmg@microsoft.com. This posting is provided "AS IS" with no warranties, and confers no rights. =================================================
Hello Wayne, We think it's possibly due to the query of IPropertyStoreFactory interface with the call IShellFolder::BindToObject. BindToObject returns S_OK but set the output pointer to NULL. This is a hypothesis based on the developers' experience. Without a dump file or remote live debugging, it's very difficult for us to identify the exact reason for it. Looking at the nature of this issue, it would require intensive troubleshooting which would be done quickly and effectively with direct assistance from a Microsoft Support Professional through Microsoft Product Support Services. You can contact Microsoft Product Support directly to discuss additional support options you may have available, by contacting us at 1-(800)936-5800 or by choosing one of the options listed at http://support.microsoft.com/common/international.aspx?rdpath=fh;en-us;cntac tms. Regards, Jialiang Ge (jialge@online.microsoft.com, remove 'online.') Microsoft Online Community Support ================================================= Delighting our customers is our #1 priority. We welcome your comments and suggestions about how we can improve the support we provide to you. Please feel free to let my manager know what you think of the level of service provided. You can send feedback directly to my manager at: msdnmg@microsoft.com. This posting is provided "AS IS" with no warranties, and confers no rights. =================================================
Thanks I will check this out. Can you give me instructions for getting a Dr. Watson .dmp file when explorer.exe crashes? In Windows XP, you could get the .dmp before you confirmed sending the issue to Microsoft, however in Vista, it just starts the sending dialog immediatly. -Wayne
This solved the problem: "IShellFolder::BindToObject. BindToObject returns S_OK but set the output pointer to NULL. " Thanks, Wayne
Hello Wayne, Glad to see we have found out the problem. For you question about how to get a Dr. Watson .dmp file in Vista when explorer.exe crashes, Dr.Watson has been replaced in Windows Vista with Problem Reports and Solutions. See: What happened to Dr. Watson? http://windowshelp.microsoft.com/Windows/en-US/Help/6c8431c2-8cac-4ff5-b210- 4dceb3fd88331033.mspx/ Some community members find some workarounds to use Dr.Watson on Vista, however, they are not supported by Microsoft, so I cannot assure you they work: http://www.dumpanalysis.org/blog/index.php/2007/05/19/resurrecting-dr-watson -on-vista/ The recommended way to catch the dump file in Vista is to use adplus KB: How to create a user-mode process dump file in Windows Vista http://support.microsoft.com/kb/931673 Let me know If you have any other questions or concerns. Regards, Jialiang Ge (jialge@online.microsoft.com, remove 'online.') Microsoft Online Community Support ================================================= Delighting our customers is our #1 priority. We welcome your comments and suggestions about how we can improve the support we provide to you. Please feel free to let my manager know what you think of the level of service provided. You can send feedback directly to my manager at: msdnmg@microsoft.com. This posting is provided "AS IS" with no warranties, and confers no rights. =================================================