0

好的,所以我有一个 Microsoft Access 表单,其中包含一个我试图从 .Net 处理的文本框

我的表格如下:

框架测试

使用 Spy++,我找到了我的文本框句柄。屏幕显示如下:

间谍加

这个手柄是我的 PC 或 frmTest 独有的吗?例如,如果我在另一台计算机上打开 frmTest,我的文本框的句柄是否仍然是 001E1A6E?

谢谢

4

2 回答 2

3

窗口句柄在创建窗口时分配。如果你多次运行一个应用程序,一个应用程序窗口每次都会获得一个新的窗口句柄。如果应用程序销毁并重新创建窗口,它也会获得一个新句柄。

句柄在进程中是唯一的。即您可以将窗口句柄传递给另一个应用程序,它仍然有效(与内核句柄不同)。我不确定它们是否在每个桌面或每个运行的 Windows 实例中都是唯一的。


您应该使用来自 Spy++ 的信息来创建一系列FindWindow(Ex)调用,以获取所需控件的句柄。

于 2012-02-26T17:52:43.943 回答
0

它仅对于此窗口的此实例是唯一的。如果您完全退出 MS Access,然后再次启动您的应用程序,您将获得另一个句柄。

于 2012-02-26T17:52:24.957 回答