Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Delphi目录设置中获取当前项目名称?_Delphi_Ide_Delphi Xe7 - Fatal编程技术网

如何在Delphi目录设置中获取当前项目名称?

如何在Delphi目录设置中获取当前项目名称?,delphi,ide,delphi-xe7,Delphi,Ide,Delphi Xe7,在项目目录设置中,我经常需要使用项目名称,比如“MyProject”,作为输出路径的一部分 我希望避免在设置中硬编码项目名称 是否有一个变量,如$Config和$Platform,可以动态获取当前项目名称而不扩展?为此,您可以使用$SanitizedProjectName。请注意,调试器可能不支持此功能。为此,您可以使用$SanitizedProjectName。请注意,调试器可能不支持这一点。为什么不使用相对路径?@DavidHeffernan:我想将输出文件放在项目文件夹之外,这使得版本控制

在项目目录设置中,我经常需要使用项目名称,比如“MyProject”,作为输出路径的一部分

我希望避免在设置中硬编码项目名称


是否有一个变量,如$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文件,但在执行此操作后,它会引发错误加载程序可能无法解析该变量。是正在编译还是正在安装软件包?正在编译,软件包是新的,未安装,其他已安装的软件包不需要它