WatIn查找中的谓词.的方法

本文关键字:谓词 方法 查找 WatIn | 更新日期: 2023-09-27 18:06:23

在Watin脚本中,我想附加到另一个浏览器的条件- "新IE的句柄不等于当前IE的句柄",这是我的代码:

var hwnd = currentIE.hWnd;
var newIE= Browser.AttachTo<IE>(Find.By("hwnd", handle => !handle.Equals(hwnd)  ));

来自Visual Studio的警告:

"suspicious comparison: there is no type in the solution which is inherited from both 'string' and 'System.IntPtr'

怎么了?

WatIn查找中的谓词.的方法

我不知道Watin是什么,但显然handlehwnd有不同的类型(stringIntPtr),与Equals比较没有意义。

无论哪个是字符串,您都可以尝试将其转换为IntPtr:

static IntPtr ParseIntPtr (string s)
{
    s = s.Replace ("0x", "");
    return (IntPtr) int.Parse(s, System.Globalization.NumberStyles.AllowHexSpecifier);
}