Ошибка, с которой вы столкнулись, возникает из-за того, что <code>subprocess.run()</code> неправильно интерпретирует вашу команду. Функция пытается запустить команду в рамках интерпретатора командной строки, и в данном случае интерпретатор воспринимает вашу строку как вызов <code>CMake</code> , а не <code>gta_sa.exe</code> . <br/> <br/> Это происходит потому что аргумент <code>shell=True</code> заставляет Python передать вашу команду в командную оболочку (shell), которая, в свою очередь, пытается её выполнить. Ошибка возникает, когда командная оболочка не может корректно разобрать вашу команду. <br/> <br/> Чтобы исправить эту проблему, можно разделить команду и аргументы в виде списка элементов, чтобы <code>subprocess.run()</code> мог корректно их обработать. Вот как можно изменить ваш код: <br/> <br/> <pre><code class="python">import subprocess
# Разделяем команду и аргументы в список
command = ['gta_sa.exe', '-c', '-n', 'NickName', '-h', '51.15.205.209', '-p', '1337']
# Вызываем subprocess.run без использования shell=True
subprocess.run(command)</code></pre> <br/> <br/> В этом случае каждый аргумент передаётся отдельно, и <code>subprocess.run()</code> может корректно его обработать и передать исполняемому файлу. Этот подход является более безопасным и предпочтительным, так как <code>shell=True</code> может повышать риски безопасности, если аргументы командной строки недостаточно контролируются или получаются из внешних, не проверенных источников. <br/> <br/> Источник: <a href="http://chat.openai.com" rel="nofollow">ChatGPT</a>