// Runs the HTA contact workflow against a disposable MDB, with a small DOM stub. var fs = new ActiveXObject("Scripting.FileSystemObject"); var root = fs.GetParentFolderName(fs.GetParentFolderName(WScript.ScriptFullName)); var dbPath = WScript.Arguments(0); var csvPath = WScript.Arguments(1); var elements = {}; var window = { location: { pathname: "/" + fs.BuildPath(root, "MassMailer.hta").replace(/\\/g, "/") } }; var document = { getElementById: function (id) { if (!elements[id]) elements[id] = { innerText: "", value: "", disabled: false, firstChild: null, appendChild: function () {}, removeChild: function () {} }; return elements[id]; }, createElement: function () { return { innerText: "", className: "", appendChild: function () {} }; } }; function assert(condition, message) { if (!condition) throw new Error(message); } try { eval(fs.OpenTextFile(fs.BuildPath(root, "src\\contacts.js"), 1).ReadAll()); var html = fs.OpenTextFile(fs.BuildPath(root, "MassMailer.hta"), 1).ReadAll(); var match = /