描述
将浏览器导航到可能无法表示为URL的位置,例如指向Microsoft Windows Shell命名空间中的实体的项目标识符列表(PIDL)的指针。
C++ 语法
HRESULT Navigate2( VARIANT *vUrl, VARIANT *vFlags, VARIANT *vTargetFrameName, VARIANT *vPostData, VARIANT *vHeaders ); |
PowerBASIC 语法
METHOD Navigate ( _ BYREF vUrl AS VARIANT, _ BYREF vFlags AS VARIANT, _ BYREF vTargetFrameName AS VARIANT, _ BYREF vPostData AS VARIANT, _ BYREF vHeaders AS VARIANT _ ) |
参数
vURL |
[in]指向VARIANT的指针,其中包含指定要导航的URL的类型为VT_BSTR的字符串,或表示要导航到的文件夹的PIDL。 |
vFlags |
[in]指向一个类型为long的VARIANT的指针,指定是否将资源添加到历史列表,是否读取或写入缓存,以及是否在新窗口中显示资源。该变量可以是由BrowserNavConstants枚举定义的值的组合。 |
vTargetFrameName |
[in]指向包含要在其中显示资源的框架名称的字符串类型的VARIANT的指针。此参数的可能值为: _BLANK 将链接加载到新的未命名窗口中。 _PARENT 将链接加载到链接所在文档的直接父项中。 _SELF 将链接加载到链接被点击的同一个窗口中。 _TOP 将链接加载到当前窗口的正文中。 <WINDOW_NAME> 一个命名的HTML框架。如果没有与指定目标名称匹配的框架或窗口,则会为指定的链接打开一个新窗口。 |
vPostData |
[in]指向要使用HTTP POST事务发送的数据的指针。例如,POST事务用于发送由HTML表单收集的数据。如果此参数未指定任何帖子数据,导航将发出HTTP GET事务。如果URL不是HTTPURL,则忽略此参数。 |
vHeaders |
[in]指向包含要发送到服务器的HTTP头的值的指针。这些标题将添加到默认的Microsoft Internet Explorer标头。标题可以指定服务器所需的操作,传递到服务器的数据类型或状态代码等内容。如果URL不是HTTPURL,则忽略此参数。 |
OBJRESULT
返回以下值之一:
S_OK |
操作成功。 |
E_INVALIDARG |
一个或多个参数无效。 |
E_OUTOFMEMORY |
内存不足。 |
备注
该方法扩展了导航方法以允许shell集成;然而,原始导航方法仍然可以用于URL导航(Navigate2不会使导航过时)。
由PostData指定的帖子数据作为SAFEARRAY数据类型结构传递。VARIANT应为VT_ARRAY类型,并指向SAFEARRAY数据类型.SAFEARRAY数据类型应该是元素类型VT_UI1,维度一,元素数等于帖子数据的字节数。
在Internet Explorer 6或更高版本中,您只能在托管WebBrowser控件的应用程序的同一个域内浏览代码。否则,此方法被禁用。
在Windows Internet Explorer 7或更高版本中,当指定navOpenInNewTab或navOpenInBackgroundTab标志时,请勿将其与其他参数(TargetFrameName,PostData,头)或其他BrowserNavConstants标志组合。如果禁用标签浏览,或者如果无法创建选项卡,则调用将失败。如果发生这种情况,请选择其他导航方法,例如navOpenInNewWindow.
注意新标签页异步打开;该方法在创建选项卡后立即返回,这可以在新选项卡中的导航开始之前。目的地标签的IWebBrowser2界面不可用于来电者。Tab顺序不能保证,特别是如果这个方法被连续多次快速调用。