1. 实际是调用了Engine\Build\BatchFiles\GenerateProjectFiles.bat
2. 然后调用Engine\Build\BatchFiles\GetMSBuildPath.bat
3. 依次查找2017,2015,2013 vs的MSBuild.exe,首先找到哪个版本的MSBuild.exe就直接成功退出
4. 调用MSBuild.exe生成UnrealBuildTool
MSBuild.exe /nologo /verbosity:quiet Programs\UnrealBuildTool\UnrealBuildTool.csproj /property:Configuration=Development /property:Platform=AnyCPU /target:Build
5. 调用UnrealBuildTool.exe生成UE4工程文件
Binaries\DotNET\UnrealBuildTool.exe -ProjectFiles
6. 如果想修改生成的vs版本的sln文件,在生成sln文件的时候加上版本参数即可
Binaries\DotNET\UnrealBuildTool.exe -ProjectFiles -2013

7. 在UnrealBuildTool工程的UnrealBuildTool.cs的main函数中的DoPostStartupStuffThatCanAccessConfigs可以看到下面代码,版本命令参数就是从这里看到的

else if (LowercaseArg.StartsWith("-projectfile"))
{if(Arguments.Contains("-2012unsupported", StringComparer.InvariantCultureIgnoreCase)){VCProjectFileGenerator.Version = VCProjectFileFormat.VisualStudio2012;}else if (Arguments.Contains("-2013")){VCProjectFileGenerator.Version = VCProjectFileFormat.VisualStudio2013;VCProjectFile.BuildToolOverride = " -2013";}else if(Arguments.Contains("-2015")){VCProjectFileGenerator.Version = VCProjectFileFormat.VisualStudio2015;VCProjectFile.BuildToolOverride = " -2015";}else if(Arguments.Contains("-2017")){VCProjectFileGenerator.Version = VCProjectFileFormat.VisualStudio2017;VCProjectFile.BuildToolOverride = " -2017";}ProjectFileTypes.Add(ProjectFileType.VisualStudio);
}

GenerateProjectFiles.bat分析相关推荐

  1. UnrealBuildTool(一)——关于GenerateProjectFiles.bat和UnrealBuildTool

    简单介绍一下GenerateProjectFiles.bat以及如何生成UnrealBuildTool.exe 先构建MsBuild所需环境配置 然后利用MsBuild 编译UnrealBuildTo ...

  2. 游戏引擎Flax Engine源码分析(一)综述

    2021SC@SDUSC 一.概述 第一篇综述主要介绍我们分析的项目和一些暂定的分工.这个过程将通过项目网站和项目部署的过程进行. Flax Engine是一款开源的轻量级游戏引擎,跨平台支持(Win ...

  3. Qt 运行.bat执行文件

    经常使用第三方工具的.bat 文件 主要运用到QProcess 代码如下: QProcess p(nullptr); QString workDir= "D:/AAA/DeepDiagnos ...

  4. UE4编译专用服务器

    [代码]: 1 <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 2 ...

  5. UE4 编译虚幻引擎

    WINDOWS On this page: 设置虚幻引擎 编译虚幻引擎 编译配置 对象平台 二进制文件命名规则 编译引擎 设置虚幻引擎 在继续前请确认您使用的是Microsoft Visual Stu ...

  6. UNREAL ENGINE 4.12 正式发布!下载地址

    UNREAL ENGINE 4.12 正式发布! 下载地址:https://www.unrealengine.com/ Alexander Paschall 在 June 1, 2016 |功能新闻社 ...

  7. UE4发布LinuxServer

    UE4发布LinuxServer 文章目录 UE4发布LinuxServer 1. Visual Studio 2019 1.1 下载 Visual Studio 1.2 配置 Visual Stud ...

  8. UE4游戏开发基础命令

    在个人的Unrealengine账户中关联自己的GitHub账户成功之后,就可以访问UE4引擎的源码了. git clone -b release https://github.com/EpicGam ...

  9. vs code ipynb文件_UE4引擎 源码的获取、安装,以及VS配置

    1.首先我们需要注册一个Epic账户,网址如下 http://api.unrealengine.com/CHN/GettingStarted/Installation/index.html#bookm ...

最新文章

  1. redis在容器里连接不上_Redis服务器被劫持风波,服务器相关知识共享学习
  2. 配置JDKAndroid 2D游戏引擎AndEngine
  3. python表单数据系统_使用MultipartPostHandler用Python发布表单数据
  4. AsyncQueryHandler了解
  5. MAC版 的最新Docker 2.2版本配置国内代理的解决办法
  6. 【Java】不正当使用break语句的危害
  7. 全球约39亿人未接入互联网 韩国家庭宽带普及率最高
  8. 不起眼的vim.转自https://blog.csdn.net/iplayvs2008/article/details/51508599
  9. json处理为字符串,主要函数,dumps和loads
  10. 安装autocad2006出错
  11. 频率泄露以及加窗原理
  12. 灵格斯词典(电脑端)+欧陆词典(手机端)
  13. w7计算机应用放大按键,设置Win7放大功能 老年人用电脑更方便
  14. 计算机专业权威期刊投稿经验总结
  15. 蓝色理想的flex教材不能在flex Development做不能使用,我整理一下供初学者参考
  16. Linux下XFS文件系统使用 Quota 进行合理划分实例
  17. 西南交大计算机第3次作业答案,西南交大大学英语I第3次作业题答案
  18. JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)
  19. 解决GitHub连不上的问题fatal: unable to access ‘https://github.com/..’: Failed to connect to github.com port
  20. torch.squeeze用法

热门文章

  1. 经典算法题:字典树、并查集、单调栈、二分、带标记函数dp、树、全排列、字符串问题等常用算法
  2. mysql中新建不了查询语句_将excel和mysql建立链接后,如何通过在excel里面执行mysql查询语句,然后建立查询...
  3. 谁在窥屏_TheShy直播被窥屏搞怕了,为了防止被窥屏,这个做法绝了
  4. 打破牢笼,展望更高层次的世界
  5. 「BZOJ2200」[Usaco2011 Jan] 道路和航线 - 最短路+拓扑排序
  6. P1242 新汉诺塔
  7. BZOJ2302 [HAOI2011]Problem c 【dp】
  8. shell 提示符个性化设置
  9. C++ 一键关闭屏幕
  10. Android初级开发第七讲--特效和数据传递处理