Wenn es um eine versteckte Ausgabe geht kannst du doch auch ein Memo etc. nehmen. Dann übergibst du der
DLL einen Funktionspointer von einer Funktion welche Texte entgegen nimmt. Somit kannst du im Hauptprogramm selbst eintscheiden wie du die Debugausgabe anzeigst. Du kannst dir natürlich auch mal OutputDebugString anschauen, das ist genau für sowas gedacht.