Visual Studio 可扩展性 - 卸载当前项目
Visual Studio Extensibility - Unload current project
我需要制作一个 Visual Studio Extension/Plugin,其中涉及 unloading/reloading 个解决方案中的所有项目。
使用 Visual Studio 可扩展性 SDK (C#),我已经获得了项目列表 (EnvDTE.Project)。可悲的是,我找不到任何关于然后操作项目的像样的文档。
我看过一些与 DTE2.ExecuteCommand 有关的帖子,但后来找不到可用命令的列表以及如何使用它们。有人能指出我正确的方向吗?
您可以使用具有加载和卸载项目方法的 IVsSolutionInterface。试试这个将项目 guid 传递给构造函数的扩展方法。
private void UnloadProject(IVsSolution4 solution, Guid projectGuid)
{
int result;
result = solution.UnloadProject(ref projectGuid, (uint)_VSProjectUnloadStatus.UNLOADSTATUS_UnloadedByUser);
ErrorHandler.ThrowOnFailure(result);
}
我需要制作一个 Visual Studio Extension/Plugin,其中涉及 unloading/reloading 个解决方案中的所有项目。
使用 Visual Studio 可扩展性 SDK (C#),我已经获得了项目列表 (EnvDTE.Project)。可悲的是,我找不到任何关于然后操作项目的像样的文档。
我看过一些与 DTE2.ExecuteCommand 有关的帖子,但后来找不到可用命令的列表以及如何使用它们。有人能指出我正确的方向吗?
您可以使用具有加载和卸载项目方法的 IVsSolutionInterface。试试这个将项目 guid 传递给构造函数的扩展方法。
private void UnloadProject(IVsSolution4 solution, Guid projectGuid)
{
int result;
result = solution.UnloadProject(ref projectGuid, (uint)_VSProjectUnloadStatus.UNLOADSTATUS_UnloadedByUser);
ErrorHandler.ThrowOnFailure(result);
}