Xpoint
   [напомнить пароль]

Standalone приложение

Метки: [без меток]
2007-12-06 14:49:42 [обр] Александр aka Efreeti(2/111)[досье]

Нужно сделать standalone приложение, которое бы содержало в себе движок браузера. Собственно всю логику планируется написать на JS, и можно было бы банально выложить в инет, но нужна связь с другим приложением, работающим параллельно.

Первое предложение - использовать компоненту IE и не парится. Но возможно что-то можно сделать на движке FF, но я не представляю как. Что-то слышал про XUL Runner, но это несколько не то.

Если кто объяснит в кратце, кинет ссылок - буду крайне признателен. Ну и мнения о реальности и осмысленности таких заморочек тоже нужны)

спустя 30 минут [обр] Rumata(0/3)[досье]

Александр aka Efreeti[досье]
полной кроссплатформенности не получится.

  1. можно написать на XUL (обратитесь к сведующим), но для запуска вашего приложения потребуется наличие mozilla, но будет работать практически на всех поддерживаемых mozilla ОС.
  2. можно написать windows only HTA (Hypertext Applcation), используя весь арсенал возможностей JScript и Windows Scripting Host

точных ссылок дать не могу - так как первого не знаю, а за информацией по второму сам хожу в поиск на майкрософтский сайт

спустя 13 минут [обр] Давид Мзареулян(14/1003)[досье]
Посмотрите ещё на Adobe AIR.
спустя 13 минут [обр] Александр aka Efreeti(2/111)[досье]

Rumata[досье]
Кроссплатформенность и не стоит как приоритет, хочу использовать FF из "идеологических" соображений;)
Собственно вопрос и был задан сведующим по XUL, а HTA - это не то. Если уж юзать IE, будет С++ приложение.

Давид Мзареулян[досье]
А как потом это приложение связать с другим? Я что-то не нашёл на сайте инфы об внешнем API.

спустя 37 минут [обр] Kirill(0/3)[досье]
XULRunner (исходя из собственного опыта) более чем пригоден для быстрой разработки "толстых клиентов" и standalone приложений. Включая простое взаимодействие с базой данных SQLite. В смысле связи с другими проложениями - либо TCP/IP, либо консольные врапперы (в последнем случае есть недостаток, через nsIProcess нельзя получить доступ к stdout). Поскольку специфика задачи непонятна, подробнее ответить сложно.
спустя 1 час 18 минут [обр] Давид Мзареулян(14/1003)[досье]
Александр aka Efreeti[досье] Смотря что Вы хотите…
спустя 4 минуты [обр] Александр aka Efreeti(2/111)[досье]

Kirill[досье], Давид Мзареулян[досье]
Мне нужно сделать программу с встроенным браузером (без вперёд/назад и прочего), которая при этом могла бы передавать данные из сторонней программы JavaScript'у, который крутится в этом самом браузере.

Самый очевидный вариант (для меня) - движок IE, и самописная ActiveX компонента, которая даёт доступ к той, другой проге.
Но хочется FF (ну или не IE). Я спрашиваю о вариантах, как это можно сделать (и целесообразно ли это делать).

спустя 1 час 47 минут [обр] Kirill(0/3)[досье]
Терзают смутные сомнения, что дело именно в браузере. JavaScript в xulrunner с браузером никак не связан, хотя функциональность браузера в чистом виде и есть. Варианты "как делать" зависят от того, как и какие данные Вы собираетесь получать из сторонней программы. Компоненты для xulrunner пишутся без проблем в т.ч. на Javascript, позволяют практически любую функциональность реализовать (как и ActiveX, вероятно). Лучше смотреть сюда: http://developer.mozilla.org/en/docs/XULRunner:What_XULRunner_Provides
спустя 3 часа 11 минут [обр] Rumata(0/3)[досье]

Александр aka Efreeti[досье]
Я не сторонник или приверженец определенных ОС.
Но для вашего случая лучше подходит именно JScript и "движок" МСИЕ.

вопрос и был задан сведующим по XUL

Тогда ваш вопрос звучит несколько по другому.

спустя 6 дней [обр] Владимир Палант(149/4445)[досье]
Александр aka Efreeti[досье]
XULRunner — по сути чистый движок, то есть пользовательского интерфейса браузера там нет совсем. Но можно достаточно элементарно вставить в XUL-документ тег <browser type="content-primary"/>. В него можно будет загрузить страницу, и пользователь сможет щелкать по ссылкам. Вещи типа перехода к предыдущей странице, перезагрузка итп. реализованы, но запускать вы их должны будете сами (как реакцию на определенные действия пользователя). Реализация контекстного меню, тулбаров и прочего — в ваших руках. В качестве примера можете посмотреть Mozilla Prism, он как раз и воссоздает часть пользовательского интерфейса браузера.
спустя 3 дня [обр] Петр(0/3)[досье]
Владимир Палант[досье] +1
спустя 3 дня [обр] Александр aka Efreeti(2/111)[досье]
Владимир Палант[досье]
Супер, спасибо.
А как с интеграцией с другим приложением? Через какие интерфейсы и где про это прочитать?
спустя 10 дней [обр] Владимир Палант(149/4445)[досье]
Смотря что подразумевается под интеграцией. Вызывать другие приложения можно через nsIProcess. Вызовы через DDE тоже можно поддерживать (Firefox и Thunderbird ведь их поддерживают), но я не разбирался, как это работает.
спустя 3 дня [обр] Александр aka Efreeti(2/111)[досье]
Ок, спасибо, DDE видимо то, что нужно.
Powered by POEM™ Engine Copyright © 2002-2005