[ ljube @ 17.10.2005. 18:30 ] @
Pravim ATL dll koji ima više interfejsa.
Ne znam kako da pratim trace poruke. Bojim se da nisam napravio neki memory leak.

Našao sam u nekom uputstvu da treba definisati prije ostalih atl include fajlova:
#define _ATL_DEBUG_QI
#define _ATL_DEBUG_INTERFACES

I onda 'hvatati' poruke u ATL/MFC trace tool.

Ovo mi nikako ne uspijeva, nikakve poruke se ne pojavljuju.

Kada pokrenem DLL pomoću nekog ATL klijenta nikakve poruke se ne pojavljuju ni u output prozoru visual studia.

Ne znam gdje griješim ...

Lj.
[ yooyo @ 17.10.2005. 23:12 ] @
ATL je dll kao i svaki drugi. Pokusaj sledece... izaberi debug mode i postavi breakpointe po DLL-u a zatim pokreni program sa F5. Posto je u pitanju DLL, IDE ce ti reci da ne moze da pokrene DLL i pitace te za koji EXE da pokrene. ti izberi neki exe koji koristi tvoj DLL i debuger bi trebalo da se zaustavi na svakom tvom breakpointu.

Inace.. Trace poruke rade samo ako program pokrenes u Demu modu sa F5 (ne sa Ctrl+F5). Potrazi malo po forumu, negde sam okacio redirekciju stdout-a u Debug konzolu pa ti to mozda moze pomoci.

yooyo
[ ljube @ 19.10.2005. 12:32 ] @
Hvala yooyo!

Ova tvoja klasa je zaista odlična (ubacio sam je u svoj toolbox).

Otkrio sam gdje mi je bio problem sa debugom.
Pošto je rijec o atl sa dual interfejsom, a klijent aplikacija je u MFC - u, nešto nije readilo dobro. Tek kada sam promjenio klijent aplikaciju uspio sam da vidim QI poruke.

Ni meni nije baš naj jasnije ali sada radi i vidim da nemam mem leaks što mi je bilo najvažnije.

Pozdrav,
Lj.