Загрузка...

Запуск EXE файла через C#

Тема в разделе C# создана пользователем Lenorio 1 фев 2025. 304 просмотра

Загрузка...
  1. Lenorio
    Lenorio Автор темы 1 фев 2025 5 27 май 2023
    При запуске EXE файла через C# он открывается буквально на доли секунды и закрывается, в чем может быть проблема?
    CSHARP
    using System;
    using System.Diagnostics;
    using System.Windows.Forms;

    namespace SimpleLoader
    {
    public partial class Form2 : Form
    {
    public Form2()
    {
    InitializeComponent();
    }

    private void timer1_Tick(object sender, EventArgs e)
    {
    try
    {
    timer1.Stop(); // Остановить таймер

    string executablePath = @"C:\skeet\steam.exe";
    if (!System.IO.File.Exists(executablePath))
    {
    MessageBox.Show("Ошибка: Файл C:/skeet/steam.exe не найден.");
    return;
    }

    ProcessStartInfo startInfo = new ProcessStartInfo
    {
    FileName = executablePath,
    Verb = "runas", // Запуск от имени администратора
    UseShellExecute = true,
    CreateNoWindow = true
    };

    Process.Start(startInfo);
    label4.Text = "Исполняемый файл успешно запущен!";
    }
    catch (Exception ex)
    {
    MessageBox.Show($"Ошибка: {ex.Message}");
    }
    }
    }
    }
     
  2. поляк
    поляк 1 фев 2025 СТАТЬ МИЛЛИОНЕРОМ ЗА МЕСЯЦ - https://lolz.live/threads/8241684/ 281 20 окт 2023
    скит значит))) молодец почему не мой миссварчик

    Проблема, с которой вы столкнулись, может быть связана с несколькими факторами. Вот несколько возможных причин, почему EXE файл открывается на доли секунды и закрывается:

    Ошибка в самом исполняемом файле: Возможно, steam.exe завершает свою работу из-за ошибки или неправильной конфигурации. Попробуйте запустить его вручную, чтобы проверить, работает ли он без проблем.
    Параметры запуска: Некоторые приложения требуют определенных параметров командной строки для корректной работы. Убедитесь, что steam.exe не требует дополнительных аргументов.
    Проблемы с правами доступа: Вы используете Verb = "runas" для запуска приложения от имени администратора. Если у вас нет прав администратора или если UAC (Контроль учетных записей) блокирует запуск, это может привести к неожиданному завершению работы приложения. Попробуйте запустить приложение без этой опции, убрав строку Verb = "runas".
    Создание окна: Вы установили CreateNoWindow = true, что означает, что окно не будет отображаться. Если приложение ожидает взаимодействия с пользователем через консоль или окно, оно может завершиться, так как не может получить доступ к необходимым ресурсам. Попробуйте установить CreateNoWindow = false.
    Проблемы с зависимостями: Убедитесь, что все необходимые библиотеки и зависимости для steam.exe доступны и корректно установлены на вашей системе.
    **** и отладка: Если у вас есть доступ к логам приложения, посмотрите, нет ли там сообщений об ошибках. Это может дать подсказки о том, что именно идет не так.

    Вот пример кода с изменениями, которые могут помочь:

    Код
    private void timer1_Tick(object sender, EventArgs e)
    {
    try
    {
    timer1.Stop(); // Остановить таймер

    string executablePath = @"C:\skeet\steam.exe";
    if (!System.IO.File.Exists(executablePath))
    {
    MessageBox.Show("Ошибка: Файл C:/skeet/steam.exe не найден.");
    return;
    }

    ProcessStartInfo startInfo = new ProcessStartInfo
    {
    FileName = executablePath,
    UseShellExecute = true,
    CreateNoWindow = false // Изменено на false
    };

    Process process = Process.Start(startInfo);
    label4.Text = "Исполняемый файл успешно запущен!";
    }
    catch (Exception ex)
    {
    MessageBox.Show($"Ошибка: {ex.Message}");
    }
    }
     
    1. Посмотреть предыдущие комментарии (2)
Top