Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Вниз

Process ID   Найти похожие ветки 

 
Demn   (2002-02-07 12:16) [0]

Доброго времени суток! Уважаемые мастера подскажите как программно узнать Process ID(любого)?


 
VuDZ   (2002-02-07 12:29) [1]

EnumProcesses
The EnumProcesses function retrieves the process identifier for each process object in the system.

BOOL EnumProcesses(
DWORD *lpidProcess, // array of process identifiers
DWORD cb, // size of array
DWORD *cbNeeded // number of bytes returned
);
Parameters
lpidProcess
[out] Pointer to an array that receives the list of process identifiers.
cb
[in] Specifies the size, in bytes, of the lpidProcess array.
cbNeeded
[out] Receives the number of bytes returned in the lpidProcess array.


 
drpass   (2002-02-07 12:35) [2]

EnumProcesses работает только на WindowsNT/2000/XP.
Для Win9x нужно использовать CreateToolhelp32Snapshot(th32cs_snapprocess, 0);
Соответственно, uses PSAPI в первом случае и uses TlHelp32 во втором


 
VuDZ   (2002-02-07 12:39) [3]

2drpass - читать умеем-с? :<
Process ID [D6, Win2k]


 
Demn   (2002-02-07 13:20) [4]

Большое спасибо!!!


 
Demn   (2002-02-07 13:31) [5]

To drpas.
Да, вот функция есть, только что-то я с ней разобраться не могу, можно как-нибудь по-подрбней. Примерчик если можно. Плиз. :)


 
drpass   (2002-02-07 16:48) [6]

>Demn вот кусок кода, структура TProcessEntry32 содержит разнообразную информацию - ProcessID, путь к исполняемому файлу и т.д. Будет работать на 9x/2000/XP
var
pe:TProcessEntry32;
ppe:PProcessEntry32;
snap:THandle;
res:string;
li:TList;

snap:=CreateToolhelp32Snapshot(th32cs_snapprocess, 0);
if integer(snap)=-1 then begin
res:="#Message$Не могу получить список процессов!%";
exit;
end else begin
pe.dwSize:=sizeof(pe);
if Process32First(snap, pe) then
repeat
new(ppe);
ppe^:=pe;
li.Add(ppe);
res:="";
until not Process32Next(snap, pe)
else res:="#Message$Нет процессов в списке! Вероятно, имеем дело с WinNT%";
end


>VuDZ
А что, ты пишешь программы, которые будут использоваться только на твоем компьютере, и нигде больше? Сочувствуем-с


 
VuDZ   (2002-02-07 18:02) [7]

2drpass
глупая ирония. посочуствуй лучше создателям Maya и иже с ними, которые пишут, что this is software only for winNT...

я пишу за деньги софт. который работает на определённой платформе. о чём сразу оговаривается...

или ты себя считаешь умнее других и знаешь как заменить кучу ф-ий winnt & win2k API своими?

ябы ещё пару слов сказал, да боюсь, что это будет слишком грубо :>


 
drpass   (2002-02-07 18:19) [8]

>VuDZ
Парень, я рад за тебя и за твой софт, но ты, видимо, не можешь отличить в форуме вопрос начинающего программиста от вопроса профессионалa. Мне все-таки кажется, что Demn не пишет клиент-серверную систему под заказ предприятия. И подсказка в этом случае должна быть соответствующей. А вот психовать по поводу замечаний - это отличительная черта подростка, а не профессионала.
Кстати, Maya - пример неудачный. Да, NT в 3D-графике - вынужденная необходимость, но это просто исключение из общего правила. Юзеров, которым вполне хватает Win98, поверь мне, намного больше.


 
VuDZ   (2002-02-07 19:18) [9]

drpass
но ты, видимо, не можешь отличить в форуме вопрос начинающего программиста от вопроса профессионалa
повторю ещё раз: я ответил на вопрос, в теме которого написано win2k...
А вот психовать по поводу замечаний - это отличительная черта подростка, а не профессионала.
Извени, если обидел, но я сегодня на взводе. причём очень конкретном, так что...
ЗЫ профи - это очень абстрактное понятие... даже наличие сертификата MCSD это не показатель... Иногда я сталкиваюсь с таким кодом. что мне кажется, быдто я - ламо, впервые увидевший комп :(

Кстати, Maya - пример неудачный. Да, NT в 3D-графике - вынужденная необходимость, но это просто исключение из общего правила.
ну, я почти не занимаюсь 3d программированием, просто много специфичного софта заточено только под NT и редко переноситься на win9x

Юзеров, которым вполне хватает Win98, поверь мне, намного больше.
может быть, но я не для них пишу :)
если я тебе скажу, что никогда не работал с win9x - поверишь?
win9x - это настолько большое извращение над ОС, что я порой удивляюсь, как под ней хоть что-то работает

ладно, пора прекращать этот флейм...


 
Demn   (2002-02-08 08:03) [10]

2 drpas & VuDZ
Спасибо народ за подсказку. Я действительно начинающий. А W2K исользую из-за ее относительной стабильности. Вот! :)



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
1-32816
RUS1
2002-04-01 11:18
2002.04.11
господа как записать в программе число в двоичной системе?


1-32724
yar
2002-03-30 00:04
2002.04.11
Delphi


3-32627
saf
2002-03-18 20:18
2002.04.11
QReport


3-32617
dr
2002-03-21 16:35
2002.04.11
вопрос по SQL


4-33016
Python
2002-02-12 07:40
2002.04.11
Надо получить результаты работы программы (ее вывод на консоль) запуская ее из собственной программы, наример, с помощью ShellExecuteEx





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский