Visual Studio 中创建项目模板——以matlab ,C++混合编程工程为例

16 篇文章 0 订阅
4 篇文章 0 订阅
[size=large]写的程序多为小程序,配置基本差不多。每次都要配置Include路径及lib路径很麻烦。
当然,可以在Property Manager中将头文件路径和lib路径添加到全局表单中。但是并不是每一个工程都需要那么些路径,另外,换一台机器,路径不一样岂不是很麻烦?
于是乎,工程模板是一个不错的选择。
另外,为了便于管理,可以采用环境变量来设置路径,而非采用绝对路径。这样一来不同电脑间只需更改环境变量即可。引用的头文件版本升级时也只需重新设置环境变量即可~这一点可以通过bat文件来进行,相当的方便。

在此以VS2012中配置matlab的mex开发工程为例。[/size]

[size=x-large][color=blue]1、新建工程、更改项目属性[/color][/size]
[size=large]随便建一个工程,更改各个项目属性。
比如下图中我们要为工程[color=red]加入matlab的头文件和lib文件所在路径[/color]:[/size]
[img]http://dl.iteye.com/upload/attachment/0079/3489/ae720bad-df4b-31ad-bad9-3917a876e17f.png[/img]

[size=x-large][color=blue]2、用批处理文件添加环境变量[/color][/size]
[size=large]什么?听说系统里没有上面的路径啊。。。。
那我们就手动添加吧,右键我的电脑->属性->高级->环境变量。。。。咦,这个好像有些落伍哦。。。
扯句题外话,有个叫Path Editor的工具可以图形界面修改Path路径:[/size][url]http://www.redfernplace.com/software-projects/patheditor/[/url]
[size=large]这里,我们采用[color=red]批处理[/color]的方式,比如下面这个示例:[/size]
echo 本程序用来设置在Visual Studio中编译Mex的路径
::设置临时变量
set matlabHome0="C:\Program Files\MATLAB\R2010b"

echo 设置Matlab根目录
setx -m MatlabHome %matlabHome0%

echo 头文件路径,用分号间隔
setx -m MatlabMexInclude %matlabHome0%\extern\include

echo lib文件路径,用分号间隔
setx -m MatlabMexLib %matlabHome0%\extern\lib\win64\microsoft

::最后的/M表示修改的是全局的PATH变量;下面的句子没用,注释掉了,当然如果有DLL要添加可以放到Path路径下。
::setx path "%path%;%VS_Solution_DIR%\bin\Debug;%VS_Solution_DIR%\bin\Release" /M



[size=x-large][color=blue]3、导出模板[/color][/size]
[size=large]直接上图啦~~[/size]

[img]http://dl.iteye.com/upload/attachment/0079/3495/55dbbd18-7492-3db5-a32d-4b33133c4fef.png[/img]

[img]http://dl.iteye.com/upload/attachment/0079/3497/7855c61f-247f-330e-bf43-18062fa67a57.png[/img]

[size=x-large][color=blue]4、添加模板到Visual Studio的模板路径下[/color][/size]
[size=large]如果要用刚才的模板,可以按下图所示查看模板文件所在路径,将刚才的文件放进去即可。当然,别忘了重启VS[/size]
[img]http://dl.iteye.com/upload/attachment/0079/3501/9739a73f-1631-3314-85f0-92cce57b37bc.png[/img]

[size=x-large][color=blue]5、用自建的模板创建工程[/color][/size]
[img]http://dl.iteye.com/upload/attachment/0079/3503/69052062-dcf4-336a-8742-3fdaff03199e.png[/img]

[size=x-large][color=blue]6、延伸阅读[/color][/size]
[size=large]到这儿,模板能用了,满足喽!
可是刚刚的工程模板只能改个工程名字。。。
于是乎,有兴趣的可以继续看官方文档,什么模板安装文件,什么设置模板的参数啦。。。反正我是懒得整了,够用了。
这里仅给个链接:[/size] [url]http://msdn.microsoft.com/en-us/library/ms247119(v=vs.100).aspx[/url]

[size=x-large][color=blue]7、对工程属性的具体更改[/color][/size]
[size=large]这里列出自己对工程属性的具体更改,单看模板制作的可以洗洗睡了。
[color=red]目标文件的路径及后缀[/color][/size]
[img]http://dl.iteye.com/upload/attachment/0079/3521/0f8d1f70-09b2-35f2-ba19-6b4aa905b08e.png[/img]

[size=large]开启[color=red]openMP[/color]支持[/size]
[img]http://dl.iteye.com/upload/attachment/0079/3527/51dfe717-45bf-368b-b620-4f174ff31f8d.png[/img]

[size=large]增加[color=red]定义[/color][/size]
[img]http://dl.iteye.com/upload/attachment/0079/3529/34b425dc-b54a-3f61-9b27-1b36152c879b.png[/img]

[size=large][color=red]修改目标平台[/color]
略;
[color=red]注意:[/color]各个平台下的配置不尽相同,需要分别调整。[/size]


[size=x-large][color=blue]8、自动修改文件名[/color][/size]
[size=large]这里的示例是将[color=red]mexFunction.cpp[/color]的名称动态的改为[color=red]新建工程[/color]的名称;
需要改导出的template文件的三处(解压template文件后更改)!!!好麻烦!!!
需要更改后缀为 .vstemplate; .vcxproj; .filters的三个文件中所有与[color=red]mexFunction.cpp[/color]相关的地方!!!具体改法见下面的三张图片[/size]

[img]http://dl2.iteye.com/upload/attachment/0092/1107/5dc661dc-c3f5-3c81-acdf-5c4b2e2e897e.png[/img]

[img]http://dl2.iteye.com/upload/attachment/0092/1109/821ffc62-96ca-30c6-ae1b-366bba6208b8.png[/img]


[img]http://dl2.iteye.com/upload/attachment/0092/1117/fc186470-734c-32ca-9a04-57a4bbfb8e05.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值