今天写一点有关Visual Studio 2015使用技巧方面的文章,其实不只是VS2015,VS以前的版本也有这个功能,这个功能就是“VS预生成事件命令行 和 生成后事件命令行”。这个功能好久没有使用了,居然在这个功能使用上也会阴沟翻船,整整把我折腾了多半天,借着今天这个机会,今天我就把这个功能补习一下。
直接上代码,以下是所有的命令,好好的复习一下,我建立了一个测试项目。解决方案的名称是“SolutionTest”,项目也是独立建立的,名称是“ConsoleApplication”,然后基于这些给出每一项的具体结果。效果如图:
命令写法:
宏命令说明:
$(ConfigurationName) 当前项目配置的名称(例如,“Debug|Any CPU”)。 结果值:Debug,因为我的项目处于调试环境,如果是发布环境,其值就是:Release。 $(OutDir) 输出文件目录的路径,相对于项目目录。这解析为“输出目录”属性的值。它包括尾部的反斜杠“”。 结果值:binDebug $(DevEnvDir) Visual Studio 版本 的安装目录(定义为驱动器 + 路径);包括尾部的反斜杠“”。 结果值:D:Program Files (x86)Microsoft Visual Studio 14.0Common7IDE $(PlatformName) 当前目标平台的名称。例如“AnyCPU”。 结果值:AnyCPU $(ProjectDir) 项目的目录(定义为驱动器 + 路径);包括尾部的反斜杠“”。 结果值:E:visual studio 2015ProjectsSolutionTestConsoleApplication $(ProjectPath) 项目的绝对路径名(定义为驱动器 + 路径 + 基本名称 + 文件扩展名)。 结果值:E:visual studio 2015ProjectsSolutionTestConsoleApplicationConsoleApplication.csproj $(ProjectName) 项目的基本名称。 结果值:ConsoleApplication $(ProjectFileName) 项目的文件名(定义为基本名称 + 文件扩展名)。 结果值:ConsoleApplication.csproj $(ProjectExt) 项目的文件扩展名。它在文件扩展名的前面包括“.”。 结果值: .csproj $(SolutionDir) 解决方案的目录(定义为驱动器 + 路径);包括尾部的反斜杠“”。 结果值:E:visual studio 2015ProjectsSolutionTest $(SolutionPath) 解决方案的绝对路径名(定义为驱动器 + 路径 + 基本名称 + 文件扩展名)。 结果值:E:visual studio 2015ProjectsSolutionTestSolutionTest.sln $(SolutionName) 解决方案的基本名称。 结果值:SolutionTest $(SolutionFileName) 解决方案的文件名(定义为基本名称 + 文件扩展名)。 结果值:SolutionTest.sln $(SolutionExt) 解决方案的文件扩展名。它在文件扩展名的前面包括“.”。 结果值:.sln $(TargetDir) 生成的主输出文件的目录(定义为驱动器 + 路径)。它包括尾部的反斜杠“”。 结果值:E:visual studio 2015ProjectsSolutionTestConsoleApplicationinDebug $(TargetPath) 生成的主输出文件的绝对路径名(定义为驱动器 + 路径 + 基本名称 + 文件扩展名)。 结果值:E:visual studio 2015ProjectsSolutionTestConsoleApplicationinDebugConsoleApplication.exe $(TargetName) 生成的主输出文件的基本名称。 结果值:ConsoleApplication $(TargetFileName) 生成的主输出文件的文件名(定义为基本名称 + 文件扩展名)。 结果值:ConsoleApplication.exe $(TargetExt) 生成的主输出文件的文件扩展名。它在文件扩展名的前面包括“.”。 结果值:.exe
命令使用格式:
copy/xcopy "Source" "Destination" copy/xcopy命令是不区分大小写的。 Source和Destination信息不能省略外层的双引号,否则就会抛出 【“copy ******** ”已退出,代码为1。】的编译错误。 XCopy "$(ProjectDir)binDebugAutoMapper.dll" "$(SolutionDir)ConsoleApplication2inDebug"
今天就到这里了,每天都有一点进步,坚持不懈。