Alexbootch писал(а):
или как?так
DoingActiveXMethod param1,param2,param3[/code]
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Alexbootch, понятия "в формате VBScript" и "на языке VBScript" всетаки отличаются наверно.
Alexbootch писал(а): или как?так
|
|||
карма: 27 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Dilma писал(а): выстраивать по нему наборы точекМы уже один раз дискутировали на эту тему, но дальше дискуссии что-то не пошло. С тех пор, как МТ-потоки прочно вошли в стандарт, можно теперь передавать параметры методов как МТ-потоки. Однако всё равно, многие ActiveX используют как параметр и/или возвращают в качестве результата другие "объекты", которые суть IDispatch. С ними всё равно надо что-то делать. А ещё есть записи (в качестве параметров/результата), но это тоже разновидность объектов. То есть я это к тому говорю, что установка нового ActiveX-элемента может сопровождаться генерацией нескольких дополнительных элементов, которые работают с другими объектами, имеющимися в библиотеке типов данного ActiveX. [size=-2]------ Добавлено в 21:38 Alexbootch писал(а): А по-подробнее можно про формат VBScript Например для эксплорера (идентификатор которого Shell.Explorer) можно подать на точку doExecute следующую строку:
|
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
Dilma, писал(а): DoingActiveXMethod param1,param2,param3Все понял [size=-2]------ Добавлено в 22:26 Если нет описания методов то чем можно посмотреть методы? |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Alexbootch писал(а): Если нет описания методов то чем можно посмотреть методы?наверняка есть какие-нибудь утилиты, выполняющие эту задачу, потому что информация о методах(и их аргументах) в ActiveX элементах есть. |
|||
карма: 27 |
|
Ответов: 2125
Рейтинг: 159
|
|||
В офисе есть возможность.
Запускаем Word и нажимаем Alt-F11 (вызов VB редактора) и F2 (каталог объектов). Там в контекстном меню можно подключить любую библиотеку типов (меню "Ссылки" вроде, у меня нерусский офис). Только с именами там чёрт ногу сломит. Например WebBrowser: - програмное имя "Shell.Explorer" (нигде не показано, я узнал через реестр) - подключать надо "Microsoft Internet Controls" - библиотека называется "SHDocVw" (выбрать в верхнем комбо каталога объектов) - в левом списке объект называется "WebBrowser" (кликнуть на него) или "InternetExplorer" - в правом списке найдём методы (зелёная иконка), свойства (иконка с рукой) и события (жёлтая иконка) [size=-2]------ Добавлено в 12:18 Итак. Если Вы установили последнюю версию UseActiveX, то сделать простейший FlashPlayer не составит большого труда Например всего из 4 компонент: code_1971.txt |
|||
карма: 1 |
| ||
файлы: 1 | code_1971.txt [583B] [344] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
подгрузил элемент DBPix 2.0, результат на скриншоте. Сам элемент появился не в указанной области, а в углу формы с дефолтными размерами. А так впринципе все работает.
------------ Дoбавленo: Есть сомнение в целесообразности использования ActiveScript. Лучше вызов методов сделать так же через МТ, где первым параметром будет имя самого метода. А то получается, что мы сначало формируем строку из параметров, чтобы потом её же распарсить и получить эти параметры назад... |
|||
карма: 27 |
| ||
файлы: 1 | dbpix.png [10.5KB] [353] |
Ответов: 2125
Рейтинг: 159
|
|||
Когда я делал компонент, МТ-технология ещё была в зачатке. Ясно, что лучше сделать вызов через МТ. Буду переделывать.
[size=-2]------ Добавлено в 13:20 Кстати, наличие на скриншоте красной надписи EVariant говорит о том, что на каком-то этапе инициализации произошла ошибка с таким вот странным описанием. Что это за ActiveX? От какой проги? У меня его нет. [size=-2]------ Добавлено в 13:24 Нашёл в нете. Только он шароварный. Фтопку. [size=-2]------ Добавлено в 13:28 А ActiveScript я использовал ещё и потому, что с ним можно свойства устанавливать вот так:
|
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
http://www.kraysi.ru/files_view_file4149.html
нужно было перевести некий проект из MSAccess на чтение Jpeg из базы. Собственно работу где-то еще, кроме MSAccess авторы вроде и не гарантировали. ------------ Дoбавленo: tsdima писал(а): Нашёл в нете. Только он шароварный. Фтопку.для нашего человека это не проблема tsdima писал(а): А ActiveScript я использовал ещё и потому, что с ним можно свойства устанавливать вот таксв-ва можно организовать как именной массив |
|||
карма: 27 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Dilma, проверь пжалста DBPix с таким вот изменением:
[size=-2]------ Добавлено в 14:12 Почему-то невидимые в runtime контролы образуют неотрисовываемую область. Видимо их размер нужно принудительно в 0,0 устанавливать... |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
tsdima, тоже самое. Проблема в
code_7322.txt переменная tiEvents не пустая поэтому если вручную закомментировать эти строки, то все становится нормально |
|||
карма: 27 |
| ||
файлы: 1 | code_7322.txt [178B] [284] |
Ответов: 2125
Рейтинг: 159
|
|||
Не поленился скачал. А вот фиг. Есть у него события. Буду разбираться.
[size=-2]------ Добавлено в 18:17 Заработало. Не спрашивай "почему?", просто исправь код. Объяснение требует танцев с бубном
[size=-2]------ Добавлено в 18:41 Оказывается, метод OleObject в дельфишной версии ActiveKOL.pas возвращает не IDispatch, а Variant! А я-то блин смотрю в исходники в каталоге FPC, сравниваю со скомпилированным кодом и думаю: причём тут Variant? |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
да в таком варианте все работает как надо.
Так же имеется пожелание: добавить св-во align. Ну и на SVN конечно же. ------------ Дoбавленo: А как такое нравится?
делаем Office с помощью HiAsm |
|||
карма: 27 |
| ||
файлы: 1 | office_1.png [8.6KB] [342] |
Ответов: 2125
Рейтинг: 159
|
|||
Dilma писал(а): делаем Office с помощью HiAsm Ага, если бы ещё оно работало на компутере, где Office не инсталлирован [size=-2]------ Добавлено в 19:18 Dilma писал(а): добавить св-во alignНу, можно вообще все свойства THIWin добавить, и сплиттер тоже. Только есть подозрение, что динамическое изменение размеров OCX бесследно не пройдёт... |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
если что-то будет не так работать как следовало, то выравнивание всегда можно отключить
|
|||
карма: 27 |
|
Ответов: 8926
Рейтинг: 823
|
|||
tsdima, где же взять ActiveX ?
|
|||
карма: 19 |
| ||
файлы: 1 | activex.png [4.6KB] [337] |