Hello all
My Visual Studio 2008 running on Vista x64 cannot attach to a process
anymore.
When trying to attach to a process via the Gui (crash is right before the
Process selection is even shown) or via a macro (Dim process As
EnvDTE.Process[...]process.Attach()] devenv crashes with an Data Execution
Prevention error like:
Problem signature:
Problem Event Name: BEX
Application Name: devenv.exe
Application Version: 9.0.30428.1
Application Timestamp: 4815597f
Fault Module Name: unknown
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 00000000
Exception Offset: 00730025
Exception Code: c0000005
Exception Data: 00000008
OS Version: 6.0.6001.2.1.0.256.16
Locale ID: 2057
I tried having a look at the crash/process dump in windbg, but my
debugging skills are a bit limited and i couldn't find anything obvious
(to me).
Has anyone experienced similar problems or any suggestions as to why this
is happening?
Thanks!
Ben

Signature
bschwehn.de
Ben Schwehn - 24 Jul 2008 02:27 GMT
as a followup:
When i provoke the crash with windbg attached, this is what I get in
WinDbg, but I'm not sure how to best continue debugging this...
[...]
ModLoad: 00000000`66f50000 00000000`66fec000 C:\Program Files (x86)
\Microsoft Visual Studio 9.0\Common7\Packages\Debugger\cpde.dll
(1210.358): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
ffffffff`ff8b0000 ?? ???
0:028:x86> !analyze -v
*******************************************************************************
*
*
* Exception
Analysis *
*
*
*******************************************************************************
***** OS symbols are WRONG. Please fix symbols to do analysis.
***** OS symbols are WRONG. Please fix symbols to do analysis.
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: ntdll!_PEB ***
*** ***
*************************************************************************
FAULTING_IP:
+ff8b0000
00000000`ff8b0000 ?? ???
EXCEPTION_RECORD: ffffffffffffffff -- (.exr ffffffffffffffff)
ExceptionAddress: 00000000ff8b0000
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000008
Parameter[1]: 00000000ff8b0000
Attempt to execute non-executable address 00000000ff8b0000
FAULTING_THREAD: 0000000000000358
PROCESS_NAME: devenv.exe
MODULE_NAME: cpde
FAULTING_MODULE: 0000000076db0000 ntdll
DEBUG_FLR_IMAGE_TIMESTAMP: 48155b0f
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced
memory at 0x%08lx. The memory could not be %s.
WRITE_ADDRESS: 00000000ff8b0000
BUGCHECK_STR: ACCESS_VIOLATION
IP_ON_HEAP: ffffffffff8b0000
The fault address in not in any loaded module, please check your build's
rebase
log at <releasedir>\bin\build_logs\timebuild\ntrebase.log for module which
may
contain the address if it were loaded.
DEFAULT_BUCKET_ID: WRONG_SYMBOLS
LAST_CONTROL_TRANSFER: from 0000000066f73eb2 to ffffffffff8b0000
STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
1254f160 66f73eb2 0a3d8c90 6e3d2668 1254f1b0 0xff8b0000
1254f194 6e3d25fa 09376f10 6e3d2668 1254f1b0 cpde!
StaticCPDE::DllGetClassObject+0x142
1254f1b4 6e3d2691 09000414 09376f10 00000000 coloader!VsLoad+0x60
1254f1d0 75ac43b6 07bf0d40 09000414 09376f10 coloader!CVsBothLoader::Load
+0x19
1254f1fc 75b50cc6 6e3d2678 1254f3e0 00000006 RPCRT4!Invoke+0x2a
1254f600 75b51968 095e1c68 096aba20 0926a480 RPCRT4!NdrStubCall2+0x24a
1254f648 768527f7 095e1c68 0926a480 096aba20 RPCRT4!CStdStubBuffer_Invoke
+0x3c
1254f66c 75789759 095e1c68 0926a480 096aba20 OLEAUT32!
CUnivStubWrapper::Invoke+0xc7
1254f6b4 757896f3 0926a480 09074e64 096a7da0 ole32!
WdtpInterfacePointer_UserUnmarshal+0x1dac
1254f700 756a9d67 0926a480 09616520 096a49b0 ole32!
WdtpInterfacePointer_UserUnmarshal+0x1d46
1254f7dc 756a9c5c 096aba20 00000000 096a49b0 ole32!CoRegisterSurrogateEx
+0xf27b
1254f7f8 757887a4 0926a480 00000001 096a49b0 ole32!CoRegisterSurrogateEx
+0xf170
1254f828 75789498 d0908070 096aba20 096a49b0 ole32!
WdtpInterfacePointer_UserUnmarshal+0xdf7
1254f904 75789aa2 0926a428 096a9ad8 00000000 ole32!
WdtpInterfacePointer_UserUnmarshal+0x1aeb
1254f92c 756aa8ea 0926a428 769611e1 09376d80 ole32!
WdtpInterfacePointer_UserUnmarshal+0x20f5
1254f940 7569e086 0926a428 00000000 09376d80 ole32!DcomChannelSetHResult
+0x945
1254f95c 7569e0e2 00000000 00000000 1254f978 ole32!CoRegisterSurrogateEx
+0x359a
1254f96c 769de3f3 09376d80 1254f9b8 76fccfed ole32!CoRegisterSurrogateEx
+0x35f6
1254f978 76fccfed 09376d80 651a6a0f 00000000 KERNEL32!BaseThreadInitThunk
+0xe
1254f9b8 76fcd1ff 7569e0cc 09376d80 00000000 ntdll_76f50000!
__RtlUserThreadStart+0x23
1254f9d0 00000000 7569e0cc 09376d80 00000000 ntdll_76f50000!
_RtlUserThreadStart+0x1b
PRIMARY_PROBLEM_CLASS: SOFTWARE_NX_FAULT
FOLLOWUP_IP:
cpde!StaticCPDE::DllGetClassObject+142
00000000`66f73eb2 e819d5fdff call cpde!_EH_epilog3 (66f513d0)
SYMBOL_STACK_INDEX: 1
SYMBOL_NAME: cpde!StaticCPDE::DllGetClassObject+142
FOLLOWUP_NAME: MachineOwner
IMAGE_NAME: cpde.dll
STACK_COMMAND: ~28s ; kb
BUCKET_ID: WRONG_SYMBOLS
Followup: MachineOwner
---------
Thanks for any suggestions!

Signature
Ben Schwehn
bschwehn.de