I have an old project that I'm trying to upgrade. The project was compiled using visual studio platform toolset v141. I'm upgrading to v142.
This project uses msxml2 which is in cause of the following error.
When recompiling, I have multiple errors which are :
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(193): error MIDL2003: redefinition : NODE_INVALID
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(194): error MIDL2003: redefinition : NODE_ELEMENT
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(195): error MIDL2003: redefinition : NODE_ATTRIBUTE
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(196): error MIDL2003: redefinition : NODE_TEXT
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(197): error MIDL2003: redefinition : NODE_CDATA_SECTION
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(198): error MIDL2003: redefinition : NODE_ENTITY_REFERENCE
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(199): error MIDL2003: redefinition : NODE_ENTITY
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(200): error MIDL2003: redefinition : NODE_PROCESSING_INSTRUCTION
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(201): error MIDL2003: redefinition : NODE_COMMENT
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(202): error MIDL2003: redefinition : NODE_DOCUMENT
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(203): error MIDL2003: redefinition : NODE_DOCUMENT_TYPE
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(204): error MIDL2003: redefinition : NODE_DOCUMENT_FRAGMENT
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(206): error MIDL2003: redefinition : NODE_NOTATION
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(206): error MIDL2003: redefinition : tagDOMNodeType
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(221): error MIDL2003: redefinition : IXMLDOMNode
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(450): error MIDL2003: redefinition : IXMLDOMDocument
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(774): error MIDL2003: redefinition : IXMLDOMNodeList
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(884): error MIDL2003: redefinition : IXMLDOMNamedNodeMap
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(961): error MIDL2003: redefinition : IXMLDOMDocumentFragment
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(975): error MIDL2003: redefinition : IXMLDOMCharacterData
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1050): error MIDL2003: redefinition : IXMLDOMAttribute
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1083): error MIDL2003: redefinition : IXMLDOMElement
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1156): error MIDL2003: redefinition : IXMLDOMText
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1176): error MIDL2003: redefinition : IXMLDOMComment
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1190): error MIDL2003: redefinition : IXMLDOMProcessingInstruction
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1220): error MIDL2003: redefinition : IXMLDOMCDATASection
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1234): error MIDL2003: redefinition : IXMLDOMDocumentType
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1265): error MIDL2003: redefinition : IXMLDOMNotation
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1290): error MIDL2003: redefinition : IXMLDOMEntity
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1321): error MIDL2003: redefinition : IXMLDOMEntityReference
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1334): error MIDL2003: redefinition : IXMLDOMImplementation
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1356): error MIDL2003: redefinition : IXTLRuntime
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1430): error MIDL2003: redefinition : IXMLDOMParseError
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1523): error MIDL2003: redefinition : XMLDOMDocumentEvents
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(1653): error MIDL2003: redefinition : IXMLHTTPRequest
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(3443): error MIDL2003: redefinition : IXMLDocument2
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(3499): error MIDL2003: redefinition : IXMLElement2
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(3525): error MIDL2003: redefinition : IXMLAttribute
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\MsXml2.idl(3560): error MIDL2003: redefinition : DOMDocument
From what I understood with my research is that msxml.h and msxml2.h have common definitions. It was a known error years ago that was patched using idl command /D IMPORTED_MSXML /D __msxml_h__. Despite appending those macro definition to the IDL compiler, the issue still persist.