请问如何从进程ID得到进程的名字了?
解决方案 »
- 【CSDN开心辞典】裤衩(绿色三角)最多的ID是谁?
- 如何把一段文字生成一个wave文件,在线等。。。。。。
- 我想用Delphi做个BT下载程序,有类似开发经验的请进!
- agent动画人物激活其它窗口的问题?
- 请教adotale的问题
- 大家帮帮忙,请问怎样把以下Excel格式导到Access库里?谢谢!
- ado连接excel有问题
- 我另开一贴,timelyraining(jack_feng),Essence_zhx(艺森) 进来各领50分,以示感谢
- 如何提高自己的等级?
- 请问WORD类型怎么能转换成CHAR类型
- 字符转换的问题,在线等........在线等........
- 如何为软件加上试用期?
PID=某个值就能获得ImageName了超容易的问题http://lysoft.7u7.net
uses PSAPI;var
vProcess: THandle;
vBuffer: array[0..255] of Char;
begin
vProcess := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ,
False, GetCurrentProcessId);
try
GetModuleBaseName(vProcess, 0, vBuffer, SizeOf(vBuffer));
Caption := vBuffer;
finally
CloseHandle(vProcess);
end;
end;
WIN9x没PSAPI的
而NT4需要另外下载PSAPI库http://lysoft.7u7.net
vSnapshot: THandle;
vProcessEntry32: TProcessEntry32;
begin
vSnapshot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
vProcessEntry32.dwSize := SizeOf(TProcessEntry32);
if Process32First(vSnapshot, vProcessEntry32) then
repeat
if vProcessEntry32.th32ProcessID = GetCurrentProcessId then
begin
Caption := vProcessEntry32.szExeFile;
Break;
end;
until not Process32Next(vSnapshot, vProcessEntry32);
CloseHandle(vSnapshot);
end;