gpt4 book ai didi

.net - Visual Studio 调试引用的 DLL

转载 作者:行者123 更新时间:2023-12-02 09:00:24 30 4
gpt4 key购买 nike

我有一个 ASP.NET 网站,它使用另一个 Visual Studio 解决方案编译的 DLL(具有 DLL 的原始解决方案 - .cs 文件、.csproj.sln等)作为引用。

此 DLL 访问网站时出现异常,我想调试它(DLL)。我可以这样做吗?我可以以某种方式深入了解 DLL、设置断点等吗?我听说过“附加调试器”,但我从未这样做过,更不用说使用 DLL 了。执行此操作的步骤是什么?

最佳答案

堆栈溢出问题 Debugging a third-party DLL in Visual Studio.NET? 也在问同样的事情。答案基本上是使用 .NET Reflector反编译DLL并查看代码。

但是,如果您有 DLL 的解决方案和所有源代码,那么您可以更改引用以指向其他项目而不是 DLL。然后,您可以像处理代码中的任何其他函数一样单步执行这些函数。

如果您有代码,另一种方法是运行应用程序并附加到进程。为此,您需要在 Visual Studio 中打开另一个解决方案,并将调试器附加到 ASP.NET 工作进程(aspnet_wp 或类似的东西,如果我没记错的话)。这将允许您设置断点,并在您转到网站的正确部分时触发它们。例如,当您在本地 IIS 上的 Internet Explorer 中浏览网站时,这将是 ASP 工作进程。如果您在 Visual Studio 中运行它,那么它很可能使用内置的 Web 浏览器。所以你需要附加它。

如果您也有 DLL 的 pdb 文件,可能有一种方法可以做到这一点,但我从未真正尝试过这样做。我知道,如果您有 pdb 文件,那么您可以在使用 WinDbg 等工具时获取源代码。进行调试。

关于.net - Visual Studio 调试引用的 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1671654/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com