C# 使用msbuild编译程序
2015-11-30 20:28
435 查看
1.使用msbuild命令编译程序方法:打开CMD,输入msbuild /p:outputpath=d:/temp project.csproj使用/p:outputpath=d:/temp更改生成文件存放的目录。2.将 .sln文件转换为 .csproj文件:打开Visual Studio command prompt(例如vs studio tools 下的 VS2012 x64本机本机工具命令提示),输入 CD /D yourpath切换 到工作目录。输入如下命令:
set MSBuildEmitSolution=1 msbuild project.sln 最终生成project.sln.metaproj文件和project.sln.metaproj.tmp文件。 生成过程中可能出现错误,例如制动的解决方案配置“debug | x64无效,可根据提示更该命令为
msbuild project.sln /p:configuration=debug /p:platform="Any CPU" 即可。
3.代码中使用msbuild: 在csproj文件中写入<UserTask TaskName="yourTask" AsseblyFile="your Task.dll path"/>新建MSBuildTask,继承自Microsoft.Build.Utilities.Task 重写Execute函数 代码大概是这样的:
public class MsBuildTask:Task { public override bool Execute() { Process proc = new Process(); proc.StartInfo.UseShellExecute = false; proc.StartInfo.FileName = "cl.exe"; proc.Start(); proc.StandardInput.WriteLine(YourArgs + "&exit"); proc.StandardInput.AutoFlush = true; proc.WaitForExit(); return true; }4.代码中调用 .bat文件:
var process = new Process()) process.StartInfo.FileName = batPath; process.StartInfo.CreateNoWindow = false; process.Start(); process.WaitForExit();
相关文章推荐
- scala剖析PriorityQueue,权值的使用
- 安装UIIamge拾取图片插件
- 【Win10开发】绘制静态UI
- UI-1-UI入门
- MyEclips启动报错:'Building workspace' has encountered a problem的解决方法
- UI基础-UI高级 可视化设计
- layout_centerVertical="true"用法
- 35.UITabBarController(标签视图控制器)
- 大鱼吃小鱼游戏-fruit.js
- XCTest/XCTest.h not found on old projects built in Xcode
- UI基础
- IOS之--UI进阶--多控制器管理第一天
- easygui(一)
- RabbitMQ 入门三(Work Queues)
- Orcle 主键自增(序列sequence、触发器trigger、主键primary)
- building and installing openCV3 with extra modules on VS2013 win8
- 随意细解:UI -- 可视化设计
- 通过Filter解决跨域问题,可以跨多个域,域可以通过@Value注解取
- UITableViewCell自定义cell
- 300.Longest Increasing Subsequence