【问题标题】:Attach/Debug Plugin DLL That Has Been Dynamically Loaded By A Third Party Application?附加/调试由第三方应用程序动态加载的插件 DLL?
【发布时间】:2015-10-01 19:44:40
【问题描述】:

我正在为第 3 方应用程序编写插件(我只有 .EXE 和 dot net .DLL)。

我编写插件的方法是创建一个 Visual Studio C# 库项目,添加来自 3rd 方应用程序的 .EXE 和 .DLL 文件作为引用,然后扩展定义的 IPlugin 类.DLL。

构建项目后,我将插件的 .DLL 复制到第 3 方应用程序的插件目录,然后启动应用程序。从那时起,我真的不知道那时会发生什么。我猜应用程序通过扫描 Plugins 文件夹动态加载我的 DLL,然后加载它(所有这些我一无所知的东西)。

此时应用程序作为 .EXE 运行。

有没有一种方法可以使用 Visual Studio 附加到 .EXE(进程),然后调试从该进程运行的我的 DLL 代码?

我知道我的代码在某处“在那里”,但由于它不是 .EXE,我不知道如何附加到它。 谢谢,

一月

【问题讨论】:

    标签: c# dynamic dll plugins attach-to-process


    【解决方案1】:

    这是一个老问题,所以您可能已经有了答案。不过,如果它有帮助:

    您没有提到哪个版本的 Visual Studio。我一直在使用 VS 2010 中的 C++ DLL 来满足您的要求。打开调试配置的属性页。在“调试”下将“命令”设置为主机 EXE(包括路径)。

    您还应该将输出目录(General->Output Directory)设置为您主机的插件文件夹,以便在您点击运行时加载可调试版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-02
      • 2011-08-22
      相关资源
      最近更新 更多