kenlistian

勤学多思

  IT博客 :: 首页 :: 新随笔 ::  :: 聚合  :: 管理 ::
  412 随笔 :: 0 文章 :: 23 评论 :: 0 Trackbacks

如何在cbuilder中调试soap 的web server,特别是那些写到iis中的dll,就是以isapi,nsapi编写的服务程序。在http://dn.codegear.com/article/23024有说明。

下面简要的用中文描述一下。

1.打开run|parameters ,填入iis的执行文件:”c:\windows\system32\inetsrv\inetinfo.exe“,输入参数-e w3svc。图如下:

2.关闭iis中的管理网站,连同smtp,ftp全停掉,

  同时在iis中点开网站虚拟目录属性,把 程序保护 下拉栏中选择 “low”。

3.打开管理工具的服务,停掉服务列表中的iis 服务。

4.打开管理工具的”本地安全策略“,在”用户权利指派“中,选择以操作系统方式,添加当前用户名。如图:

  

5.修改iis在注册表中的服务项,添加注册表如下的内容:(粘贴出新建一个reg文件后双击处理)

注意:iis要在自己的系统文件夹下,如果不是windows则改成自己的机子一样路径。

regedit4

[hkey_classes_root\appid\{61738644-f196-11d0-9953-00c04fd919c1}]
"localservice"=-
"runas"=-
[hkey_classes_root\appid\{9f0bd3a0-ec01-11d0-a6a0-00a0c922e752}]
"localservice"=-
"runas"=-

[hkey_classes_root\appid\{a9e69610-b80d-11d0-b9b9-00a0c922e750}]
"localservice"=-
"runas"="interactive user"

[hkey_classes_root\clsid\{61738644-f196-11d0-9953-00c04fd919c1}]
"localservice"=-

[hkey_classes_root\clsid\{9f0bd3a0-ec01-11d0-a6a0-00a0c922e752}]
"localservice"=-

[hkey_classes_root\clsid\{a9e69610-b80d-11d0-b9b9-00a0c922e750}]
"localservice"=-

[hkey_classes_root\clsid\{61738644-f196-11d0-9953-00c04fd919c1}\localserver32]
""="c:\\windows\\system32\\inetsrv\\inetinfo.exe -e w3svc"

[hkey_classes_root\clsid\{9f0bd3a0-ec01-11d0-a6a0-00a0c922e752}\localserver32]
""="c:\\windows\\system32\\inetsrv\\inetinfo.exe -e w3svc"

[hkey_classes_root\clsid\{a9e69610-b80d-11d0-b9b9-00a0c922e750}\localserver32]
""="c:\\windows\\system32\\inetsrv\\inetinfo.exe -e w3svc"

[hkey_local_machine\system\currentcontrolset\services\iisadmin]
"start"=dword:3

[hkey_local_machine\system\currentcontrolset\services\msdtc]
"start"=dword:3

[hkey_local_machine\system\currentcontrolset\services\w3svc]
"start"=dword:3

[hkey_classes_root\appid\{61738644-f196-11d0-9953-00c04fd919c1}]
"localservice"="iisadmin"
"runas"=-

[hkey_classes_root\appid\{9f0bd3a0-ec01-11d0-a6a0-00a0c922e752}]
"localservice"="iisadmin"
"runas"=-

[hkey_classes_root\appid\{a9e69610-b80d-11d0-b9b9-00a0c922e750}]
"localservice"="iisadmin"
"runas"=-

[hkey_classes_root\clsid\{61738644-f196-11d0-9953-00c04fd919c1}]
"localservice"="iisadmin"

[hkey_classes_root\clsid\{9f0bd3a0-ec01-11d0-a6a0-00a0c922e752}]
"localservice"="iisadmin"

[hkey_classes_root\clsid\{a9e69610-b80d-11d0-b9b9-00a0c922e750}]
"localservice"="iisadmin"

6.编写soap web server并把该程序生成的路径放在iis中的虚拟目录中,在程序中

 设置断点,run!

7.到ie中输入http:\\127.0.0.1\test_websoap\xxx.dll,在ide中就被激活运行。

如图:

注意:

  在调试中有要发现程序已在运行的话,则打开任务管理器中杀掉dllhost.exe,

  关掉所有的dllhost。exe。如果还关不完(关了又出来了),则看看iis中是否启动了,把它再停掉。

 

 

 

 

 

 

 

 

 

posted on 2007-04-06 16:31 kenlistian 阅读(1019) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。