system.componentmodel.win32exception при попытке запустить двоичный файл Stockfish для Android - PullRequest
0 голосов
/ 14 мая 2018

Я создаю шахматную игру в Unity.Я хочу построить свою игру для Android.Для AI я использую Stockfish Chess Engine и, в частности, файл «Stockfish-9-arm64v8», который является двоичным файлом для Android.Я создал сценарий C #, который создает процесс для запуска этого двоичного файла и связи с ним.Когда я пытаюсь запустить процесс, возникает исключение ->

try{
     mProcess.Start(); 
}
catch(Exception e){
    Helper.PrintString(e.GetType().ToString()); // ----------------(1)
    Helper.PrintString(e.Message); // --------------(2)
}

/* 
(1) is printing : 
 system.componentmodel.win32exception
(2) is printing : 
ApplicationName = 
'/storage/emulated/0/Android/data/com.chessmania.chess/files/Stockfish-9- arm64v8', CommandLine = '', CurrentDirectory = ''
*/

Кроме того, параметры моей информации о процессе следующие:

ProcessStartInfo si = new ProcessStartInfo() 
{
FileName = System.IO.Path.Combine(Application.persistentDataPath, "Stockfish-9-arm64v8"),
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardError = true,
RedirectStandardInput = true,
RedirectStandardOutput = true
};

Может кто-нибудь, пожалуйста, помогите мне с этим.Последние несколько дней я пытался решить эту проблему, но не смог.Это как-то связано с разрешением файла ??Я имею в виду, я должен включить некоторые аргументы в моих ProcessInfoParameters для принудительного запуска двоичного файла ??Я действительно не знаю, это проблема или что-то еще?Поправь меня с самого начала, если я ошибаюсь.

Я просто хочу интегрировать Stockfish Chess Engine с Unity Project и создать его для платформы Android.Если у кого-то есть какие-либо идеи или предложения или кто-то сталкивался с подобной проблемой раньше, пожалуйста, дайте мне знать, как решить эту проблему.Буду признателен.Спасибо за терпение, пока я здесь:)

...