C # Process.Start с аргументом работает конструктор exe, который не имеет аргументов - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть приложение «A», которое содержит 2 конструктора, один из которых не имеет аргументов, а другой принимает 2 аргумента

Я использую приложение «A» в качестве отдельного приложения или запускаемого другим приложением'B'

Когда я вызываю функцию process.start и передаю аргументы, код запускает только конструктор без аргументов.Любая идея о том, как заставить конструктор с аргументом быть вызванным

Вот функция, которая вызывает приложение 'A' из приложения 'B'

 private void RunPartialDeleteProcess(string locationIdForSubscription, string connectionStringOfNewlyCopiedHive)
    {
        string applicationPath = System.IO.Path.GetDirectoryName(Application.ExecutablePath) +"\\PartialDelete";
        if (System.Diagnostics.Debugger.IsAttached)
        {
            applicationPath = @"D:\Data\bin\x64\Debug";
        }
        Process process = new Process();
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.FileName =Path.Combine(applicationPath, "PartialDeleteToolUI.exe");
        startInfo.Arguments = $"{locationIdForSubscription} {connectionStringOfNewlyCopiedHive}";
        process.StartInfo = startInfo;
        process.Start();
    }

Вот класс для приложения 'A'

public partial class frmParialDeleteTool : Form
{

    public frmParialDeleteTool()
    {
       Console.WriteLn("Hello 1")
    }

    public frmParialDeleteTool(string location, string connectionString)
    {

        Console.WriteLn("Hello 2")
    }
}

Результат всегда Привет 1

Спасибо Jp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...