我有一个调用Exe的Windows服务。该exe基本上订阅了特定主题的MQTT代理,并在收到来自代理的发布后将结果写入文件中。我面临的问题是,exe在打开服务之前不会执行其任务。当我关闭服务时,exe开始执行功能。我用来调用exe的代码如下:
private void callExe(String param)
{
Process MqttProcess = new Process();
MqttProcess.StartInfo.FileName = @"C:\ServiceManager\Mqtt\Mqtt\bin\Debug\Mqtt.exe";
MqttProcess.StartInfo.Arguments = param;
MqttProcess.StartInfo.UseShellExecute = false;
MqttProcess.StartInfo.CreateNoWindow = true;
MqttProcess.StartInfo.RedirectStandardOutput = true;
MqttProcess.Start();
MqttProcess.CloseMainWindow();
}
谢谢。