Закрепление на начальном экране
Привет всем. Есть скрипт на js, закрепляющий несколько приложений на начальном экране. На моем компьютере проблем не возникло, но на других при выборе пункта меню посредством DoIt появляется ошибка 800a0046 - разрешение отклонено. Почему блокируется запуск метода DoIt? Запускаю от администратора, использование DCOM разрешено.
Код:
function PinToStart(targetfile, lnkname) {
if (!objFSO.FileExists(WshShell.ExpandEnvironmentStrings(targetfile))) return false;
var lnkfile = objProgFolder.Self.Path + '\\' + lnkname + '.lnk';
if (!objFSO.FileExists(WshShell.ExpandEnvironmentStrings(lnkfile))) return false;
var objFolderItem = objProgFolder.ParseName(lnkname + '.lnk');
var colVerbs = objFolderItem.Verbs();
for (var i=0; i<colVerbs.count; i++)
if (~colVerbs.Item(i).name.toLowerCase().replace('&','').indexOf("закрепить на началь"))
colVerbs.Item(i).DoIt(); // <- ошибка
return getPinned(lnkfile);
};
|
Это давно уже запретили. Работает только на старых необновлённых системах. У них и в системном API я не видел функций для закрепления в меню "пуск". Только для удаления есть.
|
Цитата:
Цитата Sham
У них и в системном API я не видел функций для закрепления в меню "пуск". »
|
Все же что-то есть - либо winapi, либо, вероятнее всего, com, т.к. syspin на чистой 21h2 ltsc без проблем добавляет приложения на начальный экран. Какой-то параметр системы по-умолчанию блокирует использование этих методов.
|
нет, там PE Injection. Doit работает в контексте експлорера. Это не API, и это вряд ли нравится разработчикам Windows, поэтому на стабильность этого способа я бы тоже не рассчитывал.
|
Цитата:
Цитата Sham
нет, там PE Injection. Doit работает в контексте експлорера. Это не API, и это вряд ли нравится разработчикам Windows, поэтому на стабильность этого способа я бы тоже не рассчитывал. »
|
Жаль. Тогда буду пользоваться тем, что есть...
|
Время: 05:09.
© OSzone.net 2001-