// Save File To XML
var SourceFile = "C://manage.vsd";
var TargetXMLFile = "D://tmp//test.xml";
var ado_stream = new ActiveXObject("ADODB.Stream");
var xml_dom = new ActiveXObject("Microsoft.XMLDOM");
xml_dom.loadXML('<?xml version="1.0" ?> <root/>');
xml_dom.documentElement.setAttribute("xmlns:dt", "urn:schemas-microsoft-com:datatypes");
var l_node1 = xml_dom.createElement("file1");
l_node1.dataType = "bin.base64";
ado_stream.Type = 1; // 1=adTypeBinary
ado_stream.Open();
ado_stream.LoadFromFile(SourceFile);
l_node1.nodeTypedValue = ado_stream.Read(-1); // -1=adReadAll
ado_stream.Close();
xml_dom.documentElement.appendChild(l_node1);
xml_dom.save(TargetXMLFile);
// Restore File From XML
var SourceFile = "C://manage.vsd";
var TargetXMLFile = "D://tmp//test.xml";
var ado_stream = new ActiveXObject("ADODB.Stream");
var xml_dom = new ActiveXObject("Microsoft.XMLDOM");
xml_dom.loadXML('<?xml version="1.0" ?> <root/>');
xml_dom.documentElement.setAttribute("xmlns:dt", "urn:schemas-microsoft-com:datatypes");
var l_node1 = xml_dom.createElement("file1");
l_node1.dataType = "bin.base64";
ado_stream.Type = 1; // 1=adTypeBinary
ado_stream.Open();
ado_stream.LoadFromFile(SourceFile);
l_node1.nodeTypedValue = ado_stream.Read(-1); // -1=adReadAll
ado_stream.Close();
xml_dom.documentElement.appendChild(l_node1);
xml_dom.save(TargetXMLFile);