小编Ram*_*san的帖子

如何使用VS Package在解决方案资源管理器中获取所选项目的项目类型Guid

我已经创建了简单的VS包,用于在解决方案资源管理器的上下文菜单中添加新项目.在那里我需要检查选定项目的项目类型GUID.我怎么能得到这个.

例如,One Solution包含三种不同类型的项目,如WindowFormsApplication,MVC Projects,WebApplication.选择MVC项目时,我们需要获取该ProjectType GUID.

我在Package.cs中尝试了以下内容,

IVsMonitorSelection monitorSelection = (IVsMonitorSelection)Package.GetGlobalService(typeof(SVsShellMonitorSelection));

monitorSelection.GetCurrentSelection(out hierarchyPtr, out projectItemId, out mis, out selectionContainerPtr);

IVsHierarchy hierarchy = Marshal.GetTypedObjectForIUnknown(hierarchyPtr, typeof(IVsHierarchy)) as IVsHierarchy;

if (hierarchy != null)
{
     object prjItemObject;
     hierarchy.GetProperty(projectItemId, (int)__VSHPROPID.VSHPROPID_ExtObject, out    prjItemObject);
     string projectTypeGuid;
      Project prjItem = prjItemObject as Project;
      projectTypeGuid = prjItem.Kind;
}
Run Code Online (Sandbox Code Playgroud)

在那里,我获得所有选定项目的GUID为"FAE04EC0-301F-11D3-BF4B-00C04F79EFBC".

有人可以帮帮我吗?

vspackage vs-extensibility

2
推荐指数
1
解决办法
2339
查看次数

如何在C#中获取不同国家的当前时间

如何通过使用以下任何参数获取C#中不同国家/地区的当前时间:1.国家名称2.国家/地区的时区

这适用于Windows / WPF应用程序,不像Web。有人可以回答吗?提前致谢。

windows wpf timezone c#-4.0

1
推荐指数
1
解决办法
2757
查看次数

标签 统计

c#-4.0 ×1

timezone ×1

vs-extensibility ×1

vspackage ×1

windows ×1

wpf ×1