0
目前我通過EnumWindows檢查HWND是否爲控制檯並檢查ClassName。檢查句柄(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的含義。 –