Кто может подсказать? Хочу сделать форму, с выбором exe файла, и сохранением его в форме для дальнейшего программного запуска через Process.Start Фишка в том, что экзешник может быть любой и заранее имя запускаемого процесса мне неизвестно. А имя нужно для завершения этого процесса, когда понадобится. Есть ли возможность при запуске процесса сразу узнать его имя для дальнейшей работы с ним? Думал сравнивать все процессы после запуска нового и таким образом вычислять новый, но во время запуска может запуститься еще какой сторонний процесс и можно завершить в итоге не тот/
Отслеживать
задан 2 апр 2021 в 17:55
61 3 3 бронзовых знака
Вы когда процесс запускаете, у вас есть какая то инфа о процессе при этом? Как коонкретно вы запускаете процесс?
2 апр 2021 в 18:00
2 апр 2021 в 18:03
2 апр 2021 в 18:15
2 апр 2021 в 18:16
Ребят, конкретно для моей задачи разобрался. Я вызывал статический запуск процесса по неопытности. На деле мне нужно было создавать экземпляр Process и экземпляр ProcessStartInfo в который помещается инфа директории запуска. Process.StartInfo =ProcessStartInfo. Для завершения все просто Process.Kill.
Как узнать путь каждого запущенного процесса в диспетчере задач в Windows 10
Кстати размышления по поводу новых окон интересны. Стыдно за такой затуп, но все обошлось)) Всем спасибо
2 апр 2021 в 18:23
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Ребят, конкретно для моей задачи разобрался. Я вызывал статический запуск процесса по неопытности. На деле мне нужно было создавать экземпляр Process и экземпляр ProcessStartInfo в который помещается инфа директории запуска. Process.StartInfo =ProcessStartInfo. Для завершения все просто Process.Kill.
Кстати размышления по поводу новых окон интересны. Стыдно за такой затуп, но все обошлось)) Всем спасибо.
string source = «C:\Windows/System32/notepad.exe»; ProcessStartInfo myInfo = new ProcessStartInfo(source); Process notepadProc = new Process(); notepadProc.StartInfo = myInfo; notepadProc.Start(); Thread.Sleep(5000); notepadProc.Kill();
Отслеживать
ответ дан 2 апр 2021 в 18:25
61 3 3 бронзовых знака
AppDomain.CurrentDomain.FriendlyName
Возвращает только имя файла. Чтобы получить директорию можно использовать
AppDomain.CurrentDomain.ApplicationBase
Источник: ru.stackoverflow.com
Как узнать имя открытого файла из процесса в windows?
Хочу узнать имя процесса (ff.exe). Как это можно сделать? Получается только узнать что это notepad.exe.
Пробовал в духе:
public static bool FileLocked(string id) < var process = Process.GetProcessesByName («notepad.exe»); foreach (Process proc in process) < if (proc.MainModule.FileName == id) return true; >return false; >
- Вопрос задан более трёх лет назад
- 718 просмотров
4 комментария
Как узнать идентификатор процесса приложения в Windows 11/10
Простой 4 комментария
Источник: qna.habr.com
Вопрос Как узнать процесс
можно дискорд покажу
Energy Reload
Забаненный
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
можно дискорд покажу
Посмотреть вложение 162240
Код в студию.
И что тебе нужно, PID процесса получить или просто чекнуть его.
FuckProject
Эксперт
Код в студию.
И что тебе нужно, PID процесса получить или просто чекнуть его.
Скорее он хочет узнать название своего процесса.
Energy Reload
Забаненный
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код в студию.
И что тебе нужно, PID процесса получить или просто чекнуть его.
Получаем PID процесса
DWORD GetProcessPID(const char* ProcName) < PROCESSENTRY32 lppe; long PID = 0, Result = 0; HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); if (hSnap) < lppe.dwSize = sizeof(PROCESSENTRY32); Result = Process32First(hSnap, while (Result) < if (strcmp(lppe.szExeFile, ProcName) == NULL) < PID = lppe.th32ProcessID; break; >Result = Process32Next(hSnap, > CloseHandle(hSnap); > return PID; >
//Получаем PID процесса DWORD pid= GetProcessPID(«имя процесса.exe»); //Ждем процесс while (!GetProcessPID(«имя процесса.exe»)) Sleep(500);
Начинающий
Получаем PID процесса
DWORD GetProcessPID(const char* ProcName) < PROCESSENTRY32 lppe; long PID = 0, Result = 0; HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); if (hSnap) < lppe.dwSize = sizeof(PROCESSENTRY32); Result = Process32First(hSnap, while (Result) < if (strcmp(lppe.szExeFile, ProcName) == NULL) < PID = lppe.th32ProcessID; break; >Result = Process32Next(hSnap, > CloseHandle(hSnap); > return PID; >
//Получаем PID процесса DWORD pid= GetProcessPID(«имя процесса.exe»); //Ждем процесс while (!GetProcessPID(«имя процесса.exe»)) Sleep(500);
я просто хочу привязать процесс так что бы DLL подключалься к процессу
Олдфаг
я просто хочу привязать процесс так что бы DLL подключалься к процессу
Всё ясно, насмотрелись дарвинрутов и решил найти альтернативу
HWND hwnd = FindWindowA(«yourwndclass», «yourwndlabel»); if(hwnd != FindWindowA(«yourwndclass», «yourwndlabel»)) < //посылаем недокрякера >
Похожие темы
Ответы 1 Просмотры 239
Ответы 17 Просмотры 834
Ответы 0 Просмотры 206
Ответы 13 Просмотры 2K
Ответы 4 Просмотры 324
Поделиться:
- Лаборатория разработчиков
- Программирование
- C / C++
Немного о главном
- Новости форума
- Работа и услуги
- Предложить идею
- Купить рекламу
Полезные мелочи
- Наша группа ВКонтакте
- Рынок форума
- Блог администратора в Telegram
- Бесплатные игры Steam
Источник: yougame.biz