代码之家  ›  专栏  ›  技术社区  ›  ChrisBD

是否可以从专用队列捕获msmq消息或添加第二个目标?

  •  0
  • ChrisBD  · 技术社区  · 16 年前

    我正在研究的项目使用一个商用软件包将音频路由到各个目的地。此软件包是一个单独的应用程序,可用于将音频路由软件生成的事件记录到数据库中,例如将设备1连接到设备3。

    我的任务是编写一个应用程序,对音频路由软件生成的特定事件作出反应,例如对设备3的任何连接作出反应。

    我注意到音频路由软件使用msmq将事件信息发布到事件记录器。这意味着,如果记录器软件暂时不运行,事件数据可以累积。

    我已找到队列-“”\private$\audiolog“,希望执行以下操作:

    1. 检测和处理新消息为 它们进入队列。

    2. 允许当前事件录制 软件继续 像以前一样工作-因此消息 不能被我的移除 应用。

    3. 确保我总是能看到 消息。

    现在我注意到,我可以使用messagequeue查看队列,以便在不删除的情况下读取消息,还可以使用getAllmessages()查看事件记录器未删除的所有消息。

    如果录音软件没有连接,那么我可以看到我可以很容易地收集信息数据,但我看不到我如何确保在录音机连接时删除信息之前看到信息。

    理想情况下,我希望将我的应用程序添加为消息队列的第二个目的地。这可以通过程序实现吗?

    如果不是因为我有管理员特权,那么可以使用队列访问机器,是否可以手动配置队列以将队列的第二个副本分支到可以连接我的软件的队列?

    1 回复  |  直到 16 年前
        1
  •  1
  •   Igal Serban    16 年前

    msmq具有日志记录功能。可以将队列配置为具有日志。然后,从队列中删除的每个消息(通过读取操作)都将移动到日志队列中,而不会被删除。然后你可以读(或偷看)日记。如果您正在使用Peek操作,请确保您有一个随时删除日志的作业。