我正在为delphi 7
and开发组件delphi 2006
,该组件使用SynTaskDialog.pas
来自synopse,我已经成功使用了SynTaskDialog.pas
indelphi 7
组件,但是当我尝试使用它delphi 2006
来创建组件包时。我收到一个错误
我在synopse.info/forum上找到了相同的解决方案
引用:
我找到了两种解决方法:
- 用字符串数组替换指针数组,如
TD_ICONS_IDENT: array[TTaskDialogIcon] of string =( '', SMsgDlgWarning, SMsgDlgConfirm, SMsgDlgError, SMsgDlgInformation, '', SMsgDlgInformation);
并删除一些 LoadResString 调用或
2.用函数替换指针数组
GetIconIdent(TTaskDialogIcon): Pointer
但即使在那之后我也无法为组件编译包。这些错误来了
[Pascal Error] E2201 Need imported data reference ($G) to access 'SMsgDlgOK' from unit 'SynTaskDialog'
[Pascal Error] E2201 Need imported data reference ($G) to access 'SMsgDlgYes' from unit 'SynTaskDialog'
[Pascal Error] E2201 Need imported data reference ($G) to access 'SMsgDlgNo' from unit 'SynTaskDialog'
[Pascal Error] E2201 Need imported data reference ($G) to access 'SMsgDlgCancel' from unit 'SynTaskDialog'
[Pascal Error] E2201 Need imported data reference ($G) to access 'SMsgDlgRetry' from unit 'SynTaskDialog'
[Pascal Error] E2201 Need imported data reference ($G) to access 'SCloseButton' from unit 'SynTaskDialog'