$theTitle=wp_title(" - ", false); if($theTitle != "") { ?>
About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like
25 Nov // php the_time('Y') ?>
A while ago I created a script that I can run as embedded script in Altiris that creates a Server Manager Answer File (for Server 2008).
I could have simply done an echo >answer.xml but I wanted a well formed XML that could be read and displayed in an XML editor or Internet Explorer when needed.
I use the Microsoft.XMLDom object in the script the create the XML and I think the code is easy to understand so I will just show it here:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | ' Create Server Manager answer file 'vbscript Dim xmlDoc : Set xmlDoc = CreateObject("Microsoft.XMLDom") ' <!--l version="1.0" encoding="UTF-16" standalone="no--> Dim objIntro: Set objIntro = xmlDoc.createProcessingInstruction("xml","version='1.0'") xmlDoc.insertBefore objIntro, xmlDoc.childNodes(0) ' Root element Dim root : Set root = xmlDoc.createElement("ServerManagerConfiguration") 'Choose install or remove here root.setAttribute "Action", "Install" root.setAttribute "xmlns", "http://schemas.microsoft.com/sdm/Windows/ServerManager/Configuration/2007/1" xmlDoc.appendChild root ' Start Here Add "Feature", "RSAT-ADDS" Add "Role", "Web-Server" Add "RoleService", "Web-Metabase" Add "RoleService", "Web-ISAPI-Ext" Add "RoleService", "Web-Lgcy-Mgmt-Console" Add "RoleService", "Web-Basic-Auth" Add "RoleService", "Web-Digest-Auth" Add "RoleService", "Web-Windows-Auth" Add "RoleService", "Web-Dyn-Compression" Add "Feature", "RPC-over-HTTP-Proxy" Add "RoleService", "Web-Http-Redirect" ' Save Save "answer.xml" Sub Add(NodeType, Name) Set Child = xmlDoc.createElement(NodeType) Child.SetAttribute "Id", Name root.appendChild(Child) End Sub Sub AddAttrib(NodeType, Name, Attribute, Value) Set Child = xmlDoc.createElement(NodeType) Child.SetAttribute "Id", Name Child.SetAttribute Attribute, Value root.appendChild(Child) End Sub Sub Save(Filename) Dim rdr : Set rdr = CreateObject("MSXML2.SAXXMLReader") Dim wrt : Set wrt = CreateObject("MSXML2.MXXMLWriter") 'Set properties on the XML writer. wrt.byteOrderMark = True wrt.omitXMLDeclaration = False wrt.indent = True 'Set the XML writer to the SAX content handler. Set rdr.contentHandler = wrt Set rdr.dtdHandler = wrt Set rdr.errorHandler = wrt rdr.putProperty "http://xml.org/sax/properties/lexical-handler", wrt rdr.putProperty "http://xml.org/sax/properties/declaration-handler", wrt 'Parse the DOMDocument object. rdr.parse xmlDoc 'And Save it Dim fso : Set fso = CreateObject("scripting.filesystemobject") Dim objXMLFile: Set objXMLFile = fso.CreateTextFile(FileName, True, True) objXMLFile.Write(wrt.output) objXMLFile.Close End Sub |
Sample output:
Leave a reply