我需要确定Windows Mobile 6.1设备上的Mobile Internet Explorer版本。这样我就可以报告移动Internet Explorer使用的相同用户代理字符串。用户代理字符串格式最近为changed以包含版本信息。
我的应用程序在Windows Mobile设备上运行,使用WebBrowser控件创建浏览器shell。
ObtainUserAgentString()
API未返回与Internet Internet Explorer正在使用的值相同的值。
当我尝试从“IExplore.exe”获取版本信息时,GetFileVersionInfoSize()
返回0,GetLastError()
为0x716。很可能是因为IE Mobile是XIP。
还有其他方法可以确定Mobile Internet Explorer版本吗?
答案 0 :(得分:1)
我不知道IEMobile自己的API,但是如何将一些JScript注入浏览器控件的Document并访问navigator.userAgent
?
(为Windows Mobile 6.5的头痛做好准备.WebBrowser控件的行为与浏览器本身不同。尽管IEMobile的版本号在6.5上与6.1.4相同,尽管两者之间的渲染非常不同。叹气。)
答案 1 :(得分:0)
IE移动设备通常使用类似“Windows CE”或“Windows Mobile”的用户代理。要确定这一点,只需做一个简单的事情:
myUserAgentString = request.getHeader("User-Agent")
if ( myUserAgentString.indexOf("CE") >= 0 || myUserAgentString.indexOf("MOBILE") >= 0) {
//this is IE
}
一旦你发现了那么你就可以像IE一样对待它,如果那就是你想要的那样。