AddRef( ) se (kod pametno pisanih COM objekata) po defaultu zove unutar prvog
poziva na QueryInterface (koji se opet, u vasem slucaju poziva unutar
CoCreateInstance( ) - taj posao obicno uradi tzv. class factory - objekat cija je
uloga 'sekretarska' - jedini zna unutrasnju strukturu COM objekta tako da ga moze
instancionirati, dobije pointer na interfejs, i predaje ga spoljnom svetu, drzeci pritom
jezik za zubima sto se tice svega ostalog).
Ko je god dobio pointer na interface bi trebalo (da ne kazem 'mora') da zove Release
na taj interface. U protivnom, COM objekat nece biti unisten kad mu dodje vreme.
Nije mi jasan deo sa
Citat:
problem imam sa client aplikacijom koja ugasi service kad se zatvori... gde je problem?
Ovako kako si napisao kod (prvo zoves Release( ), sto ce sasvim izvesno da unisti
instancu tvog COM objekta, a zatim CoUninitialize( ) koji gasi ceo COM runtime. Time
si jasno stavio do znanja da si zavrsio sa koriscenjem servisa. Sta te onda cudi sto ga nema u taskbaru ???