1

出于更新目的,我创建了一个启动器(Windows/OSX)来启动主应用程序。

在 Windows 下它工作正常,但在 OSX 下,主应用程序没有启动以下代码。

_system(PAnsiChar('open ' + UTF8String(ExtractFilePath(ParamStr(0))+ 'mainapp')));
4

2 回答 2

3

您的字符串类型转换错误。这应该有效:

_system(PAnsiChar(UTF8String('open ' + ExtractFilePath(ParamStr(0))+ 'mainapp')));
于 2012-05-15T08:38:33.327 回答
0

如果文件名包含空格,我发现即使更正的类型转换也不充分,但我发现以下内容适用于 OSX:

_system(PAnsiChar(UTF8String('open ' + QuotedStr(ExtractFilePath(ParamStr(0))+ 'mainapp'))));

或者在我的情况下,确切的代码是

_system(PAnsiChar(UTF8String('open ' + QuotedStr(SaveDialog.Filename))));

于 2013-10-06T01:04:47.073 回答