0

这里有三个相关的问题:

  • IntPtr结构显然没有实现<>运算符。有没有办法在不将结构转换为 int 或 long 的情况下执行这种比较?
  • 为什么<and>运算符没有在这个结构上实现?
  • 我正在从 32 位进程枚举窗口。似乎还包括来自 64 位进程的 Windows,这很好。如何判断是在 IntPtr 结构上使用 ToInt32 还是 ToInt64?

上下文:Windows 7(64 位)、VS 2010、WinForms(32 位)。

我要提取的目标窗口包括 64 位应用程序,例如包含小工具的 Windows 边栏。如果我有任何错误的假设,请告诉我。

4

1 回答 1

1

为什么在这个结构上没有实现 < 和 > 操作符?

因为没有必要(在大多数情况下)比较指针的地址是否小于或大于某个其他数字或其他地址。顺便说一下,IntPtr 类也提供了相等功能。

IntPtr.Equals

于 2013-06-11T08:41:58.607 回答