Я вызываю HtmlHelp из процесса B и передавая HWND другого процесса (процесс A, процесс, который запустил текущий процесс B), чтобы попытаться связать окно справки с моим родительским процессом (A).Можно вызвать API HtmlHelp и передать право собственности другому процессу?
Затем мой процесс (B) выходит, но это все еще вызывает выход из окна справки HTML. Как мне избежать просмотра справки из окна выхода и связать его с временем жизни процесса A?
Согласно MSDN
hwndCaller Определяет дескриптор (HWND) окна вызова HtmlHelp(). Окно справки принадлежит этому окну. Когда окно справки закрыто, HtmlHelp() вернет фокус владельцу, если только владелец не является рабочим столом.
Звонок API просто;
HtmlHelpA(procWindow, "hlp.chm", HH_DISPLAY_TOPIC, help_pointer);
фона:
У меня есть очень старая Fortran программа, которая запускает WinHelp (старый формат HELP), который я мигрирующей в HtmlHelp (более новых API и формат). Я не могу вызвать API Win32 HtmlHelp непосредственно из этого старого кода, потому что он зависает (вызванный размером и местоположением стека, я не могу изменить).
Чтобы обойти это, я обманываю новый процесс из кода Fortran, который имеет размер стека по умолчанию, который может успешно запускать справку.
Прокси-код справки скомпилирован с использованием компилятора SilverFrost C, чтобы он не вводил никаких зависимостей (основное приложение - SilverFrost Fortran).
Have процесс (B). –