检索 Delphi 窗口句柄

2023-12-21

我正在尝试从外部应用程序获取 Delphi 应用程序的窗口句柄。我可以看到创建了一些窗口(TApplication、TFrmMain 和其他一些窗口),并且我知道 TApplication 是“控制器”,但从不可见。但是,我可以读取真实窗口的值是多少吗?我知道它是 TFrmMain (对于这个特定的应用程序),但是是否有可能以某种方式实际解决这个问题?这些信息是存储在窗口属性中还是其他地方?谢谢!


不,没有记录的方法来发现哪个窗口代表Application.MainForm从应用程序外部。在较新版本的 Delphi 中,主窗体的窗口句柄不一定是Application.MainForm.Handle反正;应用程序可以处理OnGetMainFormHandle事件返回他们想要的任何内容 - 用于选择模式对话框的父窗口。

You can guess通过查找类名中带有“main”的窗口,但即使找到一个,也不能保证只有一个它的实例。应用程序可以有多个顶级窗口,在这种情况下,将其中任何一个指定为“主”窗口都没有多大意义。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检索 Delphi 窗口句柄 的相关文章

  • win32上的64位Anaconda使用32位还是64位?

    我猜答案是 32 位 但我有点困惑为什么我什至可以在 win32 中安装 Anaconda 64 我曾经在 Anaconda 64 位上工作 但我刚刚意识到我的系统是 win32 这有时会产生一些异常 例如 请参阅我为 scipy 打开的这
  • 设置窗口像素的正确(且无闪烁)方法?

    我正在努力找出在 WM PAINT 期间将纯 RGBA 值数组转储到 Win32 窗口的客户区的正确方法 我有以下代码 但它看起来已经很复杂 我什至还没有完成 case WM ERASEBKGND return 1 case WM PAIN
  • ZLIB 解压缩

    我编写了一个小型应用程序 该应用程序应该解压缩以 gzip deflate 格式编码的数据 为了实现这一点 我使用 ZLIB 库 使用解压缩功能 问题是这个功能不起作用 换句话说 数据不是未压缩的 我在这里发布代码 int decompre
  • 从 Delphi VCL 样式获取特定字形

    我想从 VCL 样式获取特定的位图 并将其设置为按钮上的图像 它实际上是帮助问号 在位图样式编辑器中是来自表单的 btnHelp 图像 要从 VCL 样式获取视觉元素 字形 您必须使用GetElementDetails和TCustomSty
  • 如何比较枚举类型集

    从某个时刻开始 我厌倦了编写设定条件 and or 因为对于更多的条件或更长的变量名 重新编写会变得笨拙且烦人 所以我开始写助手这样我就可以写ASet ContainsOne ceValue1 ceValue2 代替 ceValue1 in
  • 阻止 IDE 自动添加使用单位

    我正在将 Lazarus 项目转移到德尔福西雅图 Lazarus 项目依赖于 40 多个单元 包括控件 并具有多种应用程序 在所有项目的使用条款中 他们使用了以下内容 uses Classes SysUtils Forms Controls
  • H2161 重复资源[一个VCL项目可以有2个类名相同但命名空间不同的表单吗?]

    我尝试在 2 个不同的命名空间中创建具有相同类名的 2 个表单 FirstNameSpace ExampleFormName TExampleFormName SecondNameSpace ExampleFormName TExample
  • Delphi 中表单分发与其生命周期相关的接口对象的安全方法?

    我有一个 Delphi 表单 它提供接口对象背后的功能 代码的其他部分也通过属于该表单的属性获取引用 我无法将接口功能委托给子对象 因为太多的功能是由表单上的控件 组件提供的 我无法使用 TAggregateObject 或 TContai
  • 如何读取和更改 TEdit 控件的值?

    我有一个表格TForm1有 5TEdit and 2 TBitBtn 我还需要该程序 以便在输入数字数据后Edit1 and Edit2 on BitBtn1Click Edit1 and Edit2值将被求和并显示在Edit3 你想做这样
  • Delphi 的内存分析工具?

    我建立了一个项目并运行它 然后在 Process Explorer 中查看它 结果发现它在启动时使用的 RAM 比我想象的要多 5 倍 现在 如果我的程序运行得太慢 我会将其连接到分析器并让它告诉我什么正在使用我的所有周期 有没有类似的工具
  • 如何在拥有句柄时检查给定进程是否正在运行

    我在用ShellExecuteEx启动应用程序 成功开始阅读后TShellExecuteInfo hProcess获取已启动进程的句柄 我想定期检查我的应用程序启动的进程是否仍在运行 两个或多个同名进程可以同时运行 我想确保我的应用程序正在
  • WinForms:如何确定窗口是否不再活动(没有子窗口具有焦点)?

    我的应用程序使用多个窗口 我想隐藏一个特定窗口 以防应用程序失去焦点 当活动窗口不是应用程序窗口时 source https stackoverflow com questions 466354 how can i tell if a wi
  • TFrame继承重构

    我提出的另一个 TFrame IDE 注册组件问题 感谢各位程序员的帮助 尝试 Darrian 的 TFrame 继承建议here https stackoverflow com questions 382562 delphi visual
  • 如何以“正确”的方式处理带有空字节的 Python unicode 字符串?

    Question PyWin32 似乎很乐意将 null 终止的 unicode 字符串作为返回值 我想以 正确 的方式处理这些字符串 假设我得到一个像这样的字符串 u C Users Guest MyFile asy x00 x00sy
  • 如何将枚举类型放入字符串列表中?

    这行代码 ShowMessage GetEnumName TypeInfo TAlign 1 返回 alTop 当我想使用字符串变量 TAlign 而不是TAlign时 如何将枚举类型的所有值放入字符串列表中 就像是 ShowMessage
  • 为什么 TImage 旋转我的图像?

    编写一个移动应用程序 它从安全网站提取图像 如下所示 第一个图像 提取不正确 注意网络版本与移动版本 第二个图像在网站上正确显示 但 Delphi TImage 由于某种原因正在旋转它我不明白为什么 旋转设置为 0 并且在 TImage 组
  • 使用 TArray 而不是 Array of T 的原因是什么?

    我正在将遗留的 Delphi 应用程序迁移到 Delphi XE2 我想知道是否有充分的理由替换定义为的数组Array of MyType to TArray
  • WndProc调用机制(WinAPI)

    我试图了解 Windows 应用程序是如何工作的 有一个WndProc函数 其中发生消息处理 LRESULT CALLBACK WndProc HWND hwnd UINT msg WPARAM wParam LPARAM lParam s
  • 如何删除Windows 10版本1809剪贴板历史记录?

    如果我启用剪贴板历史记录 https www windowscentral com how use new clipboard windows 10 october 2018 update在 Windows 10 版本 1809 上 它将开
  • 在 Delphi 中将对象转换为 OleVariant

    有没有办法在 OleVariant 中传递包装并解开 TObject 后代 我正在尝试跨自动化对象传递 TObject 我知道这不是一个好主意 但我没有更好的选择 该对象将在来自同一自动化 dll 的对象之间传递 如果这有什么区别的话 像这

随机推荐

  • Java进程内存使用量不断增加

    前提条件 具有 16 GB RAM 的电脑 Ubuntu 16 10 x64 上安装了 JDK 1 8 x 一个基于 Spring 的标准 Web 应用程序 部署在 Tomcat 8 5 x 上 Tomcat 配置了以下参数 CATALIN
  • Python/Django 时间戳,包括毫秒

    我需要按以下格式打印 并传递给外部 API 当前日期时间 DD MM YYYY HH MM SS SSS 最后 3 个SSS表示毫秒 我知道如何使用 Python 打印当前的日期时间 最多微秒 strftime http docs pyth
  • 检查 CalledProcessError 的输出

    我正在使用 python 子进程模块中的 subprocess check output 来执行 ping 命令 我是这样做的 output subprocess check output ping c 2 W 2 1 1 1 1 它引发
  • 如何正确配置 NSFetchedResultsController

    我将 NSFetchedResultsController 放入我的代码中 这样我就可以对表视图数据进行很好的自动分段 所以我正在运行测试以确保一切正常 我的持久存储中有一个 Book 实体 我将首先以旧方式执行获取 然后尝试使用 NSFe
  • Django Admin:根据先前的字段值填充字段

    我在 django admin 中有一个模型如下 ChoiceA on false on false on true on true ChoiceB always always never never id models CharField
  • SAFESEH:NO 选项的实际作用

    我正在尝试使用boost asio spawn功能就像在example http www boost org doc libs 1 55 0 doc html boost asio example cpp03 spawn echo serv
  • 使用 Javascript 向用户发送 HTTP 附件(打开浏览器的“另存为...”对话框)

    我是网络开发的新手 所以如果这个问题很菜鸟 我深表歉意 我想在 Javascript 中请求时向用户提供服务器硬盘上的文件 即发送 HTTP 附件以触发浏览器的 另存为 对话框 用户单击页面上的按钮 服务器根据他 她的一些帐户设置 和其他参
  • 在 Unity 中查找一组 3D 点的定向边界框

    我有一组 3D 点 或者实际上是小球体 我需要使用 Unity 3D 将它们包围在尽可能小的 3D 框内 在封闭框只能移动和缩放的情况下 解决方案非常简单 您只需迭代所有点并封装每个点即可 但我还需要找到盒子的最佳方向 因此 为了用 ASC
  • 使用 R 在 postgres 中设置模式名称

    我正在使用 R 连接到 PostgreSQL 数据库 使用以下函数完成连接 dbConnect m dbname dbname host host port port user user password password m是驱动程序 p
  • Java Applet 使用 Chrome 浏览器启动客户端程序的替代方案是什么?

    我正在使用 ASP net 和 C 开发 Web 应用程序 我的目标是检查客户端计算机上的桌面应用程序 如果它存在 那么我应该启动它 否则 如果它不存在 我们应该下载 安装然后启动它 我可以使用 Java Applet 开发这个模块 但不幸
  • Perl 函数名称冲突

    我遇到的情况是 我正在使用的模块有一个函数 其名称与我自己的模块中的函数完全相同 当我尝试调用模块中的函数时 OO Perl 所以 self gt function 它改为从其他模块调用该函数 我已经通过重命名我的函数来解决这个问题 但有趣
  • 如何处理Excel工作表中的数据更改事件以刷新所有数据透视表?

    我有一个应用于工作表及其更改的 VBA 代码 因此 每当工作表中有新条目或删除 任何更改 时 它都会刷新附加到它的所有数据透视表 Private Sub Worksheet Change ByVal Target As Range This
  • 检查python脚本中是否挂载了NFS共享

    我编写了一个 python 脚本 该脚本依赖于某个可用的 NFS 共享 如果未安装 NFS 共享 它会很乐意将文件复制到应安装的本地路径 但稍后当它尝试将在 NFS 服务器上创建的某些文件复制回来时会失败 我想专门捕获这个错误 这样我就可以
  • 使用 PNG 图像作为 GrabCut 的蒙版

    我有一个带有绿色和红色线条以及透明背景的 png 图像 我需要使用它作为执行 GrabCut 的遮罩 但我得到了意想不到的结果 这是我的代码 find the mask Mat mask mask create image size CV
  • 关闭弹出窗口并导航到 jQuery Mobile 中的另一个页面

    当用户按下弹出窗口内的按钮时 我试图关闭弹出窗口 对话框 并导航到另一个页面 单页面应用程序 多个 页面 jQM 1 4 0 如果我点击弹出窗口中的 是 按钮 它将导航到我想要的 page3 然后跳回起始页 如果我注释掉 popup clo
  • Go 中的一流函数

    我来自 JavaScript 它具有一流的函数支持 例如 您可以 将一个函数作为参数传递给另一个函数 从函数返回一个函数 有人能给我一个例子来说明如何在 Go 中做到这一点吗 Go语言和函数式编程 http livingcode org 2
  • MSMQ 或 Service Broker 或用于 FIFO 消息处理的批量插入?

    我们有一个场景 需要针对传入的实时事件对数据库使用更新 插入查询 我们可以选择下面提供的任何一个选项 1 MSMQ 2 SQL 服务代理 3 自定义构建的缓存机制 使用文件缓存 批量插入 触发器将插入转换为更新 如果行已存在 等 我们没有使
  • 如何在 GitHub 操作构建期间引用我的存储库中的目录?

    我有一些测试数据用于 pytest 的单元测试 我用环境变量设置了它们的位置 查看我的 pytest 日志 构建会看到环境变量 但它们引用的位置不存在 在 GitHub Actions 文档中 存储库应位于 home runner Repo
  • 在 Glassfish 服务器上的 Web 服务中使用数据库时出现“找不到合适的驱动程序”错误

    我有一个 Java Web 应用程序 并使用来自消费者 Java 应用程序的操作来处理 MySQL 数据库 当我尝试连接到数据库时 我得到 No suitable driver found for jdbc mysql localhost
  • 检索 Delphi 窗口句柄

    我正在尝试从外部应用程序获取 Delphi 应用程序的窗口句柄 我可以看到创建了一些窗口 TApplication TFrmMain 和其他一些窗口 并且我知道 TApplication 是 控制器 但从不可见 但是 我可以读取真实窗口的值