l_app := TFileRun.Create(self);
l_app.FileName := ExecutePach+ExecuteFile;
l_app.ParentControl := self;
l_app.Execute;
h := GetModuleHandle(Pchar(ExecuteFile));
ShowWindow(h, SW_HIDE);
Windows.SetParent(h, self.Handle);
ShowWindow(h, SW_SHOWNORMAL);
l_app.Free;
Форму внешнего приложение как MDI-Child
У меня есть программа написанная на c sharp.
Я хочу ее запустить из программы написанной на Delphi и сделать как дочернее.
Поискал в интернете и попробовал сделать вот так:
Код:
при этом когда прогоняю в отладчике h = 0 но
GetModuleHandle(Pchar(ExecuteFile)) возвращает 4194304;
И соответственно раз h=0 то и
Код:
ShowWindow(h, SW_HIDE);
Windows.SetParent(h, self.Handle);
ShowWindow(h, SW_SHOWNORMAL);
Windows.SetParent(h, self.Handle);
ShowWindow(h, SW_SHOWNORMAL);
не исполняется.
Подскажите пожалуйста что я не так делаю или как мне поместить форму запущенного приложения в MDI контейнер
GetModuleHandle(Pchar(ExecuteFile)) мне наверное возвращает хендл процесса а не его формы, а как получить хендл формы не зная её заголовок?