В примере создается OBJRef моникер для VB6-формы к которому можно обращаться из других клиентских приложений: Другое VB6 приложение; 64 битное приложение на C++; VBScript - HTA Application Все это работает как простой вызов метода объекта. COM делает всю работу по синхронизации и маршалингу через границы процессов. Если включен DCOM то можно даже между машинами делать такие вызовы. Достаточно создать моникер и передать его приложению (к примеру через командную строку): Код (Text): Set cMoniker = CreateObjrefMoniker(Me) pName = cMoniker.GetDisplayName(CreateBindCtx(), Nothing) sName = SysAllocString(pName) . . . ShellExecute(0, StrPtr("open"), StrPtr(sPath), StrPtr("""" & sName & """"), 0, vbNormalFocus) Из другого приложения объект получается посредством GetObject(либо MkParseDisplayName/BindToObject) и дальше с ним можно работать как с обычным объектом. Данный метод можно использовать для замены многопоточности - мультипроцессингом и в отличии от ActiveX EXE не требует регистрации на конечной машине.