首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将visual studio项目自动转换为使用英特尔C++编译器。

如何将visual studio项目自动转换为使用英特尔C++编译器。
EN

Stack Overflow用户
提问于 2011-02-25 03:51:19
回答 2查看 664关注 0票数 1

我们使用英特尔C++编译器来提高C++代码的性能。为了使用它,我们需要通过IDE将我们的visual studio项目转换成英特尔项目。由于英特尔编译器并不是安装在所有地方,因此我们只在需要创建英特尔版本的机器上执行此步骤。

我们想要探索一种方法,通过一些脚本来自动化这个转换过程。我们想知道我们是否可以使用EnvDTE应用程序接口来做同样的事情。

到目前为止,我们已经能够在VBScript中访问到以下内容:

代码语言:javascript
运行
复制
Dim objDTE
' Creates an instance of the Visual Studio  
Set objDTE = CreateObject("VisualStudio.DTE")  

' Make it visible   
objDTE.MainWindow.Visible = True  

' Open a .sln file   
objDTE.Solution.Open("Path to solution file")  

Dim sol    
Set sol = objDTE.Solution.SolutionBuild  

此时,我们可以像这样调用函数:

代码语言:javascript
运行
复制
sol.Clean  
sol.Build  

它们运行得很好。

除此之外,我们找不到一种方法来识别可以应用于解决方案的其他命令。例如,英特尔C++编译器将自身作为插件集成到Visual Studio中。我们想知道是否可以找出一种方法来识别可用于解决方案对象的命令列表,然后执行适当的命令来将visual studio项目转换为使用英特尔编译器。

是否有可能自动执行此转换?

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2011-04-28 01:27:54

出于那些可能会遇到同样情况的人的兴趣,您可以使用DTE.ExecuteCommand来运行任意命令,包括那些通过扩展公开的命令。要打印出所有可用命令的列表,可以运行以下VBScript:

代码语言:javascript
运行
复制
Set DTE = CreateObject("VisualStudio.DTE.10.0") ' adjust version as needed
For Each cmd In DTE.Commands
    WScript.Echo cmd.Name
Next
票数 0
EN

Stack Overflow用户

发布于 2011-10-17 18:52:55

通过DTE实现的COM自动化如下所示:

代码语言:javascript
运行
复制
/// Intel convertion 
Project proj;
proj = DTE.Solution.Projects.Item(1) // Should be vc++ one

ProjectConversions pconv = (ProjectConversions)EnvDTE.GetObject("PrjConvert");
pconv.EnableUsingIntelCppCompiler(prj1.Name);

您只需添加来自/Common7\IDE\PublicAssemblies的.NET reference IntelCppOptPkg.dll

此外,还有一个转换工具,位于“\通用文件\英特尔\shared files\ia32\Bin\ICProjConvert.exe”。A有关key /提供的工具的帮助信息?或者通过URL

您需要的几乎所有内容都可以在MSDN automation documentation中找到

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5109693

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档