3

我正在尝试将我的 xbox 360 控制器连接到我的树莓派,使用 c# 单声道。连接命令是“sudo xboxdrv”。如果我直接在树莓派上尝试此命令有效,但当我从单控制台应用程序尝试它时会出错。我使用的代码:

var info = new ProcessStartInfo();
info.FileName = "sudo xboxdrv";

info.UseShellExecute = false;
info.CreateNoWindow = true;

info.RedirectStandardOutput = true;
info.RedirectStandardError = true;

var p = Process.Start(info);
p.WaitForExit();

Console.ReadLine();

我得到的错误是“本机错误=找不到指定的文件”。我想它与 sudo 有关,但没有 sudo 程序将无法工作,如果可能的话,我不想让我的用户成为 root 用户。

4

1 回答 1

7

sudo xboxdrv不是文件名,它是带有参数的命令。sudo是文件名,xboxdrv是参数。

所以你的代码应该是:

var info = new ProcessStartInfo();
info.FileName = "sudo";
info.Arguments = "xboxdrv";

info.UseShellExecute = false;
info.CreateNoWindow = true;

info.RedirectStandardOutput = true;
info.RedirectStandardError = true;

var p = Process.Start(info);
p.WaitForExit();

Console.ReadLine();
于 2013-10-05T14:07:11.503 回答