Вот посмотри тут что то видел
Источник: http :// programmersforum . ru / showthread . php?t=45452
_______________________________________________
Вот еще вариант
FILE *p = popen("pidof program", "r");
//FILE *p = popen("ps | grep program | cut -f1 -d ' '", "r"); // если нет pidof
if (p)
{
fread(...,p);
pclose(p);
}
else perror("");
pidof шарится по /proc перебирая все процессы.
___________________________________________
Модефицирован pidof :
#include <stdio.h>
#include <string.h>
#include <err.h>
#include <kvm.h>
#include <sys/param.h>
#include <sys/sysctl.h>
#include <sys/user.h>
#include <sys/param.h>
#include <fcntl.h>
#include <stdlib.h>
#include <sysexits.h>
static int get_pid_of_process(char *process_name)
{
static kvm_t *kd = NULL;
struct kinfo_proc *p;
int i, n_processes, processes_found;
processes_found = 0;
if ((kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, "kvm_open")) == NULL)
(void)errx(1, "%s", kvm_geterr(kd));
else {
p = kvm_getprocs(kd, KERN_PROC_PROC, 0, &n_processes);
for (i = 0; i<n_processes;>.ki_comm, COMMLEN+1) == 0) && (getpid() != (int)p.ki_pid)) {
processes_found = (int)p.ki_pid;
}
kvm_close(kd);
}
return processes_found;
}
_______________________________________
Другие языки программирования и технологии
как узнать PID системного процесса зная его имя EXE ...необходимо реализовать на C++ VS
Через перебор процессов и сравнение его имени:
Как получить список запущенных процессов?
Автор: Александр Федотов
Опубликовано: 23.10.2001
Исправлено: 13.03.2005
Версия текста: 1.1
Тестовое приложение Process Viewer
Введение
Win32 предоставляет несколько способов перечисления запущенных процессов. К сожалению, нет единого способа, который бы работал на всех Win32-платформах. Программистам приходится комбинировать несколько методов в одной программе, чтобы она работала на всех версиях Windows.
Мы рассмотрим следующие методы:
* С помощью библиотеки Process Status Helper (PSAPI)
* С помощью ToolHelp32 API
* С помощью недокументированной функции ZwQuerySystemInformation
* Через счетчики производительности
* С использованием интерфейсов Windows Management Instrumentation
Как получить список запущенных процессов?
Автор: Александр Федотов
Опубликовано: 23.10.2001
Исправлено: 13.03.2005
Версия текста: 1.1
Тестовое приложение Process Viewer
Введение
Win32 предоставляет несколько способов перечисления запущенных процессов. К сожалению, нет единого способа, который бы работал на всех Win32-платформах. Программистам приходится комбинировать несколько методов в одной программе, чтобы она работала на всех версиях Windows.
Мы рассмотрим следующие методы:
* С помощью библиотеки Process Status Helper (PSAPI)
* С помощью ToolHelp32 API
* С помощью недокументированной функции ZwQuerySystemInformation
* Через счетчики производительности
* С использованием интерфейсов Windows Management Instrumentation
Похожие вопросы
- C++ vs C# vs Java Что лучше для игростроя? Какой язык лучше изучать для разработки игр?
- У вас такие же ощущения от языков программирования ? (C++ vs C#)
- Помогите реализовать на C#
- что такое системные процессы, процессы реального времени и пользовательские процессы?
- C++ VS C# дайте вашу субъективную оценку этим двум языкам, какие плюсы, какие минусы, и есть ли задачи с которыми может
- Вопрос про математические процессы инкрементов и декрементов с префиксами и постфиксами. C++
- Что за процесс System Idle Process?? Очень много ЦП тянет.. И вообще как можно узнать что за процесс(какой-нибудь другой
- Я знаю HTML а дальше что мне можно C или Pascal или C++,Assembler (JavaScript не предлагать он мне не нужен)заранее спс!
- Как по PID процесса узнать его название?
- процесс conhost.exe