Веб-приложение "Out of browser", запущенное при запуске? - PullRequest
8 голосов
/ 09 августа 2009

Я ознакомился с новой концепцией веб-приложений «вне браузера», поддерживаемой в последних версиях Silverlight, JavaFX, Adobe AIR и т. Д.

Слушая недавно подкаст по теме Скотт Хансельман , я понял, что одна из целей этих новых архитектур состоит в том, чтобы разрешить "настольное приложение - Чувствовать". Кроме того, я понимаю, что некоторые (или все) из них допускают некоторый автономный доступ к песочнице ресурсов. Это действительно звучит так, как если бы эти платформы могли быть альтернативой «настоящим» настольным приложениям, если приложению не требуется связываться с компьютером пользователя (то есть с доступом к периферийным устройствам, определенным операциям ввода-вывода и т. Д.).

У меня очень специфический вопрос. Мое приложение должно запускаться при запуске. Можно ли сделать это, используя такую ​​платформу, не требуя от пользователя загрузки и запуска определенного исполняемого файла?

Например, я всегда мог поручить пользователю загрузить небольшой EXE-файл, который поместит файл .lnk в каталог загрузки, но я хочу избежать такого патча.

Подводя итог: возможно ли иметь саму настройку веб-приложения вне браузера для запуска при запуске, не требуя загрузки файла?

Для дальнейшего уточнения, этот вопрос не из "злого" места, а скорее из попытки решить, действительно ли фреймворки "вне браузера" - правильная альтернатива настольному приложению, для моих конкретных требований.

Ответы [ 4 ]

2 голосов
/ 09 августа 2009

Пример BkMark здесь показывает, как запустить приложение при запуске с использованием Adobe Air. Так что да, это возможно.

0 голосов
/ 06 сентября 2009

Для Internet Explorer, приложения Javascript делают имеют доступ для записи на диск . Для других (более защищенных) браузеров вам потребуется либо загрузить файл, либо Adobe AIR.

0 голосов
/ 04 сентября 2009

Итак, вот в чем дело: веб-приложения в целом будут иметь контекст безопасности вокруг них и по умолчанию не будут иметь доступа для записи в файловую систему (вне временных файлов), доступа к реестру и т. Д.

Один из способов, как вы сказали, состоит в том, чтобы пользователь что-то запустил или настроил так, чтобы lnk выполнялся при запуске.

Другой способ, и я думаю, что в большей степени соответствует тому, что вы хотите, - это то, что пользователь может сам запустить программу, щелкнуть какую-нибудь кнопку в приложении, и она настроена.

Я знаю, что с Java вы могли бы сделать это, но пользователь должен разрешить полный доступ к своей системе, потому что ваше приложение должно будет изменить конфигурацию системы. Затем вы можете просто настроить его (записав lnk в JNLP WebStart в папке «Автозагрузка»)

0 голосов
/ 04 сентября 2009

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

Для запуска пользовательской сессии вы можете достичь этого, поместив файл lnk в соответствующую папку, или с помощью записи в реестре. Для запуска операционной системы вы можете добиться этого с помощью записи в реестре. Есть несколько перестановок:

  • запустить приложение один раз при загрузке (пользовательский интерфейс не разрешен)
  • запускать приложения при каждой загрузке (пользовательский интерфейс не разрешен)
  • запускать службу при каждой загрузке в соответствии с политикой, установленной в реестре
  • запустить приложение один раз при запуске сеанса пользователя
  • запускать приложение каждый сеанс пользователя

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

Я только что создал ярлык для приложения SL4 OOB, и это была цель ярлыка:

"C:\Program Files (x86)\Microsoft Silverlight\sllauncher.exe" 2635882436.localhost

Поиск на моем диске показал, что папка 2635882436.localhost является папкой.

C:\Users\<mylogin>\AppData\LocalLow\Microsoft\Silverlight\OutOfBrowser\2635882436.localhost

Я, скорее, сомневаюсь, что приложение OOB любого типа может поместить ярлык в папку «Автозагрузка», если вы каким-либо образом не получили полного доверия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...