gpt4 book ai didi

delphi - 如何在Delphi上获取事件表单的ClassName(可能来自另一个应用程序)?

转载 作者:行者123 更新时间:2023-12-03 15:48:34 26 4
gpt4 key购买 nike

如何在 Delphi 上获取事件表单的 ClassName(可能来自另一个应用程序)?

似乎 Application.ActiveFormHandle 仅返回 Application 的事件形式。

最佳答案

我相信您正在寻找的窗口句柄是由 GetForegroundWindow 返回的。

要获取类名,请将该窗口句柄传递给 Windows API 函数 GetClassName 。这是该 API 函数的 Delphi 包装器:

function GetWindowClassName(Window: HWND): string;
const
MaxClassNameLength = 257;//256 plus null terminator
var
Buffer: array [0..MaxClassNameLength-1] of Char;
len: Integer;
begin
len := GetClassName(Window, Buffer, Length(Buffer));
if len=0 then
RaiseLastOSError;
SetString(Result, Buffer, len);
end;

我使用了长度为 256 的缓冲区,因为窗口类名称不允许长于该长度。

关于delphi - 如何在Delphi上获取事件表单的ClassName(可能来自另一个应用程序)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14029733/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com