Delphi:为什么不能在DYLIB中使用FMX.FORMS

时间:2018-10-25 23:32:54

标签: delphi firemonkey dylib delphi-10.2-tokyo

我正在使用TMS FMX Cloud Pack。整个代码中都散布着FMX.Forms(以及使用FMX.Forms的FMX.Dialogs)。我目前在VCL DLL中成功使用了这些库。

我的初步测试表明,如果我在DYLIB的Uses子句中有FMX.Forms,则主机应用程序在MAC任务栏中闪烁,并且该应用程序无法启动(我怀疑是因为DYLIB无法加载)。

编辑:从Windows IDE通过PAServer运行时出现此错误(从MAC VM上的Finder运行时没有错误):

  

/BuildRoot/Library/Caches/com.apple.xbs/Sources/AppleFSCompression/AppleFSCompression-96.60.1/Common/ChunkCompression.cpp:49:错误:不支持的压缩器8   /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppleFSCompression/AppleFSCompression-96.60.1/Libraries/CompressData/CompressData.c:353:错误:文件'/ System / Library / CoreServices / CoreTypes遇到未知的压缩方案.bundle / Contents / Resources / Exceptions.plist'   /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppleFSCompression/AppleFSCompression-96.60.1/Common/ChunkCompression.cpp:49:错误:不支持的压缩器8   /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppleFSCompression/AppleFSCompression-96.60.1/Libraries/CompressData/CompressData.c:353:错误:文件'/ System / Library / CoreServices / CoreTypes遇到未知的压缩方案.bundle / Contents / Library / AppExceptions.bundle / Exceptions.plist'   0015EA03出现运行时错误230

简单的测试应用程序在这里:YAML。如果我只是将FMX.Forms添加到uses子句中,则会得到上述行为。

问题1:这是预期的行为吗?

问题2:是否有解决方法(不删除FMX.Forms-因为我使用TMS FMX Cloud Pack第三方库)?

编辑:

当在物理机上运行应用程序时,这似乎是此错误“无法注册类TFMXApplicationDelegate”的表现。当我在Parallels macOS VM中运行应用程序时,出现“运行时错误230”。

无论如何,“无法注册类TFMXApplicationDelegate”问题的解决方法是不要使用FMX.Forms(或DYLIB中使用FMX.Forms的任何单元。一切都很好,除了我正在(广泛使用)之外) TMS FMX Cloud Pack中使用白色的FMX.Forms和FMX.Dialogs(包含FMX.Forms),我试图从其代码中取出FMX.Forms等看起来过于雄心勃勃,坦率地说,已经到了为什么我们要首先购买第三方图书馆。如果只是不起作用,则可能不应该使用它们。是的,我已经通过电子邮件发送给了供应商。

但是,如果有人对如何解决此问题有任何想法,以便我确实可以在DYLIB中使用FMX.Forms,那么请告诉我。

0 个答案:

没有答案