我正在使用AppVerifier / WinDbg / cdb测试在IIS上运行的应用程序.基本上模式如下:当IIS启动cdb附加到进程并创建命名管道时,我使用WinDbg连接到管道.
然后我针对应用程序运行了数千个测试用例,并等到AppVerifier抛出一些东西.
问题/问题:
>在测试的持续时间(大约10小时)内,IIS重启大约一千次,每次重启WinDbg都会关闭,我将手动重新启动WinDbg.有没有办法说WinDbg在管道关闭时不要关闭,但是重试连接呢?
>我要继续坐在WinDbg前面等待AppVerifier扔东西?有没有办法说WinDbg在异常停止时发出蜂鸣声或显示弹出窗口?
谢谢.
您可以使用sxe命令(或其他sx *命令)让WinDbg在命中异常时运行命令.对于一个简单的例子,在加载模块时会打印“Hello,world:”:
sxe -c ".printf \"Hello,world: \"" ld
您可能会考虑将此与.beep命令结合使用,但这会导致语法错误.我认为这可能与.beep帮助中的说明有关,即“此命令不能在脚本文件中使用”.但是,您应该能够使用.shell做一些有用的事情.
我没有尝试过,但也许可以使用sx *命令来捕获“进程退出”事件,从而解决重新连接问题.或者你可能有一个以IIS启动的cdb实例在发生异常时通知你,以便你可以使用WinDbg连接到它?