UNPKG

activex

Version:

Windows COM client.

44 lines (33 loc) 990 B
"use strict"; var addon = require("../../build/Debug/win32com"); var ActiveXObject = addon.ActiveXObject; var d = { DISPATCH_METHOD: 0x1, DISPATCH_PROPERTYGET: 0x2, DISPATCH_PROPERTYPUT: 0x4, DISPATCH_PROPERTYPUTREF: 0x8, LOCALE_SYSTEM_DEFAULT: 2048, LOCALE_USER_DEFAULT: 1024 }; function $call(member) { var dispIds = this.GetIDsOfNames([member]); //todo: check return value var args = [dispIds[0], d.DISPATCH_METHOD]; for (let i = 1; i < arguments.length; i++) args.push(arguments[i]); return this.Invoke.apply(this, args); } function $get(member) { var dispIds = this.GetIDsOfNames([member]); //todo: check return value var args = [dispIds[0], d.DISPATCH_PROPERTYGET]; for (let i = 1; i < arguments.length; i++) args.push(arguments[i]); return this.Invoke.apply(this, args); } ActiveXObject.prototype.$call = $call; ActiveXObject.prototype.$get = $get; module.exports = { ActiveXObject: ActiveXObject, d: d };