我们有一个 Delphi 应用程序,它也是一个 COM 服务器,该应用程序有一个主窗体。当以自动化模式(smAutomation)启动时,我们需要将主窗体创建为父窗体。由于这个问题范围之外的几个原因,我们无法创建应用程序然后执行 COM 方法来重新设置主窗体,即重新设置必须在该过程的早期完成 - 就在创建主窗体之后。欣赏想法thx。
编辑:澄清
// Initialized as as an Application
if COMserver.startmode = smStandalone
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.Run;
End
Else
// Initialized as an automation server
if COMserver.startmode = smAutomation
Begin
// How do I set a Parent window handle property - this is called imediately after the COM client initializes the server
// how do I modify this call to create Form1 with a parent?
Application.CreateForm(TForm1, Form1);
End;