目前,我在其他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':未声明的标识符。 需要帮助。
答案 0 :(得分:1)
您需要将vUrl从VARIANT*
(不熟悉该类型)转换为const wchar_t*
类型的对象,并在该结果对象上调用functionHtml
。您收到“未声明的标识符”错误的原因是您尝试调用functionHtml(url)
,尽管在您尝试进行调用的范围内没有名为url
的变量;您需要创建自己的const wchar_t*
类型变量,以用作functionHtml()
的参数。