Когда создаеш COM объект то каждый раз создается новый екземпляр этого объекта
CoCreateInstanse()
или
ISomeObject obj;
obj.CreateDispatch("Obj.ProgID");
или
Basic
Dim obj As Object
Set obj = CreateObject("Obj.ProgID")
если хотим из двух разных процессов вызывать один и тот же объект надо зарегистрировать его как ActiveObject
а при вызове сначала проверять нет ли уже созданного , если есть просто подсоединиться к нему. Так даже можно передавать данные между процессами.
ис MSDN
GetActiveObject Retrieves an instance of an object that is initialized with OLE.
RegisterActiveObject Initializes a running object with OLE. (Use when application starts.)
RevokeActiveObject Revokes a running application's initialization with OLE. (Use when application ends.)
Кто нибудъ может сказать верны ли вышеприведенные высказывания ?, и где можно об этом поподробнее прочитать
???
и Еще, можнон ли подсоединиться к активному объекту из VB ili VBScript
???
есть ли разница между
Dim obj As Object
и
Dim obj As Obj.ProgID
???