在没有主应用程序visual studio项目的情况下调试MEF

问题描述:

我是creatinig某些程序的托管扩展性框架扩展。该程序使用我创建的dll文件。我没有该程序的视觉工作室项目,但我有该程序。我可以使用该程序运行这些扩展,但无法正确调试它们。 是否可以使用visual studio调试器来调试我的代码?在没有主应用程序visual studio项目的情况下调试MEF

我找到了解决方案,谢谢!

我找到了解决方案,我自己,但感谢sugestions。 我可以使用该应用程序为其创建此扩展,类库文件项目。 我按项目上的属性,然后选择调试选项卡,并设置“启动外部程序”设置它主应用程序。然后我按f5,该应用程序启动,当它使用我的扩展我可以使用Visual Studio调试器进行调试。我忘了说我正在用C#创建它。

http://msdn.microsoft.com/en-us/library/68c8335t.aspx

我相信你在找什么可以在这里找到: http://msdn.microsoft.com/en-us/library/0bxe8ytt.aspx

根据这篇文章,你可以在你的解决方案(为DLL)使用“添加现有项目”对话框中添加可执行文件你没有解决方案。由于您使用的是MEF,因此可能会有点棘手,您可能希望创建一个用于调试的新解决方案。但是,这似乎是处理您的情况的一般方法。既然你有你的DLL的源代码,我相信它应该允许你至少完整地遍历你的代码。

注意:您需要确保在开发环境中安装了Visual C++。

如果您试图调试汇编代码,那么您可以使用@BiggsTRC讨论的技术,如果您只是想确定为什么零件未加载,则可以考虑查看Composition Analysis Tool (mefx)。这是一个命令行工具,用于分析一组部件并找出组合过程中可能发生的故障。