如何在Delphi目录设置中获取当前项目名称?
在项目目录设置中,我经常需要使用项目名称,比如“MyProject”,作为输出路径的一部分 我希望避免在设置中硬编码项目名称如何在Delphi目录设置中获取当前项目名称?,delphi,ide,delphi-xe7,Delphi,Ide,Delphi Xe7,在项目目录设置中,我经常需要使用项目名称,比如“MyProject”,作为输出路径的一部分 我希望避免在设置中硬编码项目名称 是否有一个变量,如$Config和$Platform,可以动态获取当前项目名称而不扩展?为此,您可以使用$SanitizedProjectName。请注意,调试器可能不支持此功能。为此,您可以使用$SanitizedProjectName。请注意,调试器可能不支持这一点。为什么不使用相对路径?@DavidHeffernan:我想将输出文件放在项目文件夹之外,这使得版本控制
是否有一个变量,如$Config和$Platform,可以动态获取当前项目名称而不扩展?为此,您可以使用$SanitizedProjectName。请注意,调试器可能不支持此功能。为此,您可以使用$SanitizedProjectName。请注意,调试器可能不支持这一点。为什么不使用相对路径?@DavidHeffernan:我想将输出文件放在项目文件夹之外,这使得版本控制非常困难。通常我会将该步骤视为生成后操作。您是否尝试过Application.ExeName属性?它返回应用程序可执行文件的文件名,包括路径。您可以使用ExtractFileName函数提取文件名。为什么不使用相对路径?@DavidHeffernan:我想将输出文件放在项目文件夹之外,这使得版本控制非常困难。通常我会将该步骤视为生成后操作。您是否尝试过Application.ExeName属性?它返回应用程序可执行文件的文件名,包括路径。然后,您可以使用ExtractFileName函数提取文件名。在编译时,我遇到一个[致命错误]无法加载程序包MyPackage.bpl。。。。$SanitizedProjectName似乎包含扩展名?我也尝试过$MSBuildProjectName,但它会产生相同的错误。这很奇怪,因为在编译时,它会创建MyPackage文件夹并在文件夹内创建MyPackage.bpl文件,但在执行此操作后,它会引发错误加载程序可能无法解析该变量。是正在编译还是正在安装程序包?正在编译,程序包是新的,未安装,其他已安装的程序包不需要它编译时,我遇到一个[致命错误]无法加载程序包MyPackage.bpl。。。。$SanitizedProjectName似乎包含扩展名?我也尝试过$MSBuildProjectName,但它会产生相同的错误。这很奇怪,因为在编译时,它会创建MyPackage文件夹并在文件夹内创建MyPackage.bpl文件,但在执行此操作后,它会引发错误加载程序可能无法解析该变量。是正在编译还是正在安装软件包?正在编译,软件包是新的,未安装,其他已安装的软件包不需要它