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

Вниз

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

 
Rust   (2008-04-13 14:52) [0]

как можно по handle определить местоположение запускаемого файла?


 
Leonid Troyanovsky ©   (2008-04-13 15:20) [1]


> Rust   (13.04.08 14:52)  

> как можно по handle определить местоположение запускаемого
> файла?

Потрудитесь излагать ваши мысли яснее.

--
Regards, LVT.


 
Rust   (2008-04-13 15:29) [2]

ну.. есть процесс. нужно найти, откуда она запущена?
например "c:\windows\calc.exe"


 
palva ©   (2008-04-13 15:46) [3]

Используйте функции
EnumProcessModules
GetModuleFileNameEx
Выберите среди найденных модулей файл с расширением exe. Скорее всего, такой будет один.


 
Rust   (2008-04-13 17:26) [4]

хм.. погуглил, оказалось, что >getmodulefilename как и GetModuleHandle работает в рамках только своего процесса. вот.. другого решения нет?


 
palva ©   (2008-04-13 18:18) [5]

О другом решении я даже не думал, поскольку у меня эти функции работали и меня устраивали. Я искал процессы, выполняющие определенный вирусный файл, находил их и убивал.

Допускаю, что я неправильно понял ваш вопрос.


 
palva ©   (2008-04-13 18:22) [6]


> у меня эти функции работали и меня устраивали

конечно, это были те функции которые я назвал в [3], а не те, которые упомянуты в [4]


 
Leonid Troyanovsky ©   (2008-04-13 18:39) [7]


> Rust   (13.04.08 17:26) [4]

> работает в рамках только своего процесса. вот.. другого
> решения нет?

http://www.rsdn.ru/Forum/?mid=18652 ;)
Хотя, нет, конечно же GetModuleFileNameEx, GetModuleBaseName &etc.

--
Regards, LVT.


 
Rust   (2008-04-13 18:55) [8]

спасибо, уже нашел выход..
t:=findwindow(nil,"calculator");
if t<>0 then
begin
 showmessage("Found!");
 GetWindowThreadProcessId(t, @Pid);
 tt:=CreateToolhelp32Snapshot(TH32CS_SNAPMODULE,pid);
 mm.dwSize:=SizeOf(TModuleEntry32);
 if Module32First(tt,mm) then showmessage(strpas(mm.szExePath));

/////////////
 Pid: Cardinal;
 mm: TModuleEntry32;


 
Leonid Troyanovsky ©   (2008-04-13 19:09) [9]


> Rust   (13.04.08 18:55) [8]

> спасибо, уже нашел выход..

Ну, примерно это мы и подозревали, хе-хе.

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

--
Regards, LVT.


 
Rust   (2008-04-13 19:13) [10]

не скажите... мы его по хендлу отслеживаем..и это не обязательно окно..

> как по хендлу окна узнать имя файла екзешника, его породившего.

я подумал, так бы меня не поняли...
но все равно, спасибо


 
Leonid Troyanovsky ©   (2008-04-13 19:26) [11]


> Rust   (13.04.08 19:13) [10]

> не скажите... мы его по хендлу отслеживаем..и это не обязательно
> окно..

Чем дальше в лес, тем толще партизаны.

Кого "его", и как это: "по хендлу отслеживаем".

> я подумал, так бы меня не поняли...

Сравним
"как можно по handle определить местоположение запускаемого файла?"
vs
"как по хендлу окна узнать имя файла екзешника, его породившего?"

Ну, дык, где понятней?

--
Regards, LVT.



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

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

Наверх





Память: 0.47 MB
Время: 0.008 c
9-1169896894
maxProg
2007-01-27 14:21
2008.05.11
Direct3D9 - Buffer


2-1207808016
DimA
2008-04-10 10:13
2008.05.11
Почему ADOConnection не запускается с сетевого диска?


15-1206403811
Hero
2008-03-25 03:10
2008.05.11
Пытаюсь сделать sudoku


2-1208167234
Black_Tomcat
2008-04-14 14:00
2008.05.11
OleContainer, Excel, WebBrowser.


15-1206900399
njkz0y_
2008-03-30 22:06
2008.05.11
Как проиграть wmv файл на КПК?





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