无法从.net核心Web应用程序调用.net核心进程

时间:2019-08-09 13:21:14

标签: c# .net-core

我有一个ASP .NET Core Web应用程序(win服务),需要调用另一个.net Core进程(控制台应用程序)才能执行。 我有以下用于通话的代码:

 var process = new Process
 {
    StartInfo = new ProcessStartInfo
    {
        FileName = "dotnet",
        Arguments = @"C:\CxSASTEngine\CxEngine\Product\netcoreapp2.1\ScanClient.dll" + " blablabla",
        UseShellExecute = false,
        RedirectStandardOutput = false,
        RedirectStandardError = false,
        CreateNoWindow = false,
    }
};

process.Start();

如果我将相同的代码放在新的.Net核心控制台应用程序中,则该过程将运行,但是在win服务范围内,它将无法运行。

ScanClient.dll代码为:

static void Main(string[] args)
{            try
            {
                Console.WriteLine(args.Length);
                if (args.Length > 0)
                {
                    Console.WriteLine(args[0]);
                }
                Console.ReadLine();
                if (File.Exists(@"C:\Users\Mary\Desktop\mary.txt"))
                {
                    File.Delete(@"C:\Users\Mary\Desktop\mary.txt");
                }
                File.Create(@"C:\Users\Mary\Desktop\mary.txt");
            }
            catch (Exception)
            {
                Environment.Exit(-1);
            }
}

代码为什么不能在win服务范围内运行是什么原因? 公平地说,如果我将ScanClient创建为生成.exe文件的.netFramewrok控制台应用程序,则该过程正在执行。

0 个答案:

没有答案