问题标签 [envdte]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3012 浏览

.net - 您可以使用 EnvDTE 执行 RunCustomTool 作为预构建事件吗?

我正在使用 T4MVC,我不能使用预构建事件来运行 TextTransform.exe,因为它依赖于 EnvDTE,并且必须以 Visual Studio 作为主机运行。

如果我曾经运行过自定义工具,它会很好地工作,因为它在执行时将自己标记为脏(AlwaysKeepTemplateDirty = true),但是当您打开解决方案时,它不会在构建时运行,所以我想知道您是否可以通过 EnvDTE 运行 t4 作为预建事件?

0 投票
1 回答
782 浏览

envdte - OnBuildBegin 不会在 Visual Studio 宏中触发,直到我从宏资源管理器中运行它

我有以下 Visual Studio 宏:

我可以从宏资源管理器运行它,它运行良好,在我从宏资源管理器双击它并运行后,事件处理程序在构建时被调用。

但是,如果我没有手动运行宏,则永远不会调用事件处理程序/永远不会触发事件。

我在这里想念什么?

0 投票
1 回答
987 浏览

visual-studio-2010 - 以编程方式添加 WCF 服务项目项

信息: C#,Visual Studio 2010 RC

如何通过代码将 WCF Web 服务项目项添加到我的项目中?

我可以添加一个代码类文件没有问题:

但如果我尝试:

我得到一个无法找到的异常

该系统找不到指定的文件。(来自 HRESULT 的异常:0x80070002)

我从以下位置获得了 WebWcfService 名称:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Web\1033

我认为这与解决方案如何查找它的项目项有关,但我不知道该怎么做。

0 投票
2 回答
261 浏览

visual-studio - C# 等效于 C++ 自定义项目向导

我有一个从一年前为 VC++ 创建的现有向导模板,移植到 VS2008。它使用自定义向导 jscript/html 模板系统和 DTE 对象。我已经成功使用了多年,但现在我想为标准 C# 项目创建一个条目,我发现无法自定义 C# 项目设置 - 这些方法仅适用于 VC++。

对于 C# 项目,是否有与此密切相关的东西(或者我是否必须学习另一种为 .net 应用程序创建向导的方法?)

0 投票
1 回答
4696 浏览

envdte - 通过 DTE 按类型名称查找 ProjectItem

给定类型名称,是否可以使用 DTE 找到该类型所在的 ProjectItem?类似于Navigate To...Visual Studio 2010 中对话框的工作方式。

我能找到的最接近的是Solution.FindProjectItem,但这需要一个文件名。

谢谢!

0 投票
1 回答
398 浏览

visual-studio-2008 - 通过 VS 自动化和扩展访问 .vsprops(属性表)

我正在尝试访问在 Visual Studio 2008 项目使用的 .vsprops(属性表)中定义的用户宏。我找不到任何有关使用 VS 自动化和扩展功能(即 EnvDTE 等)访问 .vsprops 文件中的任何信息的文档。有谁知道这是否可能?

0 投票
1 回答
294 浏览

c# - 如何在 Visual Studio 2005 加载项中查找和打开文件?

我正在使用 Visual Studio 2005 C# 制作一个加载项,以帮助轻松地在源文件和头文件以及都遵循类似命名结构的脚本文件之间切换。但是,目录结构中的所有文件都位于不同的位置,即使它们都在同一个项目中。

我已经准备好几乎所有的部分,但我不知道如何仅根据文件名在解决方案中查找和打开文件。所以我知道我来自 c:\code\project\subproject\src\blah.cpp,我想打开 c:\code\project\subproject\inc\blah.h,但我没有不一定知道 blah.h 在哪里。我可以对不同的目录路径进行硬编码,但是该实用程序不够通用,无法健壮。

该解决方案有多个项目,这似乎也有点痛苦。我现在在想,我必须遍历每个项目,遍历每个项目项,查看特定文件是否存在,然后获得对它的正确引用。

但在我看来,必须有一种更简单的方法来做到这一点。

0 投票
3 回答
3100 浏览

visual-studio - 成功构建完成后如何获得通知?

我正在编写一个 VS 加载项,我需要在成功构建后运行某种方法。我尝试过使用dte.Events.BuildEvents.OnBuildDone,但即使构建失败也会发生该事件。

是否有我应该使用的属性或其他事件?

0 投票
2 回答
728 浏览

visual-studio - 如何通过 DTE 监听 ProjectItem 的删除?

我有一个设计师,它依赖于其他解决方案项目的存在。如果其中一项被删除,设计器会崩溃,您必须将其编辑为 XML 才能修复。不完全是用户友好的。

但是,我确实有代表 Visual Studio 实例的 DTE 对象,以及我所依赖的 ProjectItems。

是否可以在 DTE 深处的某个地方注册一个侦听器以删除该 ProjectItem?如果是这样,我该怎么做?

0 投票
1 回答
3503 浏览

c# - EnvDTE 从 CodeElement 中检索数据类型

我正在使用 EnvDTE 在我的最新项目中生成一些代码。

对于给定的 C#-Class,我有一个 CodeClass-Object 的引用,但现在我想遍历它的所有成员(在 codeClass.Members 中)并检查它们的类型。

但是,我无法从循环通过 codeClass.Members 时获得的 CodeElement-Object 中检索给定成员的类型。

如何检索类型(int、string 等)?

PS:反射不是我的用例的选项。