Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Где посмотреть класс объекта, чтобы потом запустить его в скрипте функцией objcreate? (http://forum.oszone.net/showthread.php?t=151855)

evg64 29-09-2009 23:51 1230752

Где посмотреть класс объекта, чтобы потом запустить его в скрипте функцией objcreate?
 
Хочу в скрипте запустить одну прогу, установленную на компе. Смотрю справку objcreate: нужно знать класс окна. Пробую так:
Код:

$obj=objcreate("COCR2.application"); COCR2.exe - так называется прога
msgbox(0,0,isobj($obj))

Не получается, в мсгбоксе 0. Значит класс не application. Есть у меня на компе некий инспектор объектов oleview.exe - покопался в нем, но как через него посмотреть класс и можно ли вообще это сделать, я так и не понял.
Вопрос: как узнать класс объекта?

kaster 30-09-2009 00:10 1230766

Все правильно. Надо через oleview найти свой объект через название. порой это сложно, потому как поиска, вроде, в этой проге нет.
после того как найдешь, в правом окне, где много информации про класс, найди строку - VersionIndependentProgID
вот его значение и есть параметр с помощью которого создается объект.
к примеру


evg64 30-09-2009 00:59 1230788

Цитата:

Цитата kaster
Надо через oleview найти свой объект через название »

А откуда брать название? Явно не COCR2.exe)

В oleview.exe есть кнопка ViewTypeLib - думал может в открывшемся окне укажу путь к своему экзешнику и получу о нем необходимую инфу. Не получилось - выскочило окно Error loading Type library/dll.

kaster 30-09-2009 01:08 1230796

Цитата:

Цитата evg64
А откуда брать название? Явно не COCR2.exe) »

А ты уверен что твоя программа поддерживает подобный вызов?
Я обычно смотрю в Object classes - All Objects
Должен же быть у твоей программы хоть какой-то опознавательный знак :teeth:

evg64 30-09-2009 07:28 1230912

Не уверен, что она поддерживает.
Она называется COCR2.exe - это все что я знаю... а разве обычно можно знать о проге больше?

А как, например, там найти класс объекта для mspaint.exe - тоже ведь ничего не знаем больше) Касательно приложений там только насчет MS Office все четко: прям так и пишут "Приложение Microsoft office excel" или "...word" ) Про другие проги там так прямо не написано)

Iska 30-09-2009 09:58 1231007

evg64, далеко не все приложения поддерживают Automation, потому Вас и спрашивают, что сие за приложение, как называется, адрес страницы в интернете, где его можно взять/почитать. Microsoft Paint, например, Automation не поддерживает.

Как найти… Самый быстрый способ — Google :), иначе же, как выше и было сказано, смотреть в том или ином браузере объектов (в том же Microsoft OLE Viewer, Object Browser от редактора VBA MS Office; неплох и TypeLib Browser от José Roca), ориентируясь, например, на пути расположения соответствующих библиотек.

evg64 30-09-2009 19:19 1231394

CORC2.exe - это распознаватель китайских иероглифов на рисунках .bmp. Посмотреть/скачать можно тут . Если эта штука не поддерживает Automation, то и не надо, переживу)
P.S. Когда дело касается маленьких и малоизвестных программок вроде этой, инфу о них можно найти практически только на их родном сайте. Но даже там далеко не всегда (точнее, я ни разу не видел) разработчики указывают, поддерживает ли прога Automation. Таким образом, верно ли, что далеко не всегда можно узнать насчет поддержки Automation?

Iska 30-09-2009 19:26 1231398

С помощью вышеуказанных инструментов (браузеров объектов) — практически всегда.


Время: 23:26.

Время: 23:26.
© OSzone.net 2001-