Я пытаюсь создать что-то на веб-странице, которая позволяет моим пользователям создавать настольный ярлык. Поскольку мои пользователи НЕ являются технически здравым смыслом, я хотел бы постараться не иметь их, пытаются перетащить.
Существует ли способ, которым я мог создать кнопку на веб-странице (или использование JavaScript или .NET), который автоматически создает настольный ярлык для пользователя? ¡
Простой способ: Использование возможностей браузеров
В Firefox перетаскивание ссылки на рабочий стол создает ярлык в Windows 7. Я уверен, что все или большинство основных браузеров могут делать это на большинстве платформ. Просто направьте своих пользователей в нужное русло, возможно, предложив им пользовательские пошаговые инструкции.
Вы можете оформить ссылку в виде огромной области, которую легко распознать, перетащить и бросить. Нет необходимости в том, чтобы это был просто подчеркнутый кусок текста.
Это, на мой взгляд, единственный достойный способ.
Трудный путь: Программирование самостоятельно
Я не думаю, что создание ссылки на рабочем столе может быть сделано с помощью JavaScript - слишком много ограничений безопасности будут блокировать это.
Для Windows, я думаю, ближе всего будет генерировать файлы ярлыков .lnk
на стороне сервера и предлагать их для загрузки. Однако это нетривиальная задача, и ее структура не документирована Microsoft. Существуют неофициальные руководства, такие как: The Windows Shortcut File Format
Возможно, вы сможете обойтись без генерации файлов, создавая их на локальной системе и предлагая их для загрузки. Это может сработать, если вы используете абсолютные веб-адреса - нужно будет попробовать. Не забудьте протестировать на различных системах: 95, 98, XP, Vista, 7 ....
Я уверен, что существуют эквивалентные форматы ярлыков в Mac OS и различных настольных системах Linux, но я их не знаю.
Нет, не без требования, чтобы ваши пользователи были достаточно технически подкованы, чтобы предоставить скрипту или компоненту, встроенному на страницу, расширенные разрешения. (Конечно, это в основном означает сказать «Да», но в ответ на пугающий запрос. Если они получили какой-либо совет по этому поводу, они скажут «нет».)
Вы могут сделать это с помощью подписанных Java-апплетов и т.п. ( этот вопрос относится к этому обсуждению; в основном вы хотите создать файл в своей системе), но вероятность того, что ваши пользователи позволят им работать с высокими привилегиями, составляет ниже (я бы сказал), чем их способность справиться с перетаскиванием.
Не думаю, что когда-либо думал о перетаскивании как о технически подкованной операции. : -)