我正在开发一个类库。该库将被另一个程序使用,这是一个没有源代码的.exe。库文件位置作为参数传递给此exe,例如,通过运行:prog.exe lib.dll
我想使用这个.exe调试库(使用诸如断点等调试工具)。如何使用Visual C#来完成此操作?
我找到了一种可行的方法,那就是创建一个执行prog.exe lib.dll的单行程序。当然还有更好的方法?
发布于 2010-10-06 16:25:19
在项目的调试选项中,选择“启动外部程序”并输入exe的路径。在启动调试时,VS将启动exe,作为调试器附加到它。
当您的库被加载时,代码上的任何断点都将被激活。
一个警告:使用外部程序确保它正在加载您正在构建的dll,如果它加载的是与源代码不匹配的不同版本,事情可能(充其量)是奇怪的。
发布于 2010-10-06 16:21:24
如果您已经有一个外部程序使用库(我假设它也是一个.net应用程序),则可以启动该程序并将调试器附加到该进程(菜单中的Debug -> attach to process )。然后,您将能够在类库代码中设置断点并对其进行调试。确保exe使用的dll和pdb文件与您的代码(最新版本)同步。
发布于 2011-12-09 02:26:49
https://stackoverflow.com/questions/3870570
复制相似问题