Newsgroup: it.comp.lang.c
Titolo: Dove trovo l'output di OutputDebugString?

Dove cavolo trovo le stringhe di output che vengono generate dalla funzione
OutputDebugString (in particolare anche quando sono fuori dall'IDE)???
Grazie e ciao!


La stringa inserita in OutputDebugString() viene visualizzata sulla finestra
di output del VisualC++, oppure in una finestra in grado di intercettare i
messaggi di debug, tipo l'applicazione Windbg.exe.
La funzione in esame stampa l'output solamente se il tuo progetto e'
compilato in DEBUG.
ciao, Franco.
Franco Torrini - Software Engineer - 
f.to...@virtuart.it
VIRTUART - C.C.D. Creative Computer Design S.p.A.
Via di Quarto Annunziata, 80/b - 00189 Rome, Italy
Tel. 
+39 06 33076638
 - Fax. 
+39 06 33076670

 messaggi di debug, tipo l'applicazione Windbg.exe.
...che pero' (se stiamo pensando alla stessa applicazione) non funziona con 
i programmi a 32 bit :(, per i quali puoi invece usare Lodprf32 di Matt 
Pietrek (era un articolo di MSJ, riprodotto sui _vecchi_ CD di MSDN) o, se 
ti accontenti, una mia utility apparsa su DEV una ventina di mesi fa e che 
trovi a quest'indirizzo (il file e' wpm.zip):
http://www.programmers.net/artic/Salvatucci/devartic.htm
Ciao,
Antonello
--
// ------------------------------------------------------------
// Antonello Salvatucci
// Software Developer, Technical Writer
// LEGO A/S SPU-Darwin, Kloevermarken 120, 7190 Billund DENMARK
// 
// antonello at digi. lego. com             
http://www.lego.com

// antonello at digi. lego. com             
http://www.lego.com
Perche' non funziona?
Io non la uso molto spesso, per il fatto che utilizzo direttamente il
VisualC++ per fare il debug delle mie applicazioni, ma quando la uso
funziona perfettamente.


 funziona perfettamente.
Infatti non stavamo pensando alla stessa applicazione, scusa. Quella cui mi 
riferivo io si chiama(va) dbgwin.exe, non windbg.exe. Serviva 
esclusivamente a mostrare le stringhe di debug ed era incluso coi 
compilatori MS fino a un paio di versioni fa e, mi pare, anche con le prime 
versioni del Win32 sdk (in cui risultava essere completamente inutile :). 


// antonello at digi. lego. com             
http://www.lego.com
Ho capito a cosa ti riferisci, quell'applicazione era distribuita con il
compilatore a 16bit ed era grandiosa, perche' non era strettamente legata al
VisualC++, infatti si potevano vedere all'interno tutti i messaggi di tutte
le applicazioni indifferentemente dal fatto che fossero state lanciate o
meno da dentro al compilatore, ricordo che ci trovavo anche messaggi
d'errore del FileManager di Windows 3.1, altri tempi.
Ma visto che stiamo parlando di queste cose, non e' che conosci
un'applicazione tipo quella, che non ti obbliga ad aprire un progetto per
vedere i messaggi d'errore durante la sua esecuzione.
Naturalmente intendo in Windows 95.


 
Ti rimando al mio messaggio originale. Lodprf32 puo' monitorare un solo 
processo alla volta ma funziona anche da profiler per misurare il tempo di 
caricamento e l'eventuale rilocazione in memoria delle DLL usate dal 
programma. Il mio WPM permette di monitorare piu' processi nella stessa 
finestra di output, ma mostra solo le debug string. Non funziona su NT<5 
(usa Toolhelp32) ma i sono inclusi i sorgenti e volendo puoi modificarlo 
per fargli usare le PSAPI di NT -- a patto che poi me ne mandi una copia ;) 


trovi a quest'indirizzo (il file e' wpm.zip):
Il problemi sono 2:
 1- devo fare il debug di una DLL di stampa, quindi non posso eseguirla da
VC, ma solo installando la stampante e stampando qualcosa.
 2- una delle due DLL e' Kernel Mode...
Ciao!





