Xbap как запустить в браузере
можно ли запустить приложение из браузера? Я не говорю об открытии файла из браузера (например, открыть PDF с помощью Adobe Reader), а скорее открыть новый (пустой) экземпляр приложения, установленного на компьютере пользователя.
гипотетическая ситуация: пользователь просматривает веб-сайт, на котором перечислены компьютеры, которыми можно управлять с помощью RDP. Он нажимает на ссылку на 192.168.1.10, эта ссылка открывает клиент Microsoft RDP (mstsc.exe) с этим ip-адресом, уже заполненным из.
Я говорю строго о Вселенной Windows.
Это вообще выполнимо за пределами ActiveX и IE?
разумно ли пытаться сделать это в IE с ActiveX?
вы не можете действительно "запустить приложение" в истинном смысле. Вы можете, как вы указали, попросить пользователя открыть документ (т. е. PDF), и windows попытается использовать приложение по умолчанию для этого типа файлов. Многие приложения имеют способ сделать это.
например, вы можете сохранить соединения RDP как a .RDP-файл. Размещение ссылки на вашем сайте на что-то подобное должно позволить пользователю запустить прямо в сеанс RDP:
мы используем SonicWall vpn. Он запускает Java-апплет, который запускает mstc со всеми настройками учетных данных. Вы действительно не можете сделать это без Java-апплета или плагина activex.
Microsoft использует этот метод сам на своем сервере малого бизнеса для входа в сеть. Я бы не сказал, что это ужасная идея, пока независимость платформы не важна.
Я достиг того же самого, используя локальный веб-сервер и PHP. Я использовал скрипт, содержащий shell_exec для запуска приложения локально.
кроме того, вы можете сделать что-то вроде этого:
вы можете использовать SilverLight для запуска приложения из браузера (это будет работать только на IE и Firefox, более новые версии chrome не поддерживают это)
некоторые приложения запускаются по протоколам. как itunes со ссылками" itms://". Однако я не знаю, как вы можете зарегистрировать это в windows.
Если вы создали приложение или вам предоставили доступ к приложению, его можно запускать в мобильном приложении Power Apps или в веб-браузере. В этой теме вы узнаете, как запустить приложение на основе холста или модели в веб-браузере со страницы приложений Microsoft 365.
Для полноценного функционирования и оптимизированной работы на планшете мы настоятельно рекомендуем использовать мобильное приложение Power Apps. Если у вас не установлено мобильное приложение Power Apps, вы по-прежнему можете использовать веб-браузер на планшете, если устройство имеет достаточно высокое разрешение экрана. Дополнительная информация: Что поддерживается.
Использование веб-браузера на телефоне для запуска приложений на основе модели не поддерживается. Необходимо использовать мобильное приложение Power Apps.
Для этого краткого руководства вам потребуется:
- Лицензия Power Apps. Это доступно с планом Power Apps, например планом Power Apps на пользователя, пробной версией Power Apps или любым из планов Microsoft Office 365 или Dynamics 365, который включает Power Apps.
- Доступ к своему приложению или приложению, созданному и предоставленному вам другим пользователем.
- Доступ к поддерживаемому веб-браузеру и операционной системе. Дополнительные сведения см. в разделе Требования к системе, ограничения и значения конфигурации для Power Apps
Поиск приложения на домашней странице
На домашней странице может отображаться несколько типов бизнес-приложений, но вы можете найти определенное приложение, введя в поле поиска часть его имени. Вы также выбираете Бизнес-приложения для запуска вашего бизнес-приложения, к которому у вас есть доступ.
Запуск приложения по URL-адресу
Подключение к данным
Если приложению требуется подключение к источнику данных или разрешение на использование возможностей устройства (например, камеры или служб определения местоположения), вам необходимо дать согласие, прежде чем использовать приложение. Обычно такой запрос появляется только при первом использовании.
Выйти
Чтобы выйти со страницы приложений Microsoft 365, выберите изображение своего профиля, затем выберите Выход.
Дальнейшие действия
Из этого раздела вы узнали, как запустить приложение на основе холста или модели в веб-браузере. Ознакомьтесь со следующими материалами.
- запуск приложения на основе модели или приложения на основе холста на мобильном устройстве, см. в разделе Запуск приложений на основе модели и приложений на основе холста на мобильном приложении Power Apps
- Дополнительные сведения об использовании приложения на основе модели см. в разделе Использование приложений на основе модели
Каковы ваши предпочтения в отношении языка документации? Пройдите краткий опрос (обратите внимание, что этот опрос представлен на английском языке).
Опрос займет около семи минут. Личные данные не собираются (заявление о конфиденциальности).
Приложения браузера XAML (XBAP) объединяют функции веб-приложений и полнофункциональных клиентских приложений. Как веб-приложения, XBAP можно развертывать на веб-сервере и запускать из Internet Explorer или Firefox. Как многофункциональные клиентские приложения, XBAP могут использовать все возможности WPF. Кроме того, XBAP разрабатываются аналогично многофункциональным клиентским приложениям. Этот раздел содержит простое, общее введение в разработку XBAP и показывает, чем она отличается от разработки стандартных многофункциональных клиентов.
Этот раздел состоит из следующих подразделов.
Создание приложения обозревателя XAML (XBAP)
Проще всего создать проект XBAP с помощью Visual Studio. При создании нового проекта выберите из списка шаблонов приложение браузера WPF. Дополнительные сведения см. в разделе Практическое руководство. Создание нового проекта приложения обозревателя WPF.
При запуске проект XBAP откроется в окне браузера, а не в отдельном окне. При отладке XBAP в Visual Studio приложение выполняется с разрешениями зоны Интернета и в случае, если эти разрешения будут превышены, выдает исключения безопасности. Дополнительные сведения см. в разделах Безопасность и Безопасность частичного доверия в WPF.
Если вы не используете Visual Studio при разработке или хотите изучить файлы проекта более подробно, см. раздел Построение приложения WPF.
Развертывание XBAP
При построении XBAP создаются следующие три файла:
Файл | Описание |
---|---|
Исполняемый файл (.EXE) | Содержит скомпилированный код и имеет расширение EXE. |
Манифест приложения (.MANIFEST) | Содержит метаданные, связанные с приложением, и имеет расширение MANIFEST. |
Манифест развертывания (.XBAP) | Этот файл содержит сведения, которые ClickOnce использует для развертывания приложения, и имеет расширение .xbap. |
Чтобы подготовить XBAP для развертывания, скопируйте файл EXE и связанные с ним манифесты на веб-сервер. Создайте HTML-страницу, содержащую гиперссылку, чтобы открыть манифест развертывания, который является файлом с расширением XBAP. Когда пользователь щелкает ссылку на XBAP-файл, ClickOnce автоматически обрабатывает механизм скачивания и запуска приложения. В следующем примере кода показана HTML-страница, которая содержит гиперссылку, указывающую на XBAP.
Кроме того, XBAP можно разместить во фрейме веб-страницы. Создайте веб-страницу с одним или несколькими фреймами. Назначьте исходное свойство фрейма файлу манифеста развертывания. Чтобы использовать встроенный механизм взаимодействия между веб-страницей размещения и XBAP, необходимо разместить приложение во фрейме. В следующем примере кода показана HTML-страница с двумя фреймами; в качестве источника для второго фрейма выбран XBAP.
Очистка кэшированных XBAP
В некоторых случаях после повторной сборки и запуска XBAP может оказаться, что открывается более ранняя версия XBAP. Это может произойти, например, если номер версии сборки XBAP статичен и XBAP запускается из командной строки. В этом случае в связи с тем, что номер кэшированной версии (версии, запущенной ранее) и новой версии остаются прежними, новая версия XBAP не загружается. Вместе нее загружается кэшированная версия.
В подобном случае можно удалить кэшированную версию с помощью команды Mage (устанавливается вместе с Visual Studio или Windows SDK) в командной строке. Следующая команда очищает кэш приложения.
Она обеспечивает запуск последней версии XBAP. При отладке приложения в Visual Studio должна запускаться последняя версия XBAP. Как правило, номер версии развертывания необходимо обновлять при каждой сборке. Дополнительные сведения о команде Mage см. в разделе Mage.exe (средство создания и редактирования манифеста).
Связь с веб-страницей размещения
Если приложение находится во фрейме HTML, вы можете взаимодействовать с веб-страницей, которая содержит XBAP. Для этого извлеките свойство HostScript элемента BrowserInteropHelper. Оно возвращает объект скрипта, представляющий окно HTML. Доступ к свойствам, методам и событиям можно получить в объекте окна, используя обычный синтаксис с точками. Также можно получить доступ к методам скрипта и глобальным переменным. В следующем примере показано, как извлечь объект скрипта и закрыть браузер.
Отладка XBAP, в котором используется HostScript
Если XBAP использует объект HostScript для взаимодействия с окном HTML, для запуска и отладки приложения в Visual Studio необходимо задать два параметра. Приложение должно иметь доступ к своему исходному сайту, а запустить его необходимо с HTML-страницы, которая содержит XBAP. Ниже описаны процедуры проверки двух этих параметров:
В Visual Studio откройте свойства проекта.
На вкладке Безопасность нажмите кнопку Дополнительно.
Отобразится диалоговое окно с расширенными параметрами безопасности.
Убедитесь, что флажок Предоставить приложению доступ к своему исходному сайту установлен, и нажмите кнопку ОК.
На вкладке Отладка выберите параметр Запустить браузер, используя URL-адрес и укажите URL-адрес HTML-страницы, содержащей XBAP.
В Internet Explorer нажмите кнопку Сервис и выберите Свойства обозревателя.
Откроется диалоговое окно «Свойства веб-обозревателя».
Перейдите на вкладку Дополнительно.
В списке Параметры в разделе Безопасность установите флажок Разрешать запуск активного содержимого файлов на моем компьютере.
Чтобы изменения вступили в силу, Internet Explorer необходимо перезапустить.
Включение активного содержимого в Internet Explorer может подвергнуть компьютер риску. Если вы не хотите изменять настройки безопасности Internet Explorer, запустите HTML-страницу с сервера и присоедините к процессу отладчик Visual Studio.
Вопросы безопасности XBAP
Обычно XBAP выполняются в изолированной среде безопасности частичного доверия, ограниченной набором разрешений зоны Интернета. Следовательно, ваша реализация должна поддерживать подмножество элементов WPF, которые поддерживаются в зоне Интернета; в противном случае разрешения приложения придется повысить. Дополнительные сведения см. в статье Безопасность.
Если в приложении используется элемент управления WebBrowser, WPF создает в нем экземпляр машинного элемента управления WebBrowser ActiveX. Если ваше приложение — это XBAP частичного доверия, запущенный в браузере Internet Explorer, элемент управления ActiveX выполняется в выделенном потоке процесса Internet Explorer. В связи с этим применяются указанные ниже ограничения.
Элемент управления WebBrowser должен обеспечивать поведение, аналогичное браузеру узла, включая ограничения безопасности. Некоторыми из этих ограничений безопасности можно управлять с помощью параметров безопасности Internet Explorer. Дополнительные сведения см. в статье Безопасность.
Если XBAP загружается на HTML-странице в междоменном режиме, возникнет исключение.
Время или порядок навигации могут отличаться, если элемент управления ActiveX выполняется в другом потоке. Например, переход на какую-либо страницу не всегда отменяется при запуске другого запроса навигации.
Настраиваемый элемент управления ActiveX может испытывать проблемы со связью, поскольку приложение WPF выполняется в отдельном потоке.
MessageHook не вызывается, потому что HwndHost не может назначить в качестве подкласса окно, выполняемое в другом потоке или процессе.
Создание XBAP с полным доверием
Если XBAP требует полного доверия, проект можно изменить, предоставив ему соответствующее разрешение. Чтобы предоставить полное доверие, необходимо выполнить указанные ниже действия.
В Visual Studio откройте свойства проекта.
На вкладке Безопасность выберите параметр Это приложение с полным доверием.
При этом происходят следующие изменения:
В файле проекта значение элемента изменяется на Custom .
В манифесте приложения (app.manifest) к элементу PermissionSet добавляется атрибут Unrestricted="true" .
Развертывание XBAP с полным доверием
При развертывании XBAP с полным доверием, не основанного на модели доверенного развертывания ClickOnce, действия, выполняемые после того, как пользователь запустит приложение, зависят от зоны безопасности. В некоторых случаях пользователь получит предупреждение при попытке установить приложение. Пользователь может выбрать продолжение или отмену установки. В следующей таблице описаны поведение приложения для каждой зоны безопасности и действия, необходимые для получения приложением полного доверия.
Поведение, описанное в предыдущей таблице, относится к приложениям XBAP с полным доверием, не следующим модели доверенного развертывания ClickOnce.
Для развертывания XBAP с полным доверием рекомендуется использовать модель доверенного развертывания ClickOnce. Она позволяет XBAP получать полное доверие автоматически, независимо от зоны безопасности и не запрашивая подтверждение пользователя. При использовании этой модели приложение должно быть подписано сертификатом надежного издателя. Дополнительные сведения см. в разделах Общие сведения о развертывании доверенных приложений и Знакомство с подписыванием кода.
Влияние времени запуска XBAP на производительность
Важную роль в производительности XBAP играет время его запуска. Если XBAP является первым загружаемым приложением WPF, время холодного запуска может составить от десяти секунд. Это связано с тем, что страницу хода выполнения обрабатывает WPF, а для того, чтобы отображать приложение, требуется холодный запуск CLR и WPF.
Кроме того, улучшенный параллелизм последовательности загрузки ClickOnce сокращает время запуска почти на десять процентов. После того, как ClickOnce загрузит и проверит манифесты, запускается загрузка приложения, а индикатор выполнения начинает обновляться.
— это приложения, которые выполняются внутри браузера. Они являются полноценными приложениями WPF, но имеют несколько основных отличий, описанных ниже:
ХВАР-приложения выполняются внутри окна браузера. Они могут занимать всю область изображения веб-страницы или размещаться где-то внутри обычного HTML-документа с помощью дескриптора .
Формально WPF-приложение любого типа, включая приложение ХВАР, запускается в виде отдельного процесса, управляемого общеязыковой исполняющей средой (Common Language Runtime — CLR). Нам кажется, что приложение ХВАР выполняется "внутри" браузера просто потому, что оно отображает все свое содержимое в окне браузера. Это отличает его от модели, применяемой в элементах управления ActiveX (и приложениях Silverlight), которые на самом деле загружаются внутри процесса браузера.
ХВАР-приложения обычно имеют ограниченные разрешения. Хотя приложение ХВАР можно сконфигурировать так, чтобы оно запрашивало разрешение на полный доступ, цель состоит в том, чтобы использовать приложение ХВАР в качестве облегченной модели развертывания, которая позволяет пользователям выполнять WPF-приложения без риска со стороны потенциально небезопасного кода.
ХВАР-приложения не устанавливаются. При запуске приложения ХВАР оно загружается и помещается в кэш браузера. Однако в системе оно не устанавливается. Это обеспечивает веб-модель мгновенного обновления. Другими словами, при каждом возвращении пользователя к использованию данного приложения, происходит загрузка новейшей его версии, если она еще не находится в кэше.
Никакого приглашения выполнить установку и предупреждения, связанного с безопасностью, не появляется. Очевидно, что расплачиваться за это приходится следованием очень жестко ограниченной модели безопасности. Если приложению требуются большие возможности (например, чтение или запись произвольных файлов, взаимодействие с базой данных, работа с системным реестром Windows и т.д.), его лучше строить как автономное Windows-приложение, обеспечив упрощенным (хотя и не полностью бесшовным) процессом развертывания с помощью ClickOnce.
Требования для приложений ХВАР
Создание приложения ХВАР
Любое страничное приложение может стать приложением ХВАР, хотя Visual Studio для этого вынуждает создавать новый проект с помощью шаблона WPF Browser Application (Браузерное WPF-приложение). Разница кроется в четырех ключевых элементах в файле проекта .csproj:
Эти дескрипторы указывают WPF на то, что приложение должно обслуживаться в браузере (HostInBrowser), кэшироваться вместе с другими файлами Интернета без постоянной установки в системе (Install), использовать расширение .xbap (ApplicationExtension) и запрашивать разрешения только для зоны Интернета (TargetZone). Четвертый дескриптор является необязательным: как будет показано далее, формально допускается создание приложения ХВАР с большим количеством разрешений. Однако приложения ХВАР практически всегда выполняются с ограниченным набором разрешений, доступных в зоне Интернета, что является самым сложным аспектом для успешного программирования такого приложения.
Файл .csproj также включает и другие связанные с приложением ХВАР дескрипторы, которые гарантируют правильный процесс отладки. Самый простой способ изменить приложение ХВАР на страничное приложение с автономным окном (или наоборот) — это создать новый проект желаемого типа и затем импортировать все страницы из старого проекта.
Как запустить или отобразить(или обработоть на сервере и отобразить в браузере) exe файл в браузере? Были ответы:
Это точно работает? Как проверить на винде, нельзя создать файл .htaccess
При выполнении команды os.system "PATH/TO/EXE.EXE" в Python-сервере будет исполняться исполняемый файл и вывод из stdout попадает на страницу. Вроде, всё просто и легко выполняемо!
У меня вывелся только текст скрипта. Чтото не так сделал?
Копаем в сторону CGI и виндус-хостингов. Прямо в браузере нельзя, браузер не ось, да и небезопасно, а вот вывод вполне возможен. Вопрос запуска личных экзешников лучше задавать хостеру в саппорт перед покупкой хостинга :)
Приведите рабочие примеры и принцип их работы
Вообще напишите рабочие примеры, что нибудь работает?
Напишите что думайте про эти ответы пожалуйста и напишите свои и примеры к ним, если можно
винда не даст создать, можно с невидимым символом, думаю работать не будет, а вы знаете? расскажите пожалуйста
1 ответ 1
Все три ответа правильные, просто вам не хватает знаний, чтобы понять ответ
Что такое веб-сервер: википедия
Теперь вы можете написать и собрать такой EXE файл, который отдаст браузеру все что вы хотите и так, как вы хотите. Но учтите, что кроме как с вашего ПК, где запущен этот EXE, более никто не увидит этого
Запускать EXE-файлы на хостингах вам никто не даст из соображений безопасности, ну и бессмысленности тоже. Максимум, вы можете арендовать что-то вроде VPS/VDS с Windows на борту (не дешевое удовольствие) и закачать туда свой EXE и запустить уже там
Если вас такой вариант не устраивает, прочитайте про языки вроде PHP и Python. Они позволяют сделать все, что вы собираетесь сделать в своем EXE, и даже немного больше. Но без всяких EXE файлов и на обычных хостингах.
Возможно ваша задача решается без всякого запуска EXE. Опишите лучше изначальную задачу, будет полезнее - вам смогут подсказать варианты решения задачи, а не одно конкретное решение с EXE, которое сильно отдает уроками информатики где-то в 2000 году
Читайте также: