错误C2065:未声明的标识符

时间:2010-05-04 05:04:29

标签: c++ visual-studio

目前,我在其他cpp文件中有这个功能:

  UINT32 functionHtml(const wchar_t *url)
  {
     WinHttpClient client(url);
     client.SendHttpRequest();
     wstring httpResponseHeader = client.GetHttpResponseHeader();
     wstring httpResponse = client.GetHttpResponse();     
     writeToLog(httpResponse.c_str());

     return 0;
  }

我有另一个cpp文件,我想执行上面文件中的内容。这是另一个文件的代码:

HRESULT CButtonDemoBHO::onDocumentComplete(IDispatch *pDisp, VARIANT *vUrl){
ATLTRACE("CButtonDemoBHO::onDocumentComplete %S\n", vUrl->bstrVal);

//  <---- i would like to call funtionHTML here or ..

if (isMainFrame(pDisp)){
    m_normalPageLoad=false;

//  <---- here..

  MessageBox(m_hWnd, L"Main Document has completed loading", L"Document Complete", MB_OK);

  return S_OK;
 }
 return S_OK;

}

我收到错误C2065:'url':未声明的标识符。 需要帮助。

1 个答案:

答案 0 :(得分:1)

您需要将vUrl从VARIANT*(不熟悉该类型)转换为const wchar_t*类型的对象,并在该结果对象上调用functionHtml。您收到“未声明的标识符”错误的原因是您尝试调用functionHtml(url),尽管在您尝试进行调用的范围内没有名为url的变量;您需要创建自己的const wchar_t*类型变量,以用作functionHtml()的参数。