lin6163 发表于 2010-9-24 21:52:15

怎么获取iexplore.exe是哪个进程调用的!自已[已解决]

本帖最后由 lin6163 于 2010-10-7 13:30 编辑

怎么获取iexplore.exe是由那个进程调用的,那个调用的父进程的进程名和ID是多少

guland 发表于 2010-9-25 08:30:42

{:1_202:}我也想知道......

lin6163 发表于 2010-9-25 10:05:54

不会吧,版主你也不知道
不要说不可能实现吧
我查了一下好像可以调用wmi来实现
但却不知道怎么用什么表达式

pusofalse 发表于 2010-9-25 13:13:09

2、如何禁止被其他程序调用?

1、获取父进程用以上链接中的方法,获取子进程只是一个逆过程。
获取到子进程之后,WinList 枚举所有窗口,WinGetProcess获取窗口所属的进程,如果属于以上子进程则隐藏。

hzxymkb 发表于 2010-9-25 14:15:40

P版是这个方面的专家!哈哈!{:face (301):}

lin6163 发表于 2010-9-25 21:33:39

2、

1、获取父进程用以上链接中的方法,获取子进程只是一个逆过程。
获取到子进程之后,WinList 枚举所 ...
pusofalse 发表于 2010-9-25 13:13 http://www.autoitx.com/images/common/back.gif


难以理解
大哥给个例子

lin6163 发表于 2010-9-26 08:57:14

怎么替换成别的进程ID

#include <Process.au3>

$tBuffer = DllStructCreate("dword;ptr;ulong_ptr;ulong")
MsgBox("","",$tBuffer)
_NtQueryInformationProcess(-1, 0, DllStructGetPtr($tBuffer), 24)
$iInheritPid = DllStructGetData($tBuffer, 4, 3)
Msgbox(0, "Inherited from", _ProcessGetName($iInheritPid) & ":" & $iInheritPid)

Func _NtQueryInformationProcess($hProcess, $iClass, $pBuffer, $iSizeofBuffer)
      Local $iResult

      $iResult = DllCall("Ntdll.dll", "dword", "NtQueryInformationProcess", _
                        "hWnd", $hProcess, "int", $iClass, "ptr", $pBuffer, _
                        "ulong", $iSizeofBuffer, "ulong*", 0)
      Return SetError($iResult, $iResult, $iResult = 0)
EndFunc

lin6163 发表于 2010-9-26 10:56:12

各位大大帮帮忙

02256905 发表于 2010-9-26 11:11:28

iexplore.exe 调用之前先用ProcessList()列举出所有进程$list1,调用之后再列举一次$list2,两个相减$list2-$list1就得到所有新加进程个数和PID,再用WinList ()遍历符合条件的心中PID

lin6163 发表于 2010-9-26 11:19:18

iexplore.exe 调用之前先用ProcessList()列举出所有进程$list1,调用之后再列举一次$list2,两个相减$list2 ...
02256905 发表于 2010-9-26 11:11 http://www.autoitx.com/images/common/back.gif

这是一个广告来着,不定时出现,而且窗口的标题也是不一样的
所以只有抓那个调用的父进程来查他下面的子进程,再来列举PID

lin6163 发表于 2010-9-26 14:28:00

各位帮帮忙!!!!!

ylsfwb 发表于 2011-11-8 08:41:00

学习~~~~~~~~~~

wnscl27 发表于 2011-12-19 11:56:59

不懂,没研究过
页: [1]
查看完整版本: 怎么获取iexplore.exe是哪个进程调用的!自已[已解决]