Была такая задумка сделать мини клиент для подключения компьютера к *** серверу который настроен для open***, для клиентской части также использую его же, для этого использую след. код using System; using System.Diagnostics; namespace Open***Launcher { class Program { static void Main(string[] args) { try { // Замените "your_config_file.o***" на путь к вашему конфигурационному файлу Open*** string configFile = "C:\\Users\\Owner\\Desktop\\***-user-1.o***"; // Замените "path_to_open***_executable" на путь к исполняемому файлу Open*** string open***Path = @"C:\Users\Owner\Desktop\open***-portable-win64-2.4.9-I601-8\app\win10\bin\open***.exe"; ProcessStartInfo startInfo = new ProcessStartInfo { FileName = open***Path, Arguments = $"--config \"{configFile}\"", WindowStyle = ProcessWindowStyle.Minimized, UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, CreateNoWindow = true }; Process open***Process = new Process { StartInfo = startInfo, EnableRaisingEvents = true }; open***Process.OutputDataReceived += (sender, e) => Console.WriteLine(e.Data); open***Process.ErrorDataReceived += (sender, e) => Console.Error.WriteLine(e.Data); open***Process.Start(); open***Process.BeginOutputReadLine(); open***Process.BeginErrorReadLine(); Console.WriteLine($"Open*** started with config: {configFile}"); Console.WriteLine("Press any key to stop Open***..."); Console.ReadKey(); open***Process.CloseMainWindow(); open***Process.Close(); } catch (Exception ex) { Console.WriteLine($"Error: {ex.Message}"); } Console.ReadKey(); } } } CSHARP using System; using System.Diagnostics; namespace Open***Launcher { class Program { static void Main(string[] args) { try { // Замените "your_config_file.o***" на путь к вашему конфигурационному файлу Open*** string configFile = "C:\\Users\\Owner\\Desktop\\***-user-1.o***"; // Замените "path_to_open***_executable" на путь к исполняемому файлу Open*** string open***Path = @"C:\Users\Owner\Desktop\open***-portable-win64-2.4.9-I601-8\app\win10\bin\open***.exe"; ProcessStartInfo startInfo = new ProcessStartInfo { FileName = open***Path, Arguments = $"--config \"{configFile}\"", WindowStyle = ProcessWindowStyle.Minimized, UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, CreateNoWindow = true }; Process open***Process = new Process { StartInfo = startInfo, EnableRaisingEvents = true }; open***Process.OutputDataReceived += (sender, e) => Console.WriteLine(e.Data); open***Process.ErrorDataReceived += (sender, e) => Console.Error.WriteLine(e.Data); open***Process.Start(); open***Process.BeginOutputReadLine(); open***Process.BeginErrorReadLine(); Console.WriteLine($"Open*** started with config: {configFile}"); Console.WriteLine("Press any key to stop Open***..."); Console.ReadKey(); open***Process.CloseMainWindow(); open***Process.Close(); } catch (Exception ex) { Console.WriteLine($"Error: {ex.Message}"); } Console.ReadKey(); } } } Но после выполнения программы получаю следующую ошибку: http://joxi.ru/823184pFw8DBRr Open*** использую портативную версию, софтом хочу делится с друзьями, поэтому для меня важна портативность.
Aladdin, ошибка, которую вы получаете, указывает на то, что Open*** не может найти файлы, необходимые для запуска. Возможно, это связано с тем, что вы используете портативную версию Open***. Попробуйте изменить путь к исполняемому файлу Open*** на относительный путь, который указывает на файл внутри папки с вашим приложением. Например, если ваше приложение находится в папке "C:\MyApp\", а исполняемый файл Open*** находится в папке "C:\MyApp\Open***\", то путь к исполняемому файлу должен выглядеть так: "Open***\open***.exe". Также убедитесь, что все необходимые файлы и папки для работы Open*** находятся в той же папке, что и исполняемый файл. Если это не поможет, попробуйте запустить Open*** в командной строке, чтобы увидеть более подробную информацию об ошибке.
ChatGPT, Ты тупое создание, прочти для начало ошибку а потом говори, там пишет что не установлен какой то адаптер.