首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

▲▲▲ 怎么定时结束指定的进程(例如结束任务管理器的shutdown.exe进程)▲▲▲

2012-03-18 
▲▲▲ 如何定时结束指定的进程(例如结束任务管理器的shutdown.exe进程)▲▲▲如何定时结束指定的进程(例如结束

▲▲▲ 如何定时结束指定的进程(例如结束任务管理器的shutdown.exe进程)▲▲▲

    如何定时结束指定的进程(例如结束任务管理器的shutdown.exe进程)

[解决办法]
设置一个定时器,到了时间,然后给指定的进程发送关闭进程的消息或者调用WindowsAPI来结束进程就是了。
[解决办法]
下面一段代码是结束WORD进程,供参考:
procedure KillWordProcess;
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: Boolean;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
ExeFileName: string;
i: Integer;
begin
if KillWordProcessID[0] > 0 then
begin
ExeFileName := 'WINWORD.EXE ';
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
while ContinueLoop do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
begin
for i:=1 to KillWordProcessID[0] do
begin
if KillWordProcessID[i] = FProcessEntry32.th32ProcessID then
begin
TerminateProcess(OpenProcess(PROCESS_TERMINATE, False, KillWordProcessID[i]), 0);
Break;
end;
end;
end;
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end;
KillWordProcessID[0] := 0;
end;

热点排行