if pid=GetCurrentProcessId() then
begin
ObjName.Name.Buffer:=GetMemory(500);
Status:=ZwQueryObject(Info^.Handles[i].Handle,ObjectNameInformation,
ObjName.Name.Buffer ,500,@a
);{这里的问题,参数错误奶奶的} ObjName2 :=WideCharToString(ObjName.Name.Buffer);
Memo1.Lines.add(IntToHex(Dword(Info^.Handles[i].Handle), 8) + '------' + IntToStr(Info^.Handles[i].ObjectTypeNumber) + '---------' + ObjName2);
end ;
end;
鸟哥谢谢你的指点,虽然没起多大作用^-^
跟着问题就来了
ObjName.Name.Buffer 里有乱码
怎样才能屏蔽掉那些乱码呢
句柄名字前都有些乱码 为什么呢
000007A8------9---------
000007AC------28---------*,
鞴1 \Device\WMIDataDevice
000007B0------28---------*,
騔1 \Device\WMIDataDevice
000007B4------17--------->@
鱴1 \Windows\WindowStations\WinSta0
000007B8------18---------鼔1\Default
000007BC------9---------
000007C0------17--------->@?1\Windows\WindowStations\WinSta0
000007C4------9---------
000007C8------20---------""?1\REGISTRY\MACHINE
000007CC------13---------
000007D0------13---------
000007D4------13---------
000007D8------20---------DD?1\REGISTRY\MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DllNXOptions
000007DC------13---------
000007E0------21---------
000007E4------28---------bd?1\Device\HarddiskVolume4\高级实验源码-----内核DLL进程\nt内核句柄
000007E8------13---------
000007EC------13---------
000007F0------2---------?1\KnownDlls
000007F4------9---------
000007F8------16---------LN?1\KernelObjects\CritSecOutOfMemoryEvent
000007FC------20---------???1\REGISTRY\MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课