Delphi:MSBuild编译dproj工程
Delphi之命令行编译工程,传统是用dcc32来编译的,它需要设置一大堆参数。
自Delphi 2007以后,支持MSBuild编译,它直接编译.dproj工程文件,所有编译需要的东西,都已在其中设置好,省事。
直写bat脚本上:
@echo off set msbuild="%systemroot%\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe"
%msbuild% /t:Rebuild /p:Config=Release ModalMin.dproj
结果出错,其信息为:
没理由错。百度之,所获模糊,上stackoverflow,果然是技术网站。
它少了所需要的环境变量。
Delphi安装目录下已有其批处理,位置在:C:\Program Files (x86)\Embarcadero\RAD Studio\8.0\bin(这里我以Delphi XE为例)下,其名为rsvars.bat。
更新至打包脚本:
@echo off call "%ProgramFiles(x86)%\Embarcadero\RAD Studio\8.0\bin\rsvars.bat"
set msbuild="%systemroot%\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe"
%msbuild% /t:Rebuild /p:Config=Release ModalMin.dproj
运行之,完美编译:
Delphi:MSBuild编译dproj工程的更多相关文章
- msbuild 编译指定工程时构建脚本的配置
有时候 ,我们编译windows的exe时,我们不需要编译所以的工程,我们只需要指定某个工程就好了,此时我们使用/t:工程名:Rebuild(如果要编译全部工程就把工程名去掉,即/t:Rebuild) ...
- 提高Delphi的编译速度(bpl和bcp)
delphi的编译速度提高(一) 此博文为原创,转载请注明出处 作者 :二娃 此博文的内容我曾经回答群内和论坛内的网友提问时回答过,现在写第一部分,第二部分,我再给出一个终极的提高速度的方法 我用过d ...
- Delphi 预编译指令
<Delphi下深入Windows核心编程>(附录A Delphi编译指令说明)Delphi快速高小的编译器主要来自Object PASCAL的严谨,使用Delphi随时都在与编译器交流, ...
- Visual Studio自动编译gRPC工程的设置
前段时间研究一个java程序,增加一些功能.其中用到java和C#的通信.自然,有多种办法,后来实际上是用javascript调用C#的REST WCF服务实现的.但是在查资料的过程中,发现有个Pro ...
- 转:Android开发实践:用脚本编译Android工程
转自: http://ticktick.blog.51cto.com/823160/1365947 一般情况下,我们都是使用Eclipse+ADT插件或者Android studio软件来编译Andr ...
- 如何在编译Xcode-Plugin工程的时候增加Cocoapods依赖
关于如何在编译Xcode-Plugin工程的时候增加Cocoapods依赖 以及在Mac App上使用Cocoapods的时候遇到Library not found for -lPods时的解决办法 ...
- Delphi 预编译指令 的用法
A.3 使用条件编译指令条件编译指令是非常重要的编译指令,他控制着在不同条件下(例如,不同的操作系统)产生不同的代码.条件编译指令是包含在注释括号之内的,如下表所示. ...
- 用批处理编译*.sln工程
原文:用批处理编译*.sln工程 批处理是直接调用Microsoft Visual Studio 8\Common7\IDE\ 目录内的 devenv.exe ,它启动后就是IDE,提供的参数如下: ...
- 通过脚本调用MSBuild编译项目时指定Configuration(解決方案配置)和Platform(解決方案平台),Rebuid(重新生成解决方案),Clean(清理解决方案)
为了方便打包测试,自己PowerShell写了一个编译和发布的脚本,调用msbuild通过命令行来编译当前解决方案 后来发现一个问题,用VS编译解决方案,我通过 项目属性-Build设置 Releas ...
随机推荐
- Java 判断当前系统为Window或者Linux
public static boolean isOSLinux() { Properties prop = System.getProperties(); String ...
- ORM一对多查询对象
正向查询: 取人民日报出版社出版的所有书籍 方式一: pub_obj = Publish.objects.filter(name='人民日报')[0] ret = Book.objects.filte ...
- JSP基本_JSPの構成要素、アクション、ディレクティブ
1.JSPの構成要素[コア要素] JSP文法のコアとなる要素で.サーブレットソースに変換される. ・宣言: <%! - %> (宣言で指定した変数は.Javaの「フィールド変数」になる.ス ...
- docker之container
转自:https://www.cnblogs.com/jsonhc/p/7760144.html 运行一个container的本身就是开启一个具有独立namespace的进程 进程有自己的网络,文件系 ...
- Raft算法和Gossip协议
简单介绍下集群数据同步,集群监控用到的两种常见算法. Raft算法 raft 集群中的每个节点都可以根据集群运行的情况在三种状态间切换:follower, candidate 与 leader.lea ...
- 2018.3,GC可控了
如题,不再像以前那样由系统决定什么时候进行GC,现在可以通过设置,决定自己手动回收还是使用传统的系统决定方式. 传统方式不可控,就算是手动调用了GC.COLLECT,系统也不一定会立即执行.
- UGUI的text赋值问题-速度
仅是简单的给一个ugui.text组件不断的赋值字符串,就会带来很高的CPU消耗,约0.5MS左右. 这个过程主要是消耗在字体的MESH顶点重建. 在游戏中变化的字体一般不多,聊天面板虽然变化,刷新率 ...
- Nginx缓存配置以及nginx ngx_cache_purge模块的使用
web缓存位于内容源Web服务器和客户端之间,当用户访问一个URL时,Web缓存服务器会去后端Web源服务器取回要输出的内容,然后,当下一个请求到来时,如果访问的是相同的URL,Web缓存服务器直接输 ...
- TypeScript语言学习笔记(1)
基本类型 // 布尔型(Boolean) let isDone: boolean = false; // 数值型(Number) let decimal: number = 6; let hex: n ...
- 基于Delphi的接口编程入门
为什么使用接口? 举个例子好了:有这样一个卖票服务,电影院可以卖票,歌剧院可以卖票,客运站也可以卖票,那么我们是否需要把电影院..歌剧院和客运站都设计成一个类架构以提供卖票服务?要知道,连经理人都可以 ...