Информация фактически находилась в зоне DACL и может быть отредактирована из командной строки с помощью соответствующего инструмента .
Это удаляет предупреждение из «filename.lnk» (должно быть запущено из командной оболочки, я использую CMD для старых времен):
ICACLS filename.lnk /SetIntegrityLevel M /L
Целое дерево каталогов ссылок может быть обработано с помощью
ICACLS *.lnk /T /L /SetIntegrityLevel M
побежал из корневой папки.
Я думаю, что было бы возможно создать операцию оболочки («Разблокировать»), которая могла бы запустить команду ICACLS при щелчке правой кнопкой мыши на файле .LNK. Начальное руководство можно найти здесь (Vista, но Seven не должен быть слишком другим).
Создать команду меню «Разблокировать»
- Откройте
REGEDIT
утилиту. Применяются обычные меры предосторожности. REGEDIT может разрушить вашу систему! - Откройте
HKEY_CLASSES_ROOT
улей. - Найдите
lnkfile
запись. - Щелкните правой кнопкой мыши по lnkfile и выберите «Создать> Ключ».
- Создайте новый ключ с именем «shell».
- Повторите описанные выше шаги, чтобы создать ключ «Unblock» внутри «shell».
- Повторите выше, чтобы создать «команду» внутри «Разблокировать»
Измените значение по умолчанию для ключа разблокировки, чтобы он читал
CMD.EXE /S /C "ICACLS %1 /L /SetIntegrityLevel med"
Закрыть REGEDIT
.
Теперь найдите LNK, который доставлял вам неприятности. Щелкните по нему правой кнопкой мыши; Вы должны увидеть запись «Разблокировать» в меню. Выберите это.
Появляется приглашение UAC, с которым необходимо согласиться, и может также появиться предупреждение, проверяющее, действительно ли вы это делаете.
Теперь, если дважды щелкнуть ссылку, приложение будет запущено без каких-либо проблем. Если у вас было предупреждение UAC, а не предупреждение об открытии файла, описанной выше процедуры недостаточно. Вам также необходимо щелкнуть правой кнопкой мыши ссылку и в ее свойствах выбрать «Запуск от имени администратора» (возможно, вам придется сделать то же самое с самим приложением).
Протестировано и работает на Windows 7 Pro и Ultimate.