unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,Tlhelp32, StdCtrls;
function processExists(exeFileName: string): Boolean;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
type
TForm1 = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
Result := False;
while Integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
begin
Result := True;
end;
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if processExists('notepad.exe') then
ShowMessage('process is running')
else
ShowMessage('process not running');
end;
enprocedure TForm1.Button1Click(Sender: TObject);
begin
end;
Это мой точный код, в котором я получаю ошибки, это пример из трюков delphi. теперь я просто пытаюсь заполнить мое редактирование, так что stackoverflow позволит мне опубликовать мое редактирование, я, по-видимому, имею в основном код, поэтому мне нужно вежливо добавить более подробно.Определите, активен ли процесс
«Я все время получаю ошибки» Какие ошибки? На какой строке кода. Возможно, отредактируйте свой вопрос и вставьте в него свой точный код. –
Вы пытались вызвать «EnumProcesses»? –
Позвонить enumProcesses? позвольте мне прочитать его снова, и я также опубликую сообщение об ошибке – Sheep