サービスプログラムのデバッグ (コンソール出力)

[戻る]
カズヤ 2009/08/27(木) 16:18:20
Windows Xp、VisualStudio2008環境で
コンソールアプリ(MFC使用、全て自作)のサービスプログラム
を作成しようと思います。

サービス開始後、デバッグでコンソール出力を行いたいと思っていますが、
単純にprintf()や、AllocConsole()でコンソールを割り当てただけでは、
出力できませんでした。

表示方法をご存知の方がいましたらご教授をお願いできないでしょうか?
よろしくお願いいたします。

飛んできたどらやき 2009/08/27(木) 16:42:43
TRACE("debug");
これって使えないんでしょうか?

wood 2009/08/27(木) 21:45:44
MessageBoxって使えませんかね?
VC6で作ったときは、つかえましたよ

だらだら垂れ流しが希望なら、ファイル出力がよろしいのでは?

どちらにしても、大したデバックにはならないと思いますよ?

ISLe 2009/08/27(木) 22:58:43
OutputDebugStringで出力してデバッグモニタで拾うというのは?
デバッグモニタはWindowsSDK等に付いてます。

ISLe 2009/08/27(木) 23:01:25
TRACEマクロもOutputDebugStringを呼んでいるようなのでデバッグモニタで拾えると思
います。

カズヤ 2009/08/28(金) 10:44:55
[[解決]]
ありがとうございますm(_ _)m
デバッグモニタを使用してTRACE出力で解決しました。

また、適当に単体モジュールとしても動作するようにコンパイルを切り替えれば
本処理部分のデバッグも簡単にできそうですね。

PATIO 2009/08/28(金) 13:14:05
TRACEマクロはDebugビルドの時しか動かないはずなので、
そこは注意して下さい。
直接、OutputDebugStringを呼ぶようにすれば、
Releaseビルドでもモニター監視ができるようになりますし、
独自のDefineを使った条件コンパイルで出力と非出力を制御したり、
外部ファイルの設定で出力範囲を変えたりと言うことも
できるようになります。

そこまで必要ないならTRACEでも十分だと思いますけれど。

古いスレッドには追加発言できません。