|
|
@@ -1,5 +1,6 @@ |
|
|
|
const { any } = require('bbhverse'); |
|
|
|
const fs = require('fs') |
|
|
|
var path = require('path'); |
|
|
|
|
|
|
|
var cli = require('./cliverse') |
|
|
|
var nodeShellExec = cli.nodeShellExec; |
|
|
@@ -138,14 +139,21 @@ var shell_verse = { |
|
|
|
}).then((exitcode) => { |
|
|
|
console.log('Elevated') |
|
|
|
__isElevated = true; |
|
|
|
}).catch(() => { |
|
|
|
shell_verse.acquireElevationState = ()=> Promise.resolve(__isElevated); |
|
|
|
shell_verse.isElevated = () => { return Promise.resolve(__isElevated)} |
|
|
|
return __isElevated |
|
|
|
}).catch((e) => { |
|
|
|
__isElevated = false; |
|
|
|
console.log('Not Elevated'); |
|
|
|
}).finally(()=>{ |
|
|
|
shell_verse.acquireElevationState = ()=> Promise.resolve(__isElevated); |
|
|
|
shell_verse.isElevated = () => { return Promise.resolve(__isElevated)} |
|
|
|
return __isElevated; |
|
|
|
console.log('Not Elevated'); |
|
|
|
return __isElevated |
|
|
|
}) |
|
|
|
// .finally(()=>{ |
|
|
|
// shell_verse.acquireElevationState = ()=> Promise.resolve(__isElevated); |
|
|
|
// shell_verse.isElevated = () => { return Promise.resolve(__isElevated)} |
|
|
|
// // return __isElevated; // Value returned from finally is not supported by node. |
|
|
|
// }) |
|
|
|
} |
|
|
|
|
|
|
|
, getTaskCheckExists : cli.createTask('getTaskCheckExists', 'where') |
|
|
@@ -175,7 +183,7 @@ var shell_verse = { |
|
|
|
console.log('result : ' + JSON.stringify(r)) |
|
|
|
Object.keys(processedArgs).forEach((v) => { v != '_' ? namedArgs.push('--' + v + '=' + processedArgs[v]) : null; }) |
|
|
|
// PB : TODO -- Convert all the cli args back to string. |
|
|
|
var args = [`${selectedinstance.root}/.elxr/run-${taskToRun.runtimestamp}/windowselevate.hta`].concat(processedArgs._) |
|
|
|
var args = [ path.normalize(`${selectedinstance.root}/.elxr/run-${taskToRun.runtimestamp}/windowselevate.hta`) ].concat(processedArgs._) |
|
|
|
namedArgs.length > 0 ? args = args.concat(namedArgs.join(' ')) : null; |
|
|
|
args.push('--runas=self'); |
|
|
|
var elevatedruntimestamp = (new Date()).getTime() |