Гость
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Создание подпроцесса с дочерним окном и группировка в TaskManager как у Chrome/Skype / 2 сообщений из 2, страница 1 из 1
20.08.2021, 10:44
    #40092144
X-Cite
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание подпроцесса с дочерним окном и группировка в TaskManager как у Chrome/Skype
Добрый день.
Потребность: Новое дочернее окно в новом процессе.
При этом необходимо чтобы процессы группировались в TaskManager как у Chrome.
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
procedure TForm1.Button1Click(Sender: TObject);
var
  si: TStartupInfo;
  pi: TProcessInformation;
begin
  si := Default(TStartupInfo);
  si.cb := SizeOf(TStartupInfo);
  pi := Default(TProcessInformation);
  if not CreateProcess(nil, PChar('Process.exe ' + NativeUInt(Handle).ToString()), nil, nil, True, 0, nil, nil, si, pi) then
    RaiseLastOSError();
end;

procedure TForm1.CreateWindowHandle(const Params: TCreateParams);
var
  NewParams: TCreateParams;
begin
  NewParams := Params;
  if ParamStr(1) <> '' then
  begin
    NewParams.WndParent := ParamStr(1).ToInt64();
    NewParams.ExStyle := NewParams.ExStyle and not WS_EX_APPWINDOW;
  end;
  inherited CreateWindowHandle(NewParams);
end;



Этот код минимально делает то что необходимо... Главное окно в одном процессе не перекрывает дочернее окно в дочернем процессе.
Но при этом в TaskManager процессы не группируются.
...
Рейтинг: 0 / 0
20.08.2021, 10:55
    #40092152
X-Cite
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание подпроцесса с дочерним окном и группировка в TaskManager как у Chrome/Skype
О! Все норм...
Код: pascal
1.
NewParams.ExStyle := NewParams.ExStyle and not WS_EX_APPWINDOW;



Добавил строчку чтобы убрать заголовок на панели задач для дочернего окна и не посмотрел что в TaskManager группируется..
Вопрос по сути закрыт)
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Создание подпроцесса с дочерним окном и группировка в TaskManager как у Chrome/Skype / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]