Re[2]: трансляция XML
От: ml  
Дата: 23.09.02 03:12
Оценка:
Здравствуйте AndrewVK!
трансляция вот так производится:
    CComPtr<IXSLTemplate> spIXSLTemplate;
    CComPtr<IXSLProcessor> spIXSLProcessor;
    CComPtr<IXMLDOMDocument2> spStyleSheet;
    VARIANT varValue;
    
    hr = ::CoInitialize(NULL);

    CComPtr<IXMLDOMDocument2> spXMLDOM;
    hr = spXMLDOM.CoCreateInstance(__uuidof(DOMDocument30));
    inputFile = L"xml\\start.xml";
    bSuccess = spXMLDOM->load(inputFile);

    hr = spIXSLTemplate.CoCreateInstance(__uuidof(XSLTemplate30));
    hr = spStyleSheet.CoCreateInstance(__uuidof(FreeThreadedDOMDocument30));

    spStyleSheet->async = VARIANT_FALSE;
    bSuccess = spStyleSheet->load(translatorFile);
    spIXSLTemplate->PutRefstylesheet(spStyleSheet);
                     
    spIXSLProcessor = spIXSLTemplate->createProcessor();

    spXMLDOM->async = VARIANT_FALSE;
    spIXSLProcessor->input = variant_t(spXMLDOM);
    bSuccess = spIXSLProcessor->transform();
    VARIANT res = spIXSLProcessor->output;

и res.bstrVal пишется в файл
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.