Форум: "Прочее";
Текущий архив: 2014.10.12;
Скачать: [xml.tar.bz2];
ВнизПлагин. Как это работает? Найти похожие ветки
← →
[ВладОшин] © (2014-03-02 23:46) [0]Есть ПО, чужое. ПО предоставляет методы управления собой. Один из них такой: надо прописать в настройках html страницу (расположенную локально или адрес),
ПО подгрузит эту страницу
и на странице можно вызывать JS
т.е. буквально, делаешь простой html, пишешь там
а-ля
<input
type="button"
onclick=ОБЪЕКТ_Х.МЕТОД(ПАРАМЕТР)
</input>
и при клике по кнопке оно срабатывает. Например, окно красится
onclick=COLOR.FILL(MAIN_FORM)
при клике красится именно все окно, не только та закладка, куда встроен IE (т.к. походу IWebBrowser2 это)
меня интересует
Где определен этот ОБЪЕКТ_Х?
Можно как то без html с ним работать?
← →
[ВладОшин] © (2014-03-02 23:53) [1]и когда страница подгрузится, правой кнопкой по ней, "показать исходный код"
а там твой же код html, 1:1, и ничего про ОБЪЕКТ_Х не написано. Но JS его же вызывает как-то. Как?
← →
Styx (2014-03-02 23:57) [2]
> Можно как то без html с ним работать?
Вряд ли. Можно, наверное, в страничку засунуть ActiveX, которому разрешить взаимодействовать с JS - ну а с ActiveX-ом Вы будете работать, как уж захотите.
← →
[ВладОшин] © (2014-03-03 00:11) [3]не.. ActiveX то ПО и так разрешает использовать.. так в настоящий момент и делаем.
задача как раз перейти от ActiveX к .. К чему?
Задача завести эту волынку и под никсами (хм.. ну, там походу значит не IE. Вернее, под win похоже IE
а под никсами не известно что. Но оно тоже показывает страницу и работает с JS-вызовами внутри нее)
А хотелось бы слать по сети команды - а оно что бы исполняло.
я тут с WebSocket заморачивался недавно.. Что бы подсунутая этому ПО страница открыла коннект к серверу и получала от него команды по вебсокет технологии, а потом в зависимости от команд дергала JS.
Но это.. лишнее звено. Да и обкатать еще надо..
Хотелось бы как-то напрямую дергать тот ОБЪЕКТ_Х. Как нибудь..
← →
Styx (2014-03-03 00:30) [4]Если бы под win было написано extrnded.ОБЪЕКТ_Х.МЕТОД(ПАРАМЕТР) - то понятно, как это делается - http://delphidabbler.com/articles?article=22&part=1
Без extended - фиг знает... но, в принципе, ничего не мешает софтине все нужные объекты вставить в DOM после загрузки страницы...
Но только толку от этого.
Вариант
> Что бы подсунутая этому ПО страница открыла коннект к серверу
> и получала от него команды по вебсокет технологии, а потом
> в зависимости от команд дергала JS.
звучит очень хорошо - почему лишнее звено?
← →
[ВладОшин] © (2014-03-03 00:45) [5]
> почему лишнее звено?
да не.. идея хороша.
а лишней кажется потому что + еще одно звено.
ну и я только принципиальность схемы проверил. Работает, вроде.
Но боюсь шишки еще все впереди, когда что-то как подвиснет/слажает..
а каждые минуты простоя грозят вылиться в зарплату :)
если б они сделали обычный telnet..
← →
bems © (2014-03-03 02:05) [6]жаваскриптовому объекту window можно присваивать expando-свойства, сам не проверял, но кажется если присвоить туда вариант, в который запихнут IDispatchEx можно сделать и то что ты говоришь
этот твой ОБЪЕКТ_Х это же свойство объекта window?
← →
tmp (2014-03-03 03:40) [7]По описанию довольно кривая костылявая штука. Пример как не надо делать.
Какой смысл повторять?
З.Ы. IE показывает исходный HTML без изменений. Прога навставляла туды своих JS скриптов и всё ясно.
← →
историк (2014-03-03 09:37) [8]
> этот твой ОБЪЕКТ_Х это же свойство объекта window?
ну, видимо..
только пока не понимаю, и что. Как до него достучаться, если оно уже загружено в другое ПО, а там
>> Прога навставляла туды своих JS скриптов и всё ясно.
И потом, и главное, надо что бы под никсами работало. Про IDispatchEx пока не прочитал, только мельком, но по первым впечатлениям - это муторно и не понятно чем лучше вебсокета.
--
> По описанию довольно кривая костылявая штука. Пример как
> не надо делать.
> Какой смысл повторять?
Что именно - кривая костылявая?
>> IE показывает исходный HTML без изменений. П
ok. Спасибо, только подозревал такое.
← →
ВладОшин © (2014-03-03 09:42) [9]is me ^)
> историк (03.03.14 09:37) [8]
"спалилсо" :)
← →
Sha © (2014-03-03 11:11) [10]> Styx (03.03.14 00:30) [4]
так и сделано
← →
bems © (2014-03-03 16:27) [11]
> Про IDispatchEx пока не прочитал, только мельком, но по
> первым впечатлениям - это муторно и не понятно чем лучше
> вебсокета
а я не говорю что лучше, это я высказал предположение на тему "как это работает". Хост веб-броузера делает окну IDispatchEx::GetDispID с флажком fdexNameEnsure. Потом делает IDispatchEx::InvokeEx с полученным DispID и флагом DISPATCH_PROPERTYPUT. То что он записывает тоже реализует IDispatchEx, поэтому по идее должно бы быть доступно из жаваскрипта.
Действителньо это не отвечает на вопрос как лучше всего этим управлять
← →
ВладОшин © (2014-03-03 17:12) [12]Ясно. Спасибо.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2014.10.12;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.002 c