В настоящее время я проверяю, является ли HWND консолью EnumWindows и проверяет ClassName.Проверьте, является ли Handle (HWND) консолью
function EnumWindows(AHandle: HWND; AParam: LPARAM): BOOL; stdcall;
var
classname: array[0.. 255] of Char;
begin
GetClassName(AHandle, classname, 255);
if classname = 'ConsoleWindowClass' then
begin
// do something
Result := False;
end
else
Result := True;
end;
Мне интересно, есть ли лучший способ добиться чего-то подобного?
Будет ли проверка стиля (или/или ExStyle) «лучше»?
Вы пытаетесь найти окно консоли, связанное с текущим процессом, или другое? –
@ 500-InternalServerError просто в общем. Для собственного текущего процесса можно использовать: function GetConsoleWindow: HWND; STDCALL; внешний 'kernel32.dll'; – MRSNAPS
Вам нужно определить, что вы подразумеваете под * console *, прежде чем мы сможем рассказать вам, как его идентифицировать. –