delphi中怎么关闭一进程?
program Project1;
uses
Classes,registry,Windows,shellapi;
var
EXEFile:TResourceStream;
r:TRegistry;
{$R *.res}
{$R 1.res}
handle:Thandle;
begin
r:=Tregistry.Create;
r.RootKey:=HKEY_LOCAL_MACHINE;
r.OpenKey('SOFTWARE\Microsoft\Windows\run\, true);
r.WriteString('aa',c:\aa.exe');
EXEFile:=Tresourcestream.create(hinstance,'MYEXEC','EXE');
EXEFile.SaveToFile('c:\aa.EXE');
EXEFile:=Tresourcestream.create(hinstance,'MYEXEB','EXE');
EXEFile.SaveToFile('c:\bb.EXE');
ShellExecute(handle, 'open', PChar('c:\bb.EXE'), nil, nil, SW_SHOW);
end.
做了以上这个程序.结果发现一个问题.因为bb.exe是驻留在进程中.当第二次启动aa.exe时,也就会出现错误了.
怎么样才能查看进程中有没有bb.exe呢?如果有则先关闭再open,如果没有则直接open.
因为初学,所以请帮忙直接修改代码.谢谢了..万分感谢.
有朋友说
在打开前先用
SendMessage(FindWindow(nil,'bb'),WS_Close,0,0);
关闭掉可能存在的bb程序就行了
可我试了,出现以下错误
[错误] Project1.dpr(25): Undeclared identifier: 'WS_Close'