Как я могу назначить приложение .NET 4 WinForm для свойства владельца формы Delphi 7?

Мне нужно назначить приложение .NET 4 Winform в качестве владельца формы Delphi 7.

Я создал .dll в Delphi, который содержит форму. Delphi .dll экспортирует методы для создания и отображения формы.

Я успешно загрузил Delphi .dll в свое приложение .NET и отобразил форму.

Теперь мне нужно назначить приложение .NET (или основную форму приложения .NET) как владельца формы Delphi.

Я ранее создал приложение Delphi, которое перекликается с .NET через COM и назначает приложение Delphi владельцем форм .NET, используя следующий class:

public class WindowHandleWrapper : IWin32Window { public HandleRef m_Handle; public IntPtr Handle { get { return m_Handle.Handle; } } public WindowHandleWrapper(IntPtr handle) { m_Handle = new HandleRef(this, handle); } } 

WindowHandleWrapper приложения Delphi передавался как целое число в конструктор WindowHandleWrapper .

Я подозреваю, что решение будет чем-то похожим, например, передать дескриптор Delphi в виде целого числа. Однако тип Delphi для свойства Owner формы является TComponent. Я просто не совсем уверен, как назначить обработчик .NET как владельца формы Delphi.

Есть идеи?

Передайте свой дескриптор WinForm в DLL в качестве параметра и назначьте его Application.Handle перед созданием и показом формы.