Я выполняю упражнение с библиотекой MsXML6 с Visual C ++, чтобы избавиться от зависимости от языков интерпретатора, таких как python, для анализа больших файлов.
Я следовал учебному пособию по msdn, однако при замене XML-файла на гораздо больший (более 300 МБ) программа отображает ошибку, из-за которой не удалось найти файл, и последующим вариантом является NULL.
Учебник: https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms767609(v%3dvs.85)
HRESULT hr = S_OK;
IXMLDOMDocument *pXMLDom = NULL;
IXMLDOMNodeList *pNodes = NULL;
IXMLDOMNode *pNode = NULL;
BSTR bstrQuery1 = NULL;
BSTR bstrQuery2 = NULL;
BSTR bstrNodeName = NULL;
BSTR bstrNodeValue = NULL;
DOMNodeType DOMType;
VARIANT varNodeValue;
VARIANT_BOOL varStatus;
VARIANT varFileName;
VariantInit(&varFileName);
CHK_HR(CreateAndInitDOM(&pXMLDom));
CHK_HR(VariantFromString(L"TestDoc.xml", varFileName));
CHK_HR(pXMLDom->load(varFileName, &varStatus));
if (varStatus != VARIANT_TRUE)
{
CHK_HR(ReportParseError(pXMLDom, "Failed to load DOM from TestDoc.xml"));
initSuccessful = false;
}
else
{
//Assigns the DOM object as a member variable to be used in other methods
pXMLDomClassVar = pXMLDom;
initSuccessful = true;
}
Я бы очень признателен за помощь.