Sandboxie/SandboxiePlus/SandMan/Troubleshooting/Sandboxing/SBIEMSG/SBIEFIXPC.js

35 lines
1.3 KiB
JavaScript

/*
* group: library
* class: sandboxing
* name: fix parental controls breaking sandboxie
* description: stops AppId driver and AppIdSvc service and disables the offending policy file
*
*/
function try_fix_PC_SRP()
{
let form = [
{id: 'stop', name: 'Stop AppIdSvc service and AppId driver (temporary fix)', type: 'radio'},
{id: 'disable', name: 'Disable Parental Control Policy', type: 'radio'},
{id: 'failed', name: 'The above mitigations did not work', type: 'radio'},
];
let obj = wizard.showForm(form, tr('It seems you are using a non-administrative user account on a system with enabled parental controls, this is known to be incompatible with Sandboxie.\nYou have the following options to resolve the issue.'));
//_debugger();
if(obj.failed){
wizard.setResult(false, 'Available mitigations failed');
return;
}
let command = '/c net stop AppIdSvc & net stop AppId';
if(obj.disable)
command += ' & move %systemroot%\\system32\\AppLocker\\Plugin.133422605925491691.Policy %systemroot%\\system32\\AppLocker\\Disabled__Plugin.133422605925491691.Policy__'
let ret = system.execute('cmd.exe', command, {elevate: true});
if(ret.error)
wizard.setResult(false, 'Failed to execute recured command: ' + ret.error);
else
wizard.setResult(true);
}