[ 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.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.