Утром, я пытаюсь решить основную причину или возможное решение для нашего развертывания ClickOnce
.Развертывание WPF (ClickOnce) через Интернет
Фон: У нас есть приложение WPF
, которое может быть запущено либо через начальный аргумент, либо без него. Это приложение развернуто с использованием ClickOnce
и опубликовано на одном из наших локальных серверов. Пользователи внутри интрасети могут загрузить/выполнить успешно, и все работает должным образом.
Что изменилось: Недавно у нас было требование получить доступ к этому приложению из Интернета. Для этого мы создали веб-приложение asp.net
и указали на один из наших поддоменов. Это приложение имеет веб-страницу с кнопкой.
Идея заключается в вызове локально развернутого приложения WPF
при нажатии кнопки.
var url = string.Format("{0}?appId={1}", "http://serverip/wpfclient/wpf.application", Session["appreference"].ToString());
Process.Start(url);
Выпуск: Мы попытались IE/Chrome/Mozilla/Opera для доступа вышеупомянутого сайта. Однако ни один из браузеров не открывает приложения WPF. При щелчке он ничего не делает. Кроме того, мы выполнили руководство MSDN, чтобы обеспечить все рекомендуемые шаги.
Однако мы все еще не смогли получить эту работу. Для чего нужна работа: ?
То, что мы делали до сих пор:
- сборка подписывается при помощи сертификата
- приложение/.config расширения в IIS непроверенных
- настройки безопасности ClickOnce и выбрать зоны в Интернете с полное доверие.
результат Debug:
- Нам удалось отладить код сервера asp.net, чтобы увидеть ли ручка выполняется, и он делает.
- Мы смогли осмотреть запрос/ответ с помощью
Fiddler
, но не смогли найти ничего ненормального в журнале
Запрос POST/вар = 2010703 HTTP/1.1
Accept: текст/HTML, приложение/XHTML + XML,
Referer: http://xxxxx.xxxxxx.co.uk/?var=2010703
Accept-Langua ge: ru-RU
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; с.в.: 11.0), как Gecko
Content-Type: применение/х-WWW-форм-urlencoded
Accept-Encoding: GZIP, выкачать
Connection: Keep-Alive
Content-Length: 526
ДНТ: 1
Хост: xxxxx.xxxxxx.co.uk
Pragma: нет кэша
Cookie: ASP.NET_SessionId = qp5oszednhvasjqhws4dpoyh
Response HTTP/1.1 200 OK
Cache-Control: частный
Content-Type: текст/html ; кодировка = UTF-8
Content-Encoding: GZIP
Vary: Accept-Encoding
Сервер: Microsoft-IIS/7.5
X-Сеть САШ-Version: 4.0.30319
X-Powered-By: ASP.NET
Дата: вт, 14 июля 2015 7:32:40 GMT
Контент-длина: 1247
Вы пробовали это с помощью очень простого приложения Windows Forms (т. Е. Просто отобразили форму «Hello World»)? Просто проверить, будет ли это работать, если это Windows Forms. –
@MatthewWatson, у меня нет, так как он не служит цели. – Nair
Но если вы его попробовали, и это не сработало, это будет означать, что ваша проблема не связана с WPF, что будет важной частью информации. –