void BeforeNavigate2(          IDispatch *pDisp,
    VARIANT *&url,
    VARIANT *&Flags,
    VARIANT *&TargetFrameName,
    VARIANT *&PostData,
    VARIANT *&Headers,
    VARIANT_BOOL *&Cancel
);DWebBrowserEvents2 有如上的一个事件
有几个疑问:
1: VARIANT *&url   为什么url前面要加 *& ?
2:如何获取url的值小弟初学 多指教

解决方案 »

  1.   

    获取URL值的意思是
    如何转化为LPCWSTR 或者BSTR之类的
    以前不用C++的。。 对C++的字符类型很头疼
    如果哪位大哥能够系统帮忙讲下的话 多谢了
      

  2.   

    USES_CONVERSION;CComVariant strUrl(*url);
    strUrl.ChangeType(VT_BSTR);
    MessageBox(OLE2T(strUrl.bstrVal));
      

  3.   

    运行到CComVariant strUrl(*url);句时
    抛出异常:
    IEXPLORE.EXE 中的 0x775f47cc 处未处理的异常: 0xC0000005: 读取位置 0x00000008 时发生访问冲突
    为什么..
      

  4.   

    什么叫访问冲突??
    我是在IE7运行的
    在做一个BHO
    需要获取地址栏的URL 再根据URL做相应的处理
      

  5.   

    对了, VARIANT *&url   为什么url前面要加 *& ?
      

  6.   

    MessageBox(OLE2T(strUrl.bstrVal));
    这个也通不过
    我改成了
    MessageBox(NULL, OLE2CW(strUrl.bstrVal), L"Hi", MB_OK);