У меня такая же проблема как здесь Как запустить chmod в OSX с C#
Я хотел бы изменить разрешение с помощью кода в Unity Я старался :
ProcessStartInfo startInfo = new ProcessStartInfo()
{
FileName = "chmod",
Arguments = "+x " + "Game.app/Contents/MacOS/Game"
};
Process proc = new Process() { StartInfo = startInfo, };
proc.Start();
но не работает, какие советы?
нет ошибок, но не работает, я пробовал те же команды через терминал, и все работает
Вы уверены, что ваш код вообще вызывается/выполняется? (точки останова и отладка)
да, я уверен. Может быть, я добавил неправильные аргументы?
может путь не правильный? Я не знаю, как относительные пути работают для Unity на iOS. Возможно, вам придется указать startInfo.WorkingDirectory
Я тестирую автономную сборку Mac, а не iOS, сейчас тестирую разные пути





Я не уверен, но, возможно, вам сначала нужно открыть, например. bash, а затем передать вызов chmod в качестве параметра, используя -c что-то вроде
ProcessStartInfo startInfo = new ProcessStartInfo()
{
FileName = "/bin/bash",
Arguments = "-c \" chmod +x Game.app/Contents/MacOS/Game\" ",
CreateNoWindow = true
};
Process proc = new Process() { StartInfo = startInfo, };
proc.Start();
все еще предполагая, конечно, что путь правильный.
и, возможно, также добавить некоторые обратные вызовы, такие как
proc.ErrorDataReceived += (sender, e) =>
{
UnityEngine.Debug.LogError(e.Data);
};
proc.OutputDataReceived += (sender, e) =>
{
UnityEngine.Debug.Log(e.Data);
};
proc.Exited += (sender, e) =>
{
UnityEngine.Debug.Log(e.ToString());
};
proc.Start();
все тот же результат,
Я вижу результат (ExitCode) 1 в Exited Delegate
хорошо, по крайней мере, мы знаем, что команда выполнена и по какой-то причине не работает (код выхода 1), может быть, сначала вы должны попробовать запустить "-c \"ls Game.app/Contents/MacOS/Game\"" и посмотреть, может быть, соответствующий файл не найден
а, сек. Я вижу проблему. в моей игре есть пробел в названии (Test Game.app) все отлично работает когда я убрал пробел
Заменил название Test Game и работает. Большое спасибо за уделенное время
Добро пожаловать в StackOverflow! не могли бы вы уточнить
doesn't workнемного дальше? Какие-то исключения/ошибки? Что-то вообще происходит? Вы передаете правильные аргументы/путь?