|
| Source Code Debugging |
 |
29 Jan 2008 14:37:36 -0700 |
I wrote a little test program to consume my first web service (Sharepoint)
through Delphi for Win32. With all the debug options turned on I expected
to be able to debug through the method calls. But I find myself dropped
into the middle of "RIO.PAS" and from then until back into my own code
the
execution pointer doesn't match what the source code window shows.
Has anyone else experienced this? Is there a resolution?
Thanks.
|
| Post Reply
|
| Re: Source Code Debugging |
 |
Tue, 29 Jan 2008 19:17:18 -080 |
Hello,
What version of Delphi are you using? I suspect you might have updates or an
incorrect/mismatched version of RIO.PAS. You should be able to step through
the SOAP runtime. There's a little magic that happens in RIO.pas (where we
manufacture fake vtables) but soon after you'll be in OpToSOAPDomConv.pas
where most of the serialization logic resides.
Make sure you're picking the correct RIO.PAS that you linked with. Or give
the IDE/DCC32 the path of your RIO.PAS to ensure that it uses it rather than
another .dcu already in the path.
Let me know if the above does not help!.
Cheers,
Bruneau.
|
| Post Reply
|
| Re: Source Code Debugging |
 |
30 Jan 2008 14:59:55 -0700 |
Delphi version is reported as 11.0.2902.10471.
Stepping through a method call on the web service puts me here (see EP-->)
procedure TRIO.GenericStub;
asm
POP EAX { Return address in runtime generated stub }
POP EDX { Is there a pointer to return structure on stack and
which CC is used? }
CMP EDX, 2
JZ @@RETONSTACKRL
CMP EDX, 1
EP--> JZ @@RETONSTACKLR
POP EDX { Method # pushed by stub }
PUSH EAX { Push back return address }
LEA ECX, [ESP+12] { Calc stack pointer to start of params }
MOV EAX, [ESP+8] { Calc interface instance ptr }
JMP @@CONT
@@RETONSTACKLR:
...
Using single step from here I find myself stepping over comments lower in
Rio.pas.
Rio.pas has the following properties:
26-Aug-2007 18:03 33,256
While I guess this isn't a big deal I'm still puzzled by it. Debugging
through other parts of the VCL for example I've yet to see this.
|
| Post Reply
|
|
|
|
|
|
|
|
|
|