在我的M.U.G.E.N锦标赛经理(以及在掌握了Quick命令之后)工作时,我似乎无法在代码中运行游戏。
错误消息:无法打开配置文件数据/mugen.cfg。 读取数据/mugen.cfg错误
以下是该过程的代码:
var proc = Process.Start(SettingsInit.Default.GameDir + "\\mugen.exe","-p1 \"" + folder1 + "\\" + folder1 + ".def\" -p2 \"" + folder2 + "\\" + folder2 + ".def\" -p1.ai 1 -p2.ai 1 -rounds " + SettingsInit.Default.Rounds.ToString() + " -s " + stage + " -log match.txt");这是一个示例输出,类似于我当前的M.U.G.E.N构建:
C:\Users\用户名\Desktop\MUGEN 1.1\mugen.exe -p1 "Sonic\Sonic.def“-p2 Shadow\Shadow.def”-p1.ai 1 -p2.ai 2 -rounds 2 -s“-log match.txt
当我通过CMD运行它时,它运行得很完美。在与Process检查之后,我发现了对信息的访问(路径、命令等)。已经被否认了。有什么想法,VS如何防止游戏加载配置文件?
这与错误/缺失的转义序列和缺少的管理权限无关,因为我是作为管理员运行VS的。
如果与M.U.G.E.N和C#合作的人知道这个问题的答案,那将是有帮助的。
发布于 2017-12-03 17:06:42
问题已经解决了!在StartInfo中指定域名、用户名和密码(后者目前已经被硬编码,但我已经在寻找一个方便的解决方案)之后,我就能够运行这个游戏了。似乎VS正在用一个特殊的用户启动一个进程,M.U.G.E.N要求当前活动的用户定位配置文件。
顺便说一句,谢谢你,凯文,提醒我关于字符串连接的事。
发布于 2022-10-11 01:13:12
在我的例子中,这个代码工作只使用
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.WorkingDirectory = "Your mugen directory"https://stackoverflow.com/questions/47612969
复制相似问题