ссылка на приложение clickonce appref ms
Практическое руководство. Публикация приложения ClickOnce с помощью мастера публикации
Чтобы сделать приложение ClickOnce доступным для пользователей, необходимо опубликовать его в общей папке, на FTP-сервере или на съемном носителе. Приложение можно опубликовать с помощью мастера публикации. Дополнительные свойства, связанные с публикацией, доступны на странице Публикация в конструкторе проектов. Дополнительные сведения см. в разделе Публикация приложений ClickOnce.
Перед запуском Мастера публикации необходимо правильно настроить свойства публикации. Например, назначить ключ для подписи приложения ClickOnce можно на странице Подпись в конструкторе проектов. дополнительные сведения см. в разделе Secure ClickOnce applications.
при установке более одной версии приложения с помощью ClickOnce, установка перемещает более ранние версии приложения в папку с именем Archive в указанном расположении публикации. Архивация более ранних версий предотвращает появление папок с ранними версиями в каталоге установки.
Публикация в общую папку
Выберите проект приложения в обозревателе решений.
В меню Сборка выберите команду опубликовать имя_проекта.
Откроется Мастер публикации.
На странице Место публикации приложения введите допустимый адрес FTP-сервера или допустимый путь к файлу, используя один из указанных форматов, а затем нажмите кнопку Далее.
На странице Способ установки приложения пользователями выберите расположение, в которое пользователи будут переходить для установки приложения:
Если приложение будет устанавливаться из Интернета, выберите параметр С веб-сайта и введите URL-адрес в соответствии с тем путем к файлу, который вы указали на предыдущем этапе. Щелкните Далее. (Данный параметр обычно используется, когда в качестве расположения публикации указывается FTP-адрес. Загрузка из FTP напрямую не поддерживается, поэтому URL-адрес необходимо ввести здесь вручную.)
Если пользователи будут устанавливать приложение напрямую из общей папки, выберите параметр Из UNC-пути или из общей папки и нажмите кнопку Далее. (Этот вариант предназначен для расположений публикации вида c:\deploy\myapp или \\server\myapp.)
Если пользователи будут устанавливать приложение со съемного носителя, выберите параметр C компакт-диска или DVD-диска и нажмите кнопку Далее.
На странице Будет ли приложение доступно вне сети выберите соответствующий параметр:
Если вы хотите, чтобы приложение запускалось, даже если пользователь не подключен к сети, выберите параметр Да, это приложение доступно из сети и вне сети. Для приложения будет создан ярлык в меню Пуск.
Если вы хотите, чтобы приложение работало напрямую из расположения публикации, выберите параметр Нет, это приложение доступно только из сети. Ярлык в меню Пуск создаваться не будет.
Нажмите кнопку Готово, чтобы опубликовать приложение.
Статус публикации отображается в области уведомлений.
Публикация на компакт-диск или DVD-диск
В обозревателе решений щелкните проект приложения правой кнопкой мыши и выберите пункт Свойства.
Открывается конструктор проектов.
Перейдите на вкладку Публикация, чтобы открыть страницу Публикация в конструкторе проектов, и нажмите кнопку Мастер публикации.
Откроется Мастер публикации.
На странице Место публикации приложения введите путь к файлу или FTP, где будет опубликовано приложение, например d:\deploy. Затем щелкните Далее, чтобы продолжить.
На странице Способ установки приложения пользователями выберите параметр С компакт-диска или DVD-диска и нажмите кнопку Далее.
Если вы хотите, чтобы установка началась автоматически, как только компакт-диск будет вставлен в привод, откройте страницу Публикация в конструкторе проектов и нажмите кнопку Параметры, а затем в мастере Параметры публикации выберите параметр В случае установки с компакт-диска автоматически запускать Setup, когда вставлен диск.
Если приложение распространяется на компакт-дисках, вы можете предоставлять для него обновления на веб-сайте. Выберите способ обновления на странице Место, где приложение будет искать обновления:
Чтобы приложение выполняло проверку на наличие обновлений, установите флажок Приложение следит за обновлениями, расположенными в следующем месте и введите расположение, куда будут выкладываться обновления. Это может быть расположение файла, веб-сайт или FTP-сервер.
Если проверка обновлений не требуется, установите флажок Приложение не следит за обновлениями.
Нажмите кнопку Готово, чтобы опубликовать приложение.
Статус публикации отображается в области уведомлений.
После завершения публикации необходимо воспользоваться устройством для записки компакт-дисков или DVD-дисков, чтобы скопировать файлы из расположения, указанного в шаге 3, на компакт-диск или DVD-диск.
Пошаговое руководство. Развертывание приложения ClickOnce вручную
если вы не можете использовать Visual Studio для развертывания ClickOnce приложения или вам необходимо использовать расширенные функции развертывания, такие как развертывание доверенных приложений, следует использовать средство командной строки Mage.exe для создания ClickOnce манифестов. в этом пошаговом руководстве описывается создание ClickOnce развертывания с помощью версии командной строки (Mage.exe) или графической версии (MageUI.exe) Инструмент создания и изменения манифестов.
Предварительные условия
В этом пошаговом руководстве есть некоторые предварительные требования и параметры, которые необходимо выбрать перед созданием развертывания.
Установите Mage.exe и MageUI.exe.
Предоставьте приложение для развертывания.
в этом пошаговом руководстве предполагается, что у вас есть Windows приложение, готовое к развертыванию. Это приложение будет называться Апптодеплой.
Определите, как будет распространяться развертывание.
Варианты распространения включают в себя: Web, файловый ресурс или компакт-диск. Для получения дополнительной информации см. ClickOnce Security and Deployment.
Определите, требуется ли для приложения повышенный уровень доверия.
Получите сертификат Authenticode.
Необходимо подписать развертывание с помощью сертификата Authenticode. тестовый сертификат можно создать с помощью Visual Studio, MageUI.exe или MakeCert.exe средств Pvk2Pfx.exe или получить сертификат из центра сертификации (цс). Если вы решили использовать развертывание доверенных приложений, необходимо также выполнить однократную установку сертификата на все клиентские компьютеры. Дополнительные сведения см. в разделе Общие сведения о развертывании доверенных приложений.
Вы также можете подписать развертывание с помощью сертификата CNG, который можно получить из центра сертификации.
Убедитесь, что приложение не имеет манифеста с данными контроля учетных записей.
Если приложение содержит манифест с данными контроля учетных записей, его необходимо перестроить без сведений о контроле учетных записей. для проекта C# в Visual Studio откройте свойства проекта и перейдите на вкладку приложение. В раскрывающемся списке Манифест выберите создать приложение без манифеста. для Visual Basic проекта в Visual Studio откройте свойства проекта, перейдите на вкладку приложение и щелкните просмотреть контроль учетных записей Параметры. В открытом файле манифеста удалите все элементы в пределах одного элемента.
Определите, требуются ли приложению необходимые условия на клиентском компьютере.
ClickOnceприложения, развернутые из Visual Studio могут включать загрузчик установки необходимых компонентов (setup.exe) с развертыванием. В этом пошаговом руководстве создаются два манифеста, необходимые для ClickOnce развертывания. Вы можете создать предварительный загрузчик с помощью задачи GenerateBootstrapper.
Развертывание приложения с помощью средства командной строки Mage.exe
Создайте каталог, в котором будут храниться ClickOnce файлы развертывания.
В только что созданном каталоге развертывания создайте подкаталог версии. Если приложение развертывается в первый раз, присвойте имя подкаталогу версии 1.0.0.0.
Версия развертывания может отличаться от версии приложения.
Скопируйте все файлы приложения в подкаталог версии, включая исполняемые файлы, сборки, ресурсы и файлы данных. При необходимости можно создать дополнительные подкаталоги, содержащие дополнительные файлы.
откройте Пакет Windows SDK командную строку или Visual Studio и перейдите в подкаталог версии.
Создайте манифест приложения с помощью вызова Mage.exe. Следующая инструкция создает манифест приложения для кода, компилируемого для запуска на процессоре Intel x86.
Подпишите манифест приложения с помощью сертификата Authenticode. Замените MyCert. pfx на путь к файлу сертификата. Замените passwd паролем для файла сертификата.
Перейдите в корневую папку каталога развертывания.
Подпишите манифест развертывания с помощью сертификата Authenticode или CNG.
Скопируйте все файлы из каталога развертывания в целевое расположение развертывания или носитель. Это может быть папка на веб-сайте, на узле FTP, в общей папке или компакт-диске.
Развертывание приложения с помощью MageUI.exe графического инструмента
Создайте каталог, в котором будут храниться ClickOnce файлы развертывания.
В только что созданном каталоге развертывания создайте подкаталог версии. Если приложение развертывается в первый раз, присвойте имя подкаталогу версии 1.0.0.0.
Версия развертывания, скорее всего, отличается от версии приложения.
Скопируйте все файлы приложения в подкаталог версии, включая исполняемые файлы, сборки, ресурсы и файлы данных. При необходимости можно создать дополнительные подкаталоги, содержащие дополнительные файлы.
Запустите MageUI.exe графический инструмент.
Выберите подкаталог версии, содержащий файлы приложения, а затем нажмите кнопку ОК.
Перейдите на вкладку требуемые разрешения и выберите уровень доверия, который приложение должно утверждать. Значение по умолчанию — FullTrust, которое подходит для большинства приложений.
Выберите файл, Сохранить как в меню. Откроется диалоговое окно Параметры подписи с предложением подписать манифест приложения.
Если у вас есть сертификат, хранящийся в качестве файла в файловой системе, используйте параметр подписать с помощью файла сертификата и выберите сертификат из файловой системы с помощью кнопки с многоточием (. ). Затем введите пароль сертификата.
Если сертификат хранится в хранилище сертификатов, доступном с компьютера, выберите параметр подписать с сохраненным сертификатом и выберите сертификат из предоставленного списка.
В диалоговом окне Сохранить как укажите каталог версий и нажмите кнопку сохранить.
перейдите на вкладку описание и укажите значения для Publisher и Product. (продукт — это имя, присвоенное приложению на Windows меню, когда приложение устанавливается на клиентском компьютере для автономного использования.)
Перейдите на вкладку Параметры развертывания и в текстовом поле начальное расположение укажите расположение манифеста приложения на веб-сервере или в общей папке. Например, \ \мисервер\мишаре\апптодеплой.аппликатион.
Выберите созданный ранее манифест приложения и нажмите кнопку Открыть.
Выберите файл, Сохранить как в меню. Откроется диалоговое окно Параметры подписи с предложением подписать манифест развертывания.
Если у вас есть сертификат, хранящийся в качестве файла в файловой системе, используйте параметр подписать с помощью файла сертификата и выберите сертификат из файловой системы с помощью кнопки с многоточием (. ). Затем введите пароль сертификата.
Если сертификат хранится в хранилище сертификатов, доступном с компьютера, выберите параметр подписать с сохраненным сертификатом и выберите сертификат из предоставленного списка.
В диалоговом окне Сохранить как перейдите на один каталог вверх в корневую папку развертывания, а затем выберите сохранить.
Скопируйте все файлы из каталога развертывания в целевое расположение развертывания или носитель. Это может быть папка на веб-сайте, на узле FTP, в общей папке или компакт-диске.
Пример публикации ClickOnce
Прежде чем приступить к публикации ClickOnce, понадобится некоторая базовая информация о проекте. Дважды щелкните на узле Properties (Свойства) в окне Solution Explorer и перейдите на вкладку Publish (Публикация). Вы увидите настройки, показанные на рисунке:
Смысл всех настроек будет объяснен далее, а сначала следует указать некоторые базовые детали публикации.
Настройка издателя и продукта
Приложению для установки понадобится базовая идентичность, включающая имя издателя и название продукта, которые могут быть использованы в запросах процесса установки и в ярлыках меню Пуск.
Чтобы указать эту информацию, щелкните на кнопке Options (Параметры). Откроется диалоговое окно Publish Options (Параметры публикации) с набором дополнительных настроек, разнесенных по нескольким группам. Как показано на рисунке ниже, в списке слева выбран элемент Description (Описание), а справа находятся текстовые поля, которые позволяют указать ключевые детали: Publisher Name (Имя издателя), Suite Name (Имя комплекта) и Product Name (Имя продукта):
Если указан URL-адрес поддержки, ClickOnce создаст дополнительный ярлык [Имя продукта] online support. Когда пользователь щелкнет на нем, запустится браузер и загрузит указанную страницу.
URL-адрес ошибки — это ссылка на веб-сайт, который будет показан (в диалоговом окне), если при попытке установки приложения возникнет ошибка.
Запуск мастера публикации
Простейший способ сконфигурировать настройки ClickOnce состоит в том, чтобы щелкнуть на кнопке Publish Wizard (Мастер публикации) внизу окна свойств, показанного на первом рисунке. В результате запустится мастер, который проведет через несколько простых шагов, чтобы собрать важную информацию. Этот мастер не предоставляет доступ ко всем средствам ClickOnce, однако это самый быстрый способ начать.
Первым выбором в мастере публикации будет выбор местоположения для публикации приложения:
В выборе местоположения первой публикации приложения нет ничего особо важного, поскольку это не обязательно то же самое место, где позже будут размещаться установочные файлы. Другими словами, можно опубликовать в локальном каталоге и затем передать файлы на веб-сервер. Единственный нюанс — перед запуском мастера публикации необходимо знать конечное место расположения файлов, поскольку эту информацию придется указывать. Без нее не будет работать функция автоматического обновления.
Разумеется, можно публиковать приложение непосредственно в конечное расположение, но это не обязательно. Фактически, локальное построение установки часто представляет собой простейший путь. Чтобы понять, как это работает, начните с выбора локального пути (например, C:\Temp\ClickOnceApp). Затем щелкните на кнопке Next (Далее). После этого возникает реальный вопрос — как пользователи будут устанавливать это приложение?
Выбор важен, потому что он влияет на стратегию обновления. Произведенный выбор будет зафиксирован в файле манифеста, поставляемом вместе с приложением.
Есть один случай, когда диалоговое окно, показанное на рисунке выше, не отображается. Если в качестве местоположения публикации вводится виртуальный каталог на веб-сервере (другими словами, URL-адрес, начинающийся с http://), то мастер предположит, что это окончательное местоположение установки.
На рисунке выше показаны три доступных выбора. Можно создать установку на сетевом файловом ресурсе, на веб-сервере или же на CD- либо DVD-диске. Ниже рассматриваются все варианты.
Публикация на сетевом файловом ресурсе
В этом случае все пользователи сети получат доступ к установке, перейдя по определенному пути UNC и запустив находящийся там файл по имени setup.exe.
Пусть UNC — это сетевой путь в форме \\ИмяКомпьютера\ИмяОбщегоРесурса. Сетевой диск использовать нельзя, поскольку он зависит от настроек системы (так что разные пользователи могут иметь разные настройки сетевых дисков). Чтобы обеспечить автоматические обновления, инфраструктура ClickOnce должна знать точно, где она сможет найти установочные файлы, и это то же самое место, где будут развернуты обновления.
Публикация для веб-сервера
Установку для веб-сервера можно создать в локальной корпоративной сети или в Интернете. Visual Studio сгенерирует HTML-файл по имени publish.htm, который упростит процесс. Пользователь запросит эту страницу в своем браузере и щелкнет на ссылке для загрузки и установки приложения.
Существует несколько способов передачи файлов на веб-сервер. Чтобы воспользоваться двухшаговым подходом (опубликовать файлы локально, а затем передать их в нужное место), просто следует скопировать файлы из локального каталога на веб-сервер, используя соответствующий механизм (вроде FTP). Удостоверьтесь, что при этом сохраняется структура каталогов.
Для опубликования файлов непосредственно на веб-сервере, минуя предварительное тестирование, есть два выбора. Если применяется IIS, и текущая учетная запись пользователя обладает достаточными привилегиями для создания нового виртуального каталога на веб-сервере (или загрузки файлов в существующий виртуальный каталог), можно опубликовать файлы непосредственно на веб-сервер. Просто укажите путь к виртуальному каталогу на первом шаге мастера. Например, в качестве местоположения публикации можно использовать http://ИмяКомпьютера/ИмяВиртуальногоКаталога (в случае корпоративной сети) или http://ДоменноеИмя/ИмяВиртуальногоКаталога (для сервера, находящегося в Интернете).
Также можно публиковать непосредственно на веб-сервер через FTP. В Интернете это часто бывает обязательным требованием (в отличие от корпоративной сети). В этом случае Visual Studio установит соединение с веб-сервером и передаст туда файлы ClickOnce no FTP. При этом для установки соединения будет запрошено имя пользователя и пароль.
Публикация для CD- и DVD-диска
В случае выбора публикации на установочный носитель вроде CD- или DVD-диска все равно понадобится решить, планируются ли автоматические обновления. Некоторые организации используют исключительно развертывание с помощью CD-дисков, в то время как другие применяют его в дополнение к веб-развертыванию или развертыванию через сетевые ресурсы. На третьем шаге мастера выбираются опции для этого конкретного случая:
Здесь доступны следующие варианты:
Можно указать URL-адрес или путь UNC, по которому приложение будет искать обновления. Это предполагает, что приложение будет опубликовано в этом месте.
Можно опустить эту информацию и тем самым вообще отключить функцию автоматического обновления.
Можно опустить эту информацию, но заставить приложение ClickOnce использовать местоположение установки в качестве местоположения обновления.
Интерактивный и автономный режимы
В случае создания развертывания для веб-сервера или сетевого ресурса должна быть установлена дополнительная опция:
Выбор по умолчанию заключается в создании приложения, доступного в интерактивном и автономном режиме, которое запускается независимо от того, может пользователь подключиться к месту публикации или нет. В этом случае ярлык для запуска приложения добавляется в меню Пуск.
Если выбрано создание приложения, доступного только в интерактивном режиме, то пользователю для запуска приложения будет требоваться каждый раз обращаться к месту публикации. (На веб-странице publish.htm будет отображаться кнопка Run (Запуск) вместо Install (Установка).) Это исключит вероятность запуска старых версий приложения после применения обновлений. Данная часть модели развертывания аналогична веб-приложениям.
Когда создается приложение, доступное только в интерактивном режиме, оно по-прежнему будет загружаться (в локально кэшируемое местоположение) при первом запуске.
Таким образом, хотя первоначальное время запуска может быть больше (из-за первоначальной загрузки), приложение будет работать так же быстро, как любое обычное установленное Windows-приложение. Однако приложение не может быть запущено, если пользователь не подключен к сети или Интернету, что делает его неподходящим для мобильных пользователей (например, пользователей ноутбуков, которым не всегда доступно подключение к Интернету).
Если выбрано создание приложения, которое поддерживает автономный режим, то программа установки добавит ярлык в меню Пуск. Пользователь может запустить приложение с помощью этого ярлыка, независимо от того, подключен компьютер к сети или нет.
Если компьютер находится в интерактивном режиме, то приложение проверит наличие новых версий в месте, где опубликовано приложение. При наличии обновлений приложение предложит пользователю установить их. Позже будет показано, как сконфигурировать эту политику. При публикации для CD-диска отсутствует выбор для создания приложения, доступного только в интерактивном режиме.
Развернутая файловая структура
Технология ClickOnce использует довольно простую структуру каталогов. Она создает файл setup.exe в указанном месте и подкаталог для приложения. Например, при развертывании приложения по имени ClickOnceText в каталоге с:\ClickOnceTest появляются следующие файлы:
По мере публикации новых версий приложения ClickOnce будет добавлять новые подкаталоги для каждой новой версии. Например, изменение опубликованной версии приложения на 1.0.0.1 приводит к появлению нового каталога:
How to find the Target *.exe file of *.appref-ms
I have to make a backup of the program running from the file *.appref-ms
When I opened the file GitHub.appref-ms using a text editor I found
Where is the target stored on the local disk?
Editing the PublicKeyToken resulted in Default or Null Icon.
Editing the URL resulted in «Application Cannot Start».
How is *.appref-ms targeting the Exe?
This doesn’t answer my Question
Note: I tried opening the file offline, it still works perfectly.
6 Answers 6
Simple answer to this; I was trying to figure out the same thing, and it just hit me.
The appref-ms file does not point to the exe. When you hit that shortcut, it invokes the deployment manifest at the deployment provider url and checks for updates. It checks the application manifest (yourapp.exe.manifest) to see what files to download, and this file contains the definition of the entry point (i.e. the exe).
The %LocalAppData%\Apps\2.0. folder is the program AND %LocalAppData%\GitHub is the settings folder.
The best ‘tip’ I can say legitimately is: You ‘can’ in some cases move the final folder that all the files are in and use a symlink back, if you are low on space. But, not all apps will work and essentially will delete the symlink once you they run. Then they might reinstall or simply just remove the link. Keep in mind also, other apps may be using that same final folder as well, so move the folder will affect those too.