D
DJ Miller
If I put an assembly in COM+ (and the GAC, apparently an essential part
although I can't fathom why it has to be registered in TWO centralized
catalogs, but I digress), I am unable to step through the code. Why? In
VB6 this was trivial; I could open the source code for a COM+ object, select
"Run", and whenever that object was called, it would step through the
running VB6 instance. VB.Net won't allow me to start an object without
specifying some start project, and even if I have said COM+ source code in
the same solution as a start project, when the object is called, it calls
the COM+ compiled version ignoring the source code (can't step into it,
can't set breakpoints in it). What's up with this?
I've been told I have to attach to the DLLHost process to get it to work
<insert rant about how I never had to do that with VB6 here>, but it's not
working. I start my test application and have a break right after the
component is created (so that I can get a process to attach to). I go to
Debug, Processes, and attach to the DLLHost process that corresponds to my
object (matching process IDs with what's displayed for that application in
Component Services). I have a list of options for debugging (CLR, T-SQL,
and Script -- I choose CLR). Then I hit "Step Into" as it calls a method on
that object. (I've put stops in the component, and have it throwing an
ApplicationException, to try to force an issue to kick off the debugger.
Nothing happens, except that ApplicationException gets caught by the test
app. I never see the component's code.
although I can't fathom why it has to be registered in TWO centralized
catalogs, but I digress), I am unable to step through the code. Why? In
VB6 this was trivial; I could open the source code for a COM+ object, select
"Run", and whenever that object was called, it would step through the
running VB6 instance. VB.Net won't allow me to start an object without
specifying some start project, and even if I have said COM+ source code in
the same solution as a start project, when the object is called, it calls
the COM+ compiled version ignoring the source code (can't step into it,
can't set breakpoints in it). What's up with this?
I've been told I have to attach to the DLLHost process to get it to work
<insert rant about how I never had to do that with VB6 here>, but it's not
working. I start my test application and have a break right after the
component is created (so that I can get a process to attach to). I go to
Debug, Processes, and attach to the DLLHost process that corresponds to my
object (matching process IDs with what's displayed for that application in
Component Services). I have a list of options for debugging (CLR, T-SQL,
and Script -- I choose CLR). Then I hit "Step Into" as it calls a method on
that object. (I've put stops in the component, and have it throwing an
ApplicationException, to try to force an issue to kick off the debugger.
Nothing happens, except that ApplicationException gets caught by the test
app. I never see the component's code.