Delphi Firemonkey跨平台 – 传递Windows句柄的一般方法

我在为WindowsOSX开发的第二个Firemonkey应用程序中,正在慢慢转换我的函数库来处理跨平台问题。 我正在尝试创build一个通用的SelectDirectory函数,该函数将为Windows或OSX运行特定于平台的代码。 我有SelectDirectory伟大的两个平台单独调用,但特定于Windows的需要一个hwndparent句柄来运行。

这正在IFDEF MSWINDOWS指令中运行(就像OSX的编译指令一样)。 我怎样才能传递一个通用的句柄到这个函数,或者我怎么可以引用Application.MainForm或者什么东西,可以投入到这个函数的Windows句柄? 我希望避免在这个库的使用条款中使用Firemonkey的特定单位。 我宁愿传递一个THandle,把它放到函数里面的一个TWindowHandle中,但是经过一个小时的工作,我不知道怎么做才不会影响我的库的用处。

任何帮助赞赏。

Solutions Collecting From Web of "Delphi Firemonkey跨平台 – 传递Windows句柄的一般方法"