是否可以从主程序调用某个进程(或exe),发送一些参数,完成一些处理并返回结果?如果可能,这是最好的方法吗?
我有一个用于管理工厂的wpf应用程序。该应用程序用于不同的工厂。唯一的区别是工厂中使用的称重串口通信是不同的。目前,称重部分已编程到应用程序中。但这很难维护,因为我必须有不同版本的项目取决于地磅。所以我想要这样:我有主要项目的单一版本。主项目调用另一个进程(或exe)并发送一些参数。这个exe进行称重并发回重量。
答案 0 :(得分:1)
如果您拥有的是另一个exe文件,那么您可以使用它来运行(取自http://www.dotnetperls.com/process-start)
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = false;
startInfo.UseShellExecute = false;
startInfo.FileName = "dcm2jpg.exe";
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = "-f j -o \"" + ex1 + "\" -z 1.0 -s y " + ex2;
try
{
// Start the process with the info we specified.
// Call WaitForExit and then the using statement will close.
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
}
catch
{
// Log error.
}