运行 OS 带有 MQ 服务对象的命令 - AMQ8734- 命令失败 - 程序无法启动
Run OS Commands with MQ Service object - AMQ8734- Command failed - Program could not be started
我想 运行 在 MQ 服务器 Windows 机器上远程执行测试命令。为此,我使用 SupportPac MO72 并且我可以使用管理员 ID 成功地远程连接到 MQ 服务器。现在我有可用的 MQSC 控制台,我想 运行 一些 OS 命令创建 SERVICE
对象。我将我的服务定义为:
DEFINE SERVICE('myService') STARTCMD('C:\Windows\System32\PING.EXE 127.0.0.1') SERVTYPE(SERVER) CONTROL(MANUAL)
服务创建成功,现在我想启动这个服务,所以输入:
START SERVICE(myService)
但是我得到了这个错误:
AMQ8734- Command failed - Program could not be started
有什么想法吗?
有一些错误的组合...
你的 SERVTYPE(SERVER)
适用于开始 运行ning 并保持 运行ning 的东西(因此其健康状况受到监控)。 SERVTYPE(COMMAND)
是为了你 运行 的事情而结束。只能监控一个 SERVTYPE(SERVER)
的健康状况,但它应该很长 运行ning.
您的 startcmd
需要是二进制文件才能启动 - 只是二进制文件。 STARTARGS
需要保存命令的参数。
DEFINE SERVICE('myService') +
STARTCMD('C:\Windows\System32\PING.EXE') +
STARTARG('127.0.0.1') +
SERVTYPE(COMMAND) +
CONTROL(MANUAL)
当然,您可能希望查看其输出 - 查看 STDOUT
和 STDERR
等参数以将输出捕获到文件中。
如果您希望输出在队列中返回到您的远程客户端,它会变得有点复杂。您必须捕获输出并将其通过 amqsput
或其他一些程序通过管道将其放入队列,然后检索它。该队列不能与您在 MO72 中使用的回复队列相同,因为 MO72 会阻塞文本,因此您必须使用 amqsgetc
或其他一些程序从队列中获取输出。
我想 运行 在 MQ 服务器 Windows 机器上远程执行测试命令。为此,我使用 SupportPac MO72 并且我可以使用管理员 ID 成功地远程连接到 MQ 服务器。现在我有可用的 MQSC 控制台,我想 运行 一些 OS 命令创建 SERVICE
对象。我将我的服务定义为:
DEFINE SERVICE('myService') STARTCMD('C:\Windows\System32\PING.EXE 127.0.0.1') SERVTYPE(SERVER) CONTROL(MANUAL)
服务创建成功,现在我想启动这个服务,所以输入:
START SERVICE(myService)
但是我得到了这个错误:
AMQ8734- Command failed - Program could not be started
有什么想法吗?
有一些错误的组合...
你的
SERVTYPE(SERVER)
适用于开始 运行ning 并保持 运行ning 的东西(因此其健康状况受到监控)。SERVTYPE(COMMAND)
是为了你 运行 的事情而结束。只能监控一个SERVTYPE(SERVER)
的健康状况,但它应该很长 运行ning.您的
startcmd
需要是二进制文件才能启动 - 只是二进制文件。STARTARGS
需要保存命令的参数。DEFINE SERVICE('myService') + STARTCMD('C:\Windows\System32\PING.EXE') + STARTARG('127.0.0.1') + SERVTYPE(COMMAND) + CONTROL(MANUAL)
当然,您可能希望查看其输出 - 查看 STDOUT
和 STDERR
等参数以将输出捕获到文件中。
如果您希望输出在队列中返回到您的远程客户端,它会变得有点复杂。您必须捕获输出并将其通过 amqsput
或其他一些程序通过管道将其放入队列,然后检索它。该队列不能与您在 MO72 中使用的回复队列相同,因为 MO72 会阻塞文本,因此您必须使用 amqsgetc
或其他一些程序从队列中获取输出。