Skip to content

PinTo10v2 v1.2

В рамках автоматической установки Windows или в групповых политиках иногда возникает необходимость прикрепить или открепить ярлык программы на панели задач или в меню "Пуск". Скрипты на базе VBS, предназначенные для Windows 7, перестали работать в Windows 10. Для решения этой проблемы Stuart Pearson создал утилиту PinTo10 на базе NSIS. А позднее, так как NSIS не совсем хорошо подходит для данной цели, обновленную версию на C# - PinTo10v2. Ее официальная страница в интернете: https://pinto10blog.wordpress.com/.

Программа универсальная и работает как на Windows 7, так и на Windows 10. Windows 8 и серверные ОС не поддерживаются.

К сожалению, в процессе использования данной утилиты обнаружился баг. Программа вылетает с ошибкой при попытке работы с ярлыками на панели задач, если в пути запуска программы использовались короткие имена в формате "8.3".

Немного технических деталей. Например, программа запускается из временной папки, и переменная %TEMP% у пользователя LongUserName будет равна C:\Users\LONGUS~1\AppData\Local\Temp. Функция ChangeImagePathName(), с помощью которой PinTo10v2 симулирует Windows Explorer, из-за использования GetDirectoryName() развернет это в C:\Users\LongUserName\AppData\Local\Temp и выбросит исключение, т.к. новый путь якобы длиннее старого. Более того, исключение не обрабатывается, и программа в результате падает с ошибкой.

Я сделал пару изменений в исходном коде для исправления этой проблемы. Во-первых, добавил обработку исключения. Теперь в случае ошибки программа просто выведет соответствующее сообщение и закроется. Во-вторых, избавился от GetDirectoryName() в ChangeImagePathName(). Нашел исходный код этой функции на Github и взял из нее буквально пару строчек, удалив ненужные проверки и трансформации.

Моя модифицированная версия PinTo10v2 v1.2. Содержит исходный код и бинарник, скомпилированный Visual Studio 2015: PinTo10v2_1.2.7z

Оригинальная утилита PinTo10v2 v1.1 от Stuart Pearson:
https://www.dropbox.com/s/q4joxy231hz0klj/PinTo10v2_1.1.zip?dl=1.
Зеркало: PinTo10v2_1.1.zip

Модификация прошивки "от энтузиастов" для маршрутизаторов Asus, D-Link, Netgear

Прошивка от Vampik - не является самостоятельной прошивкой, это модификация прошивки 1.9.2.7-d/-rtn от энтузиастов (авторы - lly и theMIROn). Она в свою очередь является продолжением небезызвестных прошивок "от Олега".

Разработка модификации прекращена в 2013 г. в связи с устареванием оборудования и отсутствием поддержки новых моделей в ядре.

Последние версии прошивки:

Устаревшая прошивка ветки -d

Новая прошивка ветки -rtn

Примечания к поддерживаемым моделям:

D-Link DIR-320 rev. A1, A2. Прошивка -rtn урезанной версии из-за 4 МБ флеш-памяти. Удалена поддержка веб-камер, FTP-сервер, Samba, NFS, SNMP, tcpdump. Поддержка принтеров ограничена (отсутствует поддержка LPR). Поддержка USB-накопителей ограничена (отсутствует поддержка NTFS и утилиты для форматирования и проверки файловой системы). Доступна полная версия устаревшей прошивки ветки -d, но в ней нет поддержки новых модемов. Переход с оригинальной прошивки D-Link осуществляется через промежуточную прошивку DIR320-wimax-1.2.6.bin. Переход со старой прошивки от энтузиастов для WL500GPv2 осуществляется загрузкой прошивки по tftp в момент включения роутера. IP-адрес загрузчика: 192.168.0.1, на устройстве с которого производится прошивка необходимо установить адрес из подсети 192.168.0.0/24. После перехода на прошивку от энтузиастов обязателен сброс настроек.

Asus WL-700gE. Поддерживается только в случае перепайки флеш-памяти с 2 МБ на 8 МБ.

D-Link DIR-620 rev. C1. Нет поддержки второй версии этой ревизии, возможна неполная поддержка начиная со сборки 3.0.6.5218.

NetGear WNR3500L v1. Маркировка на корпусе: WNR3500U/WNR3500L. Требуется внимательно выбирать версию прошивки. Прошивки для v1 и v2 несовместимы между собой. Восстановление после загрузки неправильной версии прошивки возможно только при наличии USB-TTL конвертера.

NetGear WNR3500L v2. Маркировка на корпусе: WNR3500L v2. Требуется внимательно выбирать версию прошивки. Прошивки для v1 и v2 несовместимы между собой. Восстановление после загрузки неправильной версии прошивки возможно только при наличии USB-TTL конвертера. Промежуточная версия для перехода с родной прошивки: entware-wnr3500lv2.chk