尝试在C#中启动Tunnelbear.exe

问题描述 投票:0回答:1

所以我需要在 C# 中以编程方式启动 TunnelBear.exe(一个 VPN),然后再次杀死它。在cmd中执行此操作的命令是(进入目录后)

TunnelBear.exe --on

这是我在 C# 中尝试过的:

var process = new Process
{
    StartInfo = new ProcessStartInfo
    {
        FileName = @"C:\Program Files (x86)\TunnelBear\TunnelBear.exe",
        Arguments = @"TunnelBear.exe --on",
        UseShellExecute = false,
        CreateNoWindow = true,
        RedirectStandardOutput = true,
        RedirectStandardInput = true
    }
};
process.Start();
c# cmd
1个回答
0
投票

首先欢迎来到SO。

我认为您混淆了 ProcessStartInfo 的用法,您指定了应该启动的文件名,然后将完整参数与应用程序名称传递给该应用程序。 尝试将

Argument
更改为仅 `"--on",看看是否有效?

或者将

UseShellExecute
更改为
true
,然后删除
FileName
部分并添加
Working Directory
。示例:

var process = new Process
{
    StartInfo = new ProcessStartInfo
    {
        WorkingDirectory = @"C:\Program Files (x86)\TunnelBear",
        Arguments = @"TunnelBear.exe --on",
        UseShellExecute = true,
        CreateNoWindow = true,
        RedirectStandardOutput = true,
        RedirectStandardInput = true
    }
};
process.Start();
© www.soinside.com 2019 - 2024. All rights reserved.