C# 如何在VisualStudio2008中以编程方式检索已加载的项目?

C# 如何在VisualStudio2008中以编程方式检索已加载的项目?,c#,.net,visual-studio-2008,visual-studio-sdk,C#,.net,Visual Studio 2008,Visual Studio Sdk,我想创建一个小时计数器来监控我在项目上的开发时间。每当某个项目在VisualStudio2008中处于活动状态时,我希望增加时间 我能否通过编程找出VS2008中当前活动的*.csproj文件?您可以通过DTE.solution属性获取加载的解决方案,并通过DTE.ActiveDocument获取活动文档。没有真正的“活动项目”,因为您从未真正激活项目,您只打开解决方案(可以包含多个项目)和文件(恰好位于项目中) 我怀疑对于时间跟踪需求,获取当前解决方案可能就足够了。但是,如果需要明确区分解决方

我想创建一个小时计数器来监控我在项目上的开发时间。每当某个项目在VisualStudio2008中处于活动状态时,我希望增加时间


我能否通过编程找出VS2008中当前活动的*.csproj文件?

您可以通过
DTE.solution
属性获取加载的解决方案,并通过
DTE.ActiveDocument
获取活动文档。没有真正的“活动项目”,因为您从未真正激活项目,您只打开解决方案(可以包含多个项目)和文件(恰好位于项目中)


我怀疑对于时间跟踪需求,获取当前解决方案可能就足够了。但是,如果需要明确区分解决方案中的项目,可以在开始翻转手腕时使用
DTE.ActiveDocument.ProjectItem.ContainingProject

来完成此操作。注意手腕上机械装置的时间。完成后,重复。算算差异。撇开斯奈德不谈,我会对你的项目感兴趣,如果你知道怎么做的话!:)