Problem 1:
Imam ActiveX kontrolu A (ATL) koja za vreme rada instancira ne-vizuelnu kontrolu B (neki drugi programski jezik).
Ako kontrolu B izmenim i dodelim joj sledeci broj revizije A odbija da je instancira na sledeci nacin:
#import "ime_B_kontrole.dll"
using namespace KontrolaBNamespace;
...
CComPtr<interfejsKontroleB> myCtl;
myCtl.CoCreateInstance(__uuidof(klasaKontroleB));
Ako A prekompajliram ponovo, sa #import-om nove B sve proradi.
Problem 2:
Ovde kontrola A (ATL) definise COM interfejs koji kontrola B (takodje ATL, ali vizuena) implementira.
Kada izmenim kontrolu A i prekompajliram sa uvecanim brojem revizije, kontrola B
prestane da radi sve dok je ne iskompajliram ponovo, sa #import-om nove revizije A.
Obzirom da u programu imam i citav niz drugih kombinacija u raznim MS i ne-MS programskim jezicima (ne pitajte zasto), ovo su jedina dva slucaja gde azuriranje jedne kontrole trazi i azuriranje neke druge, sto bi trebalo da izbegnem kad god je to moguce.
U oba slucaja interfejsi obe kontrole nisu menjani- radi se o izmenama u samoj implemetaciji pojedinih metoda i nuznom povecavanju broja revizije.
Zna li neko zasto se ovo desava?
Koja se to jos informacija sem CLSID-a kontrole zapise u iskompajliran program i da li je to moguce izbeci?
Unapred hvala,
Spaske