Около месяца назад я написал себе скрипт на python для автоматического входа в систему запущенной программы и другой связанной с ней информации, и для ее получения я использовал программу на C #.
Я скачал игру сегодня и когда я запускалэто, я получил System.ComponentModel.Win32Exception
сообщение об ошибке.
Я открыл Visual Studio для отладки, где я получаю ошибки.Я получаю сообщение об ошибке, когда пытаюсь получить доступ к Process.MainModule
.
. Когда я получаю сообщение об ошибке при написании этой программы, я искал ответы в Интернете и сделал программу C # 64-битной для доступа к 64-битным процессам изапрашивать права администратора для доступа к процессам, запущенным от имени администратора.Все вопросы, которые я мог найти об ошибках в MainModule, связаны с этими двумя проблемами.
В игре используется Easy Anti Cheat, и я предполагаю, что это может помешать мне получить доступ к процессу.
Iтакже использовал WMI
, чтобы попытаться получить хотя бы путь к файлу, чтобы я мог получить некоторую информацию из функции FileVersionInfo.GetVersionInfo
, но wmi также не возвращал путь к файлу или командную строку.
Я использовал psutil
в Python, чтобы получить командную строку, потому что я не мог получить это из C # без использования WMI, поэтому я попытался получить некоторую информацию оттуда, но это ошибки на все, что я пытаюсь сделать, я даже не могу получить имя файла, тогда как яможет получить это из C #.
Связанная часть кода C #:
int pid; //I get this from command line arguments
Process p;
p = Process.GetProcessById(pid);
var filename = p.MainModule.FileName ?? "";
Есть ли способ, которым я могу получить хотя бы путь exe, чтобы я мог использовать FileVersionInfo, не вызывая анти-Читать программу и потенциально забанить себя?Даже диспетчер задач Windows 10 не показывает командную строку (но он открывает папку с файлами, когда я щелкаю правой кнопкой мыши по игре и выбираю открытый путь к файлу).