diff --git a/microscript/ILibDuktape_Polyfills.c b/microscript/ILibDuktape_Polyfills.c index b57aa91..e97441a 100644 --- a/microscript/ILibDuktape_Polyfills.c +++ b/microscript/ILibDuktape_Polyfills.c @@ -2334,7 +2334,7 @@ void ILibDuktape_Polyfills_JS_Init(duk_context *ctx) duk_peval_string_noresult(ctx, "addCompressedModule('agent-installer', Buffer.from('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', 'base64'));"); // identifer: Refer to modules/identifers.js - duk_peval_string_noresult(ctx, "addCompressedModule('identifiers', Buffer.from('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', 'base64'));"); + duk_peval_string_noresult(ctx, "addCompressedModule('identifiers', Buffer.from('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', 'base64'));"); // zip-reader, refer to modules/zip-reader.js duk_peval_string_noresult(ctx, "addCompressedModule('zip-reader', Buffer.from('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', 'base64'));"); diff --git a/modules/identifiers.js b/modules/identifiers.js index 6b9c81a..3bb9e5a 100644 --- a/modules/identifiers.js +++ b/modules/identifiers.js @@ -240,13 +240,66 @@ function macos_identifiers() return (ret); } +function win_chassisType() +{ + var child = require('child_process').execFile(process.env['windir'] + '\\System32\\wbem\\wmic.exe', ['wmic', 'SystemEnclosure', 'get', 'ChassisTypes']); + child.stdout.str = ''; child.stdout.on('data', function (c) { this.str += c.toString(); }); + child.stderr.str = ''; child.stderr.on('data', function (c) { this.str += c.toString(); }); + child.waitExit(); + + try + { + var tok = child.stdout.str.split('{')[1].split('}')[0]; + var val = tok.split(',')[0]; + return (parseInt(val)); + } + catch (e) + { + return (2); // unknown + } +} + +function win_systemType() +{ + var child = require('child_process').execFile(process.env['windir'] + '\\System32\\wbem\\wmic.exe', ['wmic', 'ComputerSystem', 'get', 'PCSystemType', '/FORMAT:CSV']); + child.stdout.str = ''; child.stdout.on('data', function (c) { this.str += c.toString(); }); + child.stderr.str = ''; child.stderr.on('data', function (c) { this.str += c.toString(); }); + child.waitExit(); + + return (parseInt(child.stdout.str.trim().split(',').pop())); +} + +function win_formFactor(chassistype) +{ + var ret = 'DESKTOP'; + switch (chassistype) + { + case 11: // Handheld + case 30: // Tablet + case 31: // Convertible + case 32: // Detachable + ret = 'TABLET'; + break; + case 9: // Laptop + case 10: // Notebook + case 14: // Sub Notebook + ret = 'LAPTOP'; + break; + default: + ret = win_systemType() == 2 ? 'MOBILE' : 'DESKTOP'; + break; + } + + return (ret); +} + switch(process.platform) { case 'linux': module.exports = { _ObjectID: 'identifiers', get: linux_identifiers }; break; case 'win32': - module.exports = { _ObjectID: 'identifiers', get: windows_identifiers }; + module.exports = { _ObjectID: 'identifiers', get: windows_identifiers, chassisType: win_chassisType, formFactor: win_formFactor, systemType: win_systemType }; break; case 'darwin': module.exports = { _ObjectID: 'identifiers', get: macos_identifiers }; @@ -294,6 +347,12 @@ module.exports.isBatteryPowered = function isBatteryOperated() { ret = true; } + else + { + // No Battery detected, so lets check if there is supposed to be one + var formFactor = win_formFactor(win_chassisType()); + return (formFactor == 'LAPTOP' || formFactor == 'TABLET' || formFactor == 'MOBILE'); + } } break; case 'darwin':