Имеется COM компанент в DLL. Можно ли его как-то зарегать в системе под одним CLSID, а после этого на другой системе под другим, с той же самой DLL.
Может как-то можно/нужно собрать ее специально? Или просто руками регистрить в реестре?
Thanks,
Alex
Re: Тот же компанент (сборка в DLL), но разные CLSID.
Здравствуйте, kikudjiro, Вы писали:
K>Hello!
K>Имеется COM компанент в DLL. Можно ли его как-то зарегать в системе под одним CLSID, а после этого на другой системе под другим, с той же самой DLL. K>Может как-то можно/нужно собрать ее специально? Или просто руками регистрить в реестре?
K>Thanks, K>Alex
по-идее после регистрации в реестре GUID' ы можно поправить.
а можно и пересобрать, предварительно заменив GUID в проекте
Re[2]: Тот же компанент (сборка в DLL), но разные CLSID.
_>по-идее после регистрации в реестре GUID' ы можно поправить.
Получиться не всегда, out of proc обьекты сами регистрируют фабрику классов с прошитым в код CLSID, в dll вызывается DllGetClassObject и передаётся так же CLSID...
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
Народная мудрось
всем все никому ничего(с).
Re: Тот же компанент (сборка в DLL), но разные CLSID.
Здравствуйте, kikudjiro, Вы писали:
K>Hello!
K>Имеется COM компанент в DLL. Можно ли его как-то зарегать в системе под одним CLSID, а после этого на другой системе под другим, с той же самой DLL. K>Может как-то можно/нужно собрать ее специально? Или просто руками регистрить в реестре?
K>Thanks, K>Alex
Руками в реестре просто так не получиться, надо править код, что за сервер in proc/out of proc ?
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
Народная мудрось
всем все никому ничего(с).
Re: Тот же компанент (сборка в DLL), но разные CLSID.
Здравствуйте, kikudjiro, Вы писали:
K>Hello!
K>Имеется COM компанент в DLL. Можно ли его как-то зарегать в системе под одним CLSID, а после этого на другой системе под другим, с той же самой DLL. K>Может как-то можно/нужно собрать ее специально? Или просто руками регистрить в реестре?
K>Thanks, K>Alex
K>Возникает вопрос — а зачем?
У меня, к примеру, необходимость регистрировать обьект с разными GUID возникала когда нужно было чтобы один и тот же COM-обьект реализовывал несколько тулбаров в IE. Dll регистрировалась несколько раз, под разными GUID, DllGetClassObject была подправлена так чтобы создавать обьекты c любым CLSID которые ей передадут. Ещё пришлось подрихтовать ClassFactory так, чтобы она передавала обьекту информацию о том, с каким CLSID его создали (дабы понять какие данные рисовать).