Перейти к содержанию

Запуск GTA SA через приложение на C#


Рекомендуемые сообщения

Привет всем. Пишу не совсем чит, но в принципе по теме. Необходимо запустить GTA SA через сторонее приложение написанное на C#(и в идеале получить его Handle). Пробовал через Process.Start() и через CreateProcess результат такой же.

Игра в принципе запускается, но дело в том что процесс запускаестся в фоне.

20189036.jpg

 

Если опустить описание функции всё работает примерно так:

public Loader(string path) {
	STARTUPINFO si = new STARTUPINFO();
	PROCESS_INFORMATION pi = new PROCESS_INFORMATION();
	CreateProcess(path, null, 0, 0, false, 0, 0, null, ref si, out pi);
}

Подскажите пожалуйста как решить данную проблему =(

Изменено пользователем Robit
Ссылка на комментарий
Поделиться на другие сайты

В общем только с гта, ксс, ксго стим версии игр не работает запуск через CreateProcess, остальные игры запускает без проблем.
Изменено пользователем MParker
Ссылка на комментарий
Поделиться на другие сайты

10 минут назад, X86Jumps сказал:

он про стим ничего не говорил вроде

поэтому и уточняю, просто часто именно steam api создает проблемы с запуском без клиента.

Ссылка на комментарий
Поделиться на другие сайты

я когда разбирался как ре5 запускается из стима (потому что напрямую ошибку давал)

вроде понял что устанавливается в оурежении чтото и еще что то

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, MParker сказал:

В общем только с гта, ксс, ксго стим версии игр не работает запуск через CreateProcess, остальные игры запускает без проблем.

У меня пиратка

Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, X86Jumps сказал:

там нет никаких параметров?если просто ярлыком то CreateProcess работал бы

Нет параметров, мне не имеет смысла врать )

Я создал несколько ярлыков и все нормально с каждым

Ссылка на комментарий
Поделиться на другие сайты

14 минуты назад, X86Jumps сказал:

там нет никаких параметров?если просто ярлыком то CreateProcess работал бы

 

Проблема с самой игрой,  даже через отладчик её не запустить т.е все работает, даже распаковка файлов, если посмотреть на трассировку, но окна не появляется.:D

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, MParker сказал:

 

Проблема с самой игрой,  даже через отладчик её не запустить т.е все работает, даже распаковка файлов, если посмотреть на трассировку, но окна не появляется.:D

Т.е. это не возможно?

Ссылка на комментарий
Поделиться на другие сайты

13 минуты назад, MParker сказал:

Возможно, если найти причину, почему игра себя так странно ведет под CreateProcess

Понятно, буду искать причины тогда.

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, MParker сказал:

Возможно, если найти причину, почему игра себя так странно ведет под CreateProcess

Более тупым я себя никогда не чувствовал...

using System.Diagnostics;

class Program {
	static void Main(string[] args) {
		Process process = new Process();
		ProcessStartInfo startInfo = new ProcessStartInfo(@"E:\Games\GTA San Andreas\gta_sa.exe");
		startInfo.WorkingDirectory = @"E:\Games\GTA San Andreas";// Собственно этого и не хватало

		process.StartInfo = startInfo;

		process.Start();
		process.WaitForExit();
	}
}

Вот рабочее решение решение

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

21 минуту назад, Robit сказал:

Вот рабочее решение решение

Только хотел написать про указание каталога.:D

 

        CreateProcess(exe,
        NULL,    
        NULL,         
        NULL,   
        FALSE,   
        0, 
        NULL,
        dir_path,   
        &si,   
        &pi)

 

 

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.