Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2010 如何以编程方式更改VS2010属性页中的设置?_Visual Studio 2010_Visual Studio_Propertysheet - Fatal编程技术网

Visual studio 2010 如何以编程方式更改VS2010属性页中的设置?

Visual studio 2010 如何以编程方式更改VS2010属性页中的设置?,visual-studio-2010,visual-studio,propertysheet,Visual Studio 2010,Visual Studio,Propertysheet,我正在寻找一种方法(宏/插件/扩展)来更改特定属性表(加载到解决方案中的每个项目中)中的值,而不必重新加载解决方案。 有没有办法从宏或插件代码访问它 谢谢 编辑属性页并从宏IDE查看其代码时录制宏。之后,您可以为它分配键绑定并随时播放。这就是我工作的方式。您必须在项目中添加VCEngine引用 VCProject project; Projects projCollection = sol1.Projects; project = (VCProject)projCollection.Item(1

我正在寻找一种方法(宏/插件/扩展)来更改特定属性表(加载到解决方案中的每个项目中)中的值,而不必重新加载解决方案。 有没有办法从宏或插件代码访问它


谢谢

编辑属性页并从宏IDE查看其代码时录制宏。之后,您可以为它分配键绑定并随时播放。

这就是我工作的方式。您必须在项目中添加VCEngine引用

VCProject project;
Projects projCollection = sol1.Projects;
project = (VCProject)projCollection.Item(1).Object;
VCConfiguration config = project.Configurations.Item("Test Release|Win32");
IVCRulePropertyStorage rule = config.Rules.Item("ConfigurationDirectories") as IVCRulePropertyStorage;

//Setting the Include directories
string rawValue = rule.GetUnevaluatedPropertyValue("IncludePath");
string evaluatedValue = rule.GetEvaluatedPropertyValue("IncludePath");
rule.SetPropertyValue("IncludePath", "Whatever you like to specify here");
//Setting the Executable Directory
rawValue = rule.GetUnevaluatedPropertyValue("ExecutablePath");
rule.SetPropertyValue("ExecutablePath", "Whatever you like to specify here");

宏不记录属性页选择,也不记录属性页内的更改。我得到的只是DTE.Windows.Item({DE1FC918-F32E-4DD7-A915-1792A051F26B}).Activate,它激活属性管理器,在重新播放时不起作用。接下来是DTE.ExecuteCommand(“View.PropertyPages”),它打开当前所选的属性页它是哪个属性页?它是标准的Visual studio属性页吗?我想知道我们是否可以尝试更改基础模型而不是视图。也许这会有所帮助?