AutomationElement NativeWindowHandle x64兼容性

时间:2015-04-23 21:16:44

标签: c# int ui-automation intptr

在测试Microsoft UIAutomationClient的AutomationElements时,我发现AutomationElementInformation NativeWindowHandle getter按照spec返回int,如下例所示:

        var ae = AutomationElement.FromHandle(new IntPtr(0x35100C));
        MessageBox.Show(ae.Current.NativeWindowHandle.ToString("X8"));

在我的上面的示例中,我只使用了我在x64系统中找到的最大的随机句柄。目前,这些值足够低以适合int类型(32位)。基于我的研究,它应该实际返回IntPtr,因为IntPtr可以处理x64系统中的更大值。

现在提出我的问题:

  1. Windows x64系统中最大的可能处理方式 适合NativeWindowHandle返回的int32?
  2. 如果没有,我该怎么做才能缓解这个问题?
  3. 更新#1: 任何权威链接(即MSDN等)与@HansPassant提到的关于Windows保持处理的兼容性低于int.MaxValue的兼容性原因都很棒。

0 个答案:

没有答案