使用中的DLL文件,这样形成从DLL的弹出是相同的风格为EXE风格原文为XE2的应用程序,当更新打造10.2东京,从EXE打开某些窗体时,或关闭某些时候现在造成系统异常形式的EXE。
Answer 1:
我并不需要包括最小的重复的例子,在这个问题,因为我有一个答案,别人可能已经能够添加到我原来的问题,如果不是被关闭这么快,再没有重新打开后也使得它的话题。
原来这是在VCL行为的问题:
如果使用驻留在一个DLL和使用VCLStyles形式组合框异常。
因为它不是一个“问题” Embarcadero公司将不会解决它,
R&d写道,样式管理器具有在应用程序中启用并只能有一个一个启用系统钩子(TStyleManager.SystemHooks属性)TStyleManager,因为它处理的所有窗口从申请。 目前系统不支持您所提出的建议方案,并且目前还没有计划返工
但有一个解决办法是立即调用的DLL的代码的SetStyle或TrySetStyle之前添加以下代码行:
TStyleManager.SystemHooks := [];
希望这将是给谁升级到新版本后,运行到这个恼人的问题Delphi开发援助。
就我而言,我添加了一个有条件的定义与项目库,那么这段代码添加到地方,把它设置样式,同一单位中都包含EXE和DLL:
{$IFDEF DLL}
TStyleManager.SystemHooks := [];
{$ENDIF}
文章来源: Using VCL Styles in a DLL causes System Exception in 10.2 Tokyo