将IntPtr与IComparer <t> </t>一起使用

时间:2013-06-11 08:36:08

标签: c# .net 32bit-64bit intptr icomparer

这里有三个相关问题:

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

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

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

1 个答案:

答案 0 :(得分:1)

  

为什么&lt;和&gt;运营商没有在这个结构上实施?

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

IntPtr.Equals