问题
I'm not sure if this is possible in the manner I am envisioning or not so I'm hoping someone can help me wrap my head around this.
I'm wanting to inject a TraceListener into a running process - kind of. I don't actually care how I attach to the process, but the end goal is to listen to the trace output of the running process and dump it out to a console window.
I can attach to the process okay, and I can write a TraceListener okay... where I'm coming unstuck is the bit in the middle. Anyone got any clue if this can be done? If so, can you give me a push in the right direction because I can't see the forest for the trees here.
Maybe I'm trying to approach this in the wrong way?
回答1:
I don't think this is practical. It would be easy to create a listener at runtime, but that is something the App has to do, it involves adding something to a list.
You may want to make sure the Default listener isn't removed and use an OutputDebug tool to listen in.
回答2:
Would DbgView from Sysinternals be enough for your needs? It will show you the trace messages of all running processes without having you to configure a trace listener prior to starting the process.
回答3:
When I want to view debug output, I use a combination of log4net and DebugView. I can make log4net monitor a configuration file to allow me to change the log4net logging level at runtime, or I can use filters in DebugView.
来源:https://stackoverflow.com/questions/1290543/how-do-i-attach-a-trace-listener-to-a-running-process