Загрузить файлы в «windows/kisser»
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
var shell = WScript.CreateObject('WScript.Shell');
|
||||
var fso = WScript.CreateObject('Scripting.FileSystemObject')
|
||||
|
||||
function getDir(path){
|
||||
return path.split('\\').slice(0, -1).join('\\');
|
||||
}
|
||||
|
||||
function isRegExists(regParam){
|
||||
try{
|
||||
shell.RegRead(regParam);
|
||||
return true;
|
||||
}catch(e){
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function getKeys(){
|
||||
var HKCR = 2147483648;
|
||||
|
||||
var objService = GetObject('winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\default');
|
||||
var objReg = objService.Get('StdRegProv');
|
||||
|
||||
var objMethod = objReg.Methods_.Item('EnumKey');
|
||||
var objParamsIn = objMethod.InParameters.SpawnInstance_();
|
||||
objParamsIn.hDefKey = HKCR;
|
||||
objParamsIn.sSubKeyName = '';
|
||||
|
||||
var objParamsOut = objReg.ExecMethod_(objMethod.Name, objParamsIn);
|
||||
|
||||
if(objParamsOut.ReturnValue === 0){
|
||||
if(objParamsOut.sNames != null){
|
||||
return objParamsOut.sNames.toArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var regKs = getKeys();
|
||||
for(var i in regKs){
|
||||
var key = 'HKCR\\'+regKs[i];
|
||||
if(isRegExists(key+'\\DefaultIcon\\')){
|
||||
WScript.Echo('kissing: '+key);
|
||||
try{
|
||||
shell.RegWrite(key+'\\DefaultIcon\\', getDir(WScript.ScriptFullName)+'\\boykisser.ico,0', 'REG_SZ');
|
||||
}catch(e){
|
||||
WScript.Echo('failed: '+key);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user