Войти

Показать полную графическую версию : [решено] Закрепление на начальном экране


janxp
20-05-2024, 11:31
Привет всем. Есть скрипт на 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);
};

Sham
20-05-2024, 17:41
Это давно уже запретили. Работает только на старых необновлённых системах. У них и в системном API я не видел функций для закрепления в меню "пуск". Только для удаления есть.

janxp
20-05-2024, 22:24
У них и в системном API я не видел функций для закрепления в меню "пуск". »
Все же что-то есть - либо winapi, либо, вероятнее всего, com, т.к. syspin на чистой 21h2 ltsc без проблем добавляет приложения на начальный экран. Какой-то параметр системы по-умолчанию блокирует использование этих методов.

Sham
20-05-2024, 23:35
нет, там PE Injection. Doit (https://github.com/0x546F6D/pttb_-_Pin_To_TaskBar/blob/1c48814e594e7b3e70ee1ffdb2aa8639aa602d4c/pttb.c#L314) работает в контексте експлорера. Это не API, и это вряд ли нравится разработчикам Windows, поэтому на стабильность этого способа я бы тоже не рассчитывал.

janxp
28-06-2024, 18:40
нет, там PE Injection. Doit работает в контексте експлорера. Это не API, и это вряд ли нравится разработчикам Windows, поэтому на стабильность этого способа я бы тоже не рассчитывал. »
Жаль. Тогда буду пользоваться тем, что есть...




© OSzone.net 2001-2012