SUMMARY
This step-by-step article describes how to debug
server-side XML Web services that are implemented by using Visual C++
6.0.
back to the top
Requirements
The following list outlines the recommended hardware, software,
network infrastructure, and service packs that are required:
- Internet Information Services (IIS) version 6.0
- SOAP Toolkit version 2.0 Service Pack 2
back to the top
Debug the Visual C++ XML Web Service
Because you can attach to a running process with Visual C++, you
just have to connect to the process where the debug version of your
dynamic-link library (DLL) is running, and you can then set breakpoints and
step through the code.
- Identify the process that you want to attach to. If the
virtual directory that the XML Web service resides in is configured for low
application security, it runs in the Inetinfo.exe process. Otherwise, it runs
in a process named Dllhost.exe. Multiple instances of this process may be
running on your computer.
- Find the instance of Dllhost.exe that has been running for
the least time. It is the instance that is closest to the top of the Attach to Process list.NOTE: If you cannot easily identify the Dllhost.exe instance, use
Tlist.exe, which is included on the Microsoft Windows 2000 CD in the
Support\Tools directory. At the command line, type TLIST -m
mydll.dll to get the Process ID of the process or processes that
currently have your DLL loaded into memory.
- Attach to a process. To do this, in the Visual C++
environment, click Start Debug on the Build menu, and then click Attach to Process.
- In the Attach to Process dialog box, select the process that you want to attach to. Make
sure that you have selected the Show System Processes check box.
back to the top
Troubleshooting
The process list may not be filled in because of a bug in
Microsoft Visual Studio 6.0 Service Pack 3 and earlier. If no processes are
listed in the dialog box, do one of the following:
- Obtain Visual Studio Service Pack 4 or later.
- Make sure that Visual C++ is your default debugger. In Task
Manager, right-click the process that you want to debug, and then click Debug.
back to the top