c0000005 exception in ext. analyze debugger extension - windows

I am starting the service of our companies product and w3wp.exe crashes at the same time.
I have a system crash dump. When I try to analyze it in Windbg, I get the following error:
c0000005 Exception in ext.analyze debugger extension.
PC: 00000000`08867875 VA: 00000000`00000000 R/W: 0 Parameter: 00000000`00000000

it is an access violation error in ext debugger extension
if you are running a latest version of windbg try downloading an older version of windbg
that should solve the issue
the latest windbg version as well as insider preview versions do not run correctly in os like windows 7 and spit out various errors including dependency erors
these versions of windbg are probably tested only on the bleeding edge of the day like windows rs3 redstone wtc and aren't backward compatible
Microsoft (R) Windows Debugger Version 10.0.17061.1000 X86
Copyright (c) Microsoft Corporation. All rights reserved.
CommandLine: calc
The call to LoadLibrary(ext) failed, Win32 error 0n127 <<<<<<<<<<<<
"The specified procedure could not be found."
Please check your debugger configuration and/or network access.

Related

DCompositionCreateDevice2: E_INVALIDARG One or more arguments are invalid

Having an unusual problem running Win32C++ source codes with the function DCompositionCreateDevice2, which is compiled with VS 2015.
The source codes compile without any error but display the above runtime error. Recompiling and running the same source codes with VS 2019, there is no runtime error.
The test sample codes are Windows SDK samples listed below:
TouchInputDirectManipulation
DCompV2BackfaceandD2DBatching
Any idea what could be the source of this problem? I am working on WTL open source project, and do not want to restrict the build environment to VS 2019.
This is actually an unusual issue... What happens is Microsoft has seriously messed up dcomp.lib between the Windows 8.1 SDK and the Windows 10 SDK.
Here is what you see if you dump the Windows 8.1 SDK dcomp.lib exports:
C:\>dumpbin "C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64\dcomp.lib" /exports
Microsoft (R) COFF/PE Dumper Version 14.28.29914.0
Copyright (C) Microsoft Corporation. All rights reserved.
Exports
ordinal name
DCompositionCreateDevice
1017 DCompositionCreateDevice2
DCompositionCreateSurfaceHandle
And here is what you see if you dump the Windows 10 SDK dcomp.lib exports:
C:\>dumpbin "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x64\dcomp.lib" /exports
Microsoft (R) COFF/PE Dumper Version 14.28.29914.0
Copyright (C) Microsoft Corporation. All rights reserved.
Exports
ordinal name
DCompositionAttachMouseDragToHwnd
DCompositionAttachMouseWheelToHwnd
DCompositionCreateDevice
DCompositionCreateDevice2
DCompositionCreateDevice3
DCompositionCreateSurfaceHandle
As you can see the DCompositionCreateDevice2 was defined with ordinal 1017 initially. When you build your program using the Windows 8.1 SDK (which is how theses samples are currently defined), you get that using dumpbin:
C:\>dumpbin c:\mypath\TouchInputDirectManipulation\cpp\x64\Debug\DirectManipulationSample.exe /imports
Microsoft (R) COFF/PE Dumper Version 14.28.29914.0
Copyright (C) Microsoft Corporation. All rights reserved.
Section contains the following imports:
dcomp.dll
140054570 Import Address Table
140054E98 Import Name Table
0 time date stamp
0 Index of first forwarder reference
Ordinal 1017
So, your .exe is linked to ordinal 1017, not to exported name DCompositionCreateDevice2.
The problem is, with Windows 10 (I think you're running on Windows 10), dcomp ordinal 1017 is not DCompositionCreateDevice2 but DCompositionAttachMouseDragToHwnd! This can be confirmed if you debug your program, you land into that function that doesn't like what you send to it and reports E_INVALIDARG.
So the solution is to change the SDK if you target Windows 10:
Or simply use GetProcAddress("DCompositionCreateDevice2") etc. to dcomp.dll to make sure you get the good one.
This should be reported to Microsoft I guess...

dbghelp.dll has a version mismatch with the debugger

I have been getting the following error while trying to open the crash dump file in the WinDbg....
I am using 64bit version and having windows 7 OS.
versionof the WinDbg is 6.11
Error:
"dbghelp.dll has a version mismatch with the debugger."
Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD 64
Copyright (C) Microsoft Corporation. All rights reserved.
It says about the dbgeng and dbghelp, but in the message I see both versions are same.
And another popup comes on top of these error message which says
Failure when opeining dump file "file path" , HRESULT 0x80004005
It may be corrupt or in a format not understood by the debugger.
Unspecified error.
Any help or suggestion would be helpful here.
Thanks

Installing an executable file as a Windows service

I have packaged a .exe file which when executed will execute a .bat file. I need to install this .exe file as a Windows service.
I have used Sc and InstallUtil.exe to do this.
I used SC and installed this .exe file as windows service, But When i try to start the service it throws me Error 1053: Service did not respond to start in timely fashion.
When i tried to install using installutil.exe, I am unable to install, it throws error
C:\Windows\Microsoft.NET\Framework64\v2.0.50727>InstallUtil.exe c:\Meiyappan\code-apr2\datadirector\bin\agent.exe
Microsoft (R) .NET Framework Installation utility Version 2.0.50727.5420
Copyright (c) Microsoft Corporation. All rights reserved.
Exception occurred while initializing the installation:
System.BadImageFormatException: Could not load file or assembly 'file:///c:\Meiyappan\code-apr2\datadirector\bin\agent.e
xe' or one of its dependencies. The module was expected to contain an assembly manifest..
I could find some other alternatives like Firedeamon pro and srvany.exe, But my concern is would it be a generic across all machine.
I would like to find a generic solution for this. Any help would be greatly appreciated.

No data from desktop heap monitor (dheapmon.exe) on WinXP

Has anyone seen this error? I'm able to install and load the desktop heap monitor but I can't get any data from it:
C:\kktools\dheapmon8.1\x86>"c:\Program Files\Debugging Tools for Windows (x86)\symchk.exe" c:\windows\system32\win32k.sys
C:\kktools\dheapmon8.1\x86>dheapinst.exe -y c:\symbols\
dheapinst - Desktop Heap Monitor installed successfully
C:\kktools\dheapmon8.1\x86>dheapmon.exe -l
Desktop Heap Information Monitor Tool (Version 8.1.2925.0)
Copyright (c) Microsoft Corporation. All rights reserved.
Dheapmon - Driver loaded successfully
C:\kktools\dheapmon8.1\x86>dheapmon.exe
Desktop Heap Information Monitor Tool (Version 8.1.2925.0)
Copyright (c) Microsoft Corporation. All rights reserved.
Dheapmon - Could not detect the required kernel data. Prepare the appropriate symbol file and reinstall dheapmon.
After running the dheapinst.exe program, the Desktop Heap Monitor is installed into "%SystemRoot%\system32\kktools". You must run the tool from there.

boost for windows, first time use

i just downloaded boost 1_45_0 for windows. i have vc++6 installed on my windows 7 64bit pc. in the windows introduction, i'm told to try to compile a small lambda program.
i placed boost in the root of c:, i have c:\boost\boost_1_45_0. i added "c:\boost\boost_1_45_0" to my "include" environment variable in the windows advanced system settings
what else do i need to do before i c
when i try to compile at the command prompt, i get the following:
C:\test\boost>cl /EHsc /I c:\boost\boost_1_45_0 boost.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
boost.cpp
c:\boost\boost_1_45_0\boost/config/suffix.hpp(596) : error C2039: 'typeinfo' : i
s not a member of '`global namespace''
c:\boost\boost_1_45_0\boost/config/suffix.hpp(596) : error C2873: 'typeinfo' : s
ymbol cannot be used in a using-declaration
c:\boost\boost_1_45_0\boost/mpl/aux_/yes_no.hpp(56) : fatal error C1506: unrecov
erable block scoping error
You are using a compiler that is now 12 years old, and boost doesn't support it. You'll need VS.Net 2003 at a minimum, but I'd strongly recommend VS2008 or VS2010. There is a free 'express' version of VS2010. Unless you have a very specific need to use VC++6 I would ditch it now.

Resources