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

Вниз

Как узнать, что запустило мою программу (мой EXE-файл)?   Найти похожие ветки 

 
SottNick   (2002-11-27 08:08) [0]

собственно, сабж (Как узнать, что запустило мою программу (мой EXE-файл)?)

хоть что-нибудь
ID процесса
Handle чего-нить
что угодно


 
mumu   (2002-11-27 09:51) [1]

смотреть здесь: http://www.delphikingdom.com/mastering/wmi.htm
один из примеров как раз и называется GetProcessData


 
SottNick   (2002-11-27 11:40) [2]

> mumu
1. у меня нет WMI SDK. не могу попроборать запустить пример.
2. не уверен, что это то

мне надо, чтоб моя прога сказала, запустил ее Explorer или TotalCommander


 
mumu   (2002-11-28 03:49) [3]

Не нравится WMI, можно использовать TlHelp32.
Получение ID родительского процесса с использованием ToolHelp-функций.
...
uses ..., TlHelp32;
...
procedure TForm1.Button1Click(Sender: TObject);
var
hProcessSnap, CProcessID: THandle;
pe32: TPROCESSENTRY32;
begin
// получаем ID нашего процесса
CProcessID:=GetCurrentProcessID;
// делаем снимок системы
hProcessSnap:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pe32.dwSize:=sizeof(PROCESSENTRY32);
// ищем в сделанном снимке системы наш процесс
Process32First(hProcessSnap, pe32);
while CProcessID<>pe32.th32ProcessID do
Process32Next(hProcessSnap, pe32);
// в поле th32ParentProcessID структуры PROCESSENTRY32
// ID родительского процесса
Label1.Caption:="ParentProcessID: "+IntToStr(pe32.th32ParentProcessID);
CloseHandle(hProcessSnap);
end;


Все это должно работать, начиная с Win95.
PS. Обработка ошибок убрана намеренно, чтобы разгрузить код.


 
SottNick   (2002-11-28 06:30) [4]

Отлично!
Работает как надо.



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

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

Наверх




Память: 0.45 MB
Время: 0.008 c
1-37153
Ops
2002-12-29 16:52
2003.01.13
Текст в Memo разным цветом


1-37136
Evgeniy_k
2002-12-29 12:21
2003.01.13
API для вывода текста


7-37400
Slykirill
2002-10-31 10:18
2003.01.13
как через winAPI вырубить комп?


7-37393
Sego
2002-11-01 10:03
2003.01.13
Как включить клаву и мышку, после отключения?


14-37341
OlDemon
2002-12-24 08:39
2003.01.13
Вирусы для сотовых





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский