Здравствуйте Raul, Вы писали:
R>Можно ли каким-нибудь образом получить незарегистрированный с системном реестре объект и соответсnвенно его дисп-интерфейсы? Аналогия — получение незарегистрированного ITypeLib. Т.е. есть ДЛЛ с прикомпонованной библиотекой типа и кучей объектов и интерфейсов, и есть желание работаь с ней не без регистрации (regsvr32.exe). Поможите, люди добрые, а то ведь могу и сам разобраться.
А в чём проблема?
В каждой DLL есть 4 дополнительных, связанных с СОМ входа. Один из них — DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv). Передаёшь туда CLSID кокласса и IID_IClassFactory, получаешь класс-фактори, у неё просишь CreateInstance(LPUNKNOWN pUnkOuter, REFIID riid, void** ppvObj) с IID_IDispatch. Маршаллинга тебе не треба, раз DLL. Что ещё нужно, чтобы "встретить достойную старость"?