我正在使用应用程序(实际上是服务),并且我想为不同的情况添加日志记录处理程序:需要记录到外部文件,需要记录到另一个服务,...,但在这里我对应用程序的主题感兴趣,并且#34;附加到流程"调试。
工作方式如下:我编写了一个日志管理器,其中包含多个日志处理程序,当应用程序要求记录某些内容时,日志记录管理器会遍历所有日志处理程序并要求它们执行记录他们负责。
例如为: 当存在外部文件时,应用程序(在启动时)读取文件并将相应的日志记录处理程序添加到日志记录管理器 " TEST_CLASS"宏将被另一个宏替换,该宏可能决定将另一个日志记录处理程序添加到日志记录管理器。
现在我有以下问题:我想知道应用程序在哪个时刻受到"附加到进程":当发生这种情况时我会将相应的日志记录处理程序添加到日志记录中manager(此日志记录处理程序基于OutputDebugString()
)。
万一你想知道"但为什么要把事情弄得这么复杂?只需将OutputDebugString()
放在您想要的代码中。",有一个问题:我的应用程序存在严重的性能问题,我希望避免过多调用OutputDebugString()
。< / p>
有人有想法吗?我已经尝试了this URL中找到的方法,但由于缺少DLL,这似乎无法正常工作。最重要的是,我不太喜欢这个解决方案,因为它包含一个while
循环:我正在寻找某种订阅,我可以订阅并在消息时收到警告到达。
有人有想法吗?
提前致谢