Здравствуйте, George Seryakov, Вы писали:
GS>Здравствуйте, VelDmi, Вы писали:
VD>>http://webfile.ru/986414 по этому адресу расположена справка от программы. Мне нужно использовать API функции этой программы. Но дело в том, что я не программист. Если можно, приведите пример использования какой либо функции, а я, по аналогии, попробую разобраться.
GS>Без библитеки типов (tlb — type library) не разобраться. Так, в общем, код может быть такой:
GS>GS>set o = CreateObject(<CLSID>)
GS>s = o.GetShellState()
GS>
GS><CLSID> — строка, идентифицирующая объект. В хелпе не указана. Нужна библиотека типов.
CLSID -- это 128-битная (32-байтная) структура описывающая объект, которую ещё можно строкой вида "{########-####-####-####-############}" представить. А вот CreateObject принимает ProgId, можете убедиться в этом сами (цитата MSDN):
Creates a COM object.
object.CreateObject(strProgID[,strPrefix])
Arguments
object
WScript object.
strProgID
String value indicating the programmatic identifier (ProgID) of the object you want to create.
strPrefix
Optional. String value indicating the function prefix.
ProgId имеет вид "<имя TypeLib'а>.<имя CoClass'а>"
ProgId в реестре записан по адресу
HKEY_CLASSES_ROOT\CLSID\{UUID (он же GUID) TypeLib'а вместе с фигурными скобками}\ProgID\(Default).
Кстати в хелпнике, который по ссылке в первой мессаге имееЦЦа, есть указание что интерфейс называется IRunpadShell. Можно в реестре поискать значение "IRunpadShell" (значение имеется ввиду искать только 'Data') и наткнуться на адрес типа
HKEY_CLASSES_ROOT\Interface\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}, а потом можна зайти на адрес
<найденный адрес>\TypeLib скопировать оттуда значение (Default) и поискать ключ с таким названием; в ём , как я уже и сказал выше, отыщешь ProgID.
GS>Далее, не всякий COM-сервер можно вызывать из vbs, а только дуальные и диспатчевые. Какой у тебя — можно узнать по библиотеке типов.
А можно просто попробовать его создать, через CreateObject. А можно попробовать написать wsf (в форуме недавно пример появлялся... поищи). Без сарказма -- правда правда незнаю заработает-ли.
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков