問題の説明: xml ファイルを読み取り、特定のノード (要素) にトラバースし、特定の名前空間宣言がない場合は、必要な名前空間宣言を追加し、ファイルを書き出します。
Microsoft の MSXML DOM API を使用して C++ でこれを行う必要があります。この msdnリファレンスによると、IXMLDOMNode COM オブジェクトの namespaceURI プロパティは読み取り専用です。回避策を高く評価します。
編集:回避策にかなりの時間を費やしました:必要な名前空間を持つ同じドキュメントに新しい兄弟ノードを作成し、元のノードのすべての子要素をこの新しいノードに移動してから、元のノードを削除します。子ノードは以前のデフォルトの名前空間を保持するため、これは機能しません。
そして、この単純なアイデアが私を襲い、うまくいきましたが、将来それが私を噛むかどうかはわかりません.要素に「xmlns」属性を作成して、目的の名前空間値を与えてください! コメントはありますか?