Zamykanie programu

0

Mam pytanko. Chciałbym z poziomu delphi zamknąć działający w systemie program, znając jego lokalizację dyskową. Wiem, że odpowiedź na to jest w faq, ale nie wiedzieć czemu nie działa mi to pieroństwo. Wywala błędy składniowe przy kompilacji a wiem, że wszystko robię dobrze, bo już kombinowałem jak koń pod górę...

Jest jakiś inny sposób, lub mógłby ktoś napisać mi to jeszcze raz??

PZDR:
Hock
[email protected]

0

to mogł bys pokazać ten kod?

0

TAK JEST NAPISANE W FAQ

var
PHandle, FHandle: THandle;
Process:TProcessEntry32;
Done, Next: Boolean;
EXE : String; // ścieżka programu
begin
EXE := 'C:\Windows\Pulpit\prog.exe';
FHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
Process.dwSize := Sizeof(Process);
Next := Process32First(FHandle,Process); <font color="red">//TUTAJ WYSKAKUJE MI PIERWSZY BLĄD (Left side cannot be assigned to)</span>
while Next do <font color="red">// TUTAJ KOLEJNY, ŻE WARTOŚĆ MUSI BYĆ BOOLEAN A NIBY ŻE NIE JEST</span>
begin{ jesli sciezka dostepu sie zgadza }
if AnsiLowerCase(Process.szExeFile) = AnsiLowerCase(EXE) then
begin
PHandle:=OpenProcess(PROCESS_TERMINATE, False,
Process.th32ProcessID);
{ to probujemy zabic aplikacje }
Done := TerminateProcess(PHandle,0);
if not Done then
MessageBox(Handle, 'Błąd', 'Błąd', MB_OK);
end;
Next := Process32Next(FHandle,Process);
end;
CloseHandle(FHandle);
end;


Zupełnie nie wiem o co tu chodzi, bo nie jestem zbytnio zaawansiony, ale takie wyskakują błędy. Mam Delphi 7.

0

Co do drugiego błędu, to próbowałeś :

[code]...while Next = True do...[/code]

?

0

a jaką bibloteke załączasz?
jeśli inną jak,TlHelp32 to mogą byc problemy bo umnie sie kompiluje bez zadnego problemu

do Treppa to nic nie zmienia jeśli nie podasz wartosci przy zmiennych boolowskich standardowo jest ona pryzjmowana jako true a not odwraca wiec te zapisy są sobie rowne, jedyna roznica dłuzsze pisanie

0

To może masz jakąś zmienną/komponent o nazwi Next??

0

psia kośc... coś było rąbnięte. Przeinstalowałem Delphi i jakoś się skompilowało. Teraz jest natomiast kolejny problem. Mianowicie to działa tylko pod win9x a mnie właśnie potrzebny jest taki efekt pod 2k/XP. Da się z tym coś zrobić??

PZDR:
hock
[email protected]

0

[CIACH!]***!! Mój tasker (tam jest coś takiego) działa na każdym windozie (kompilowane na XP, sprawdzione XP, 2000, ME, 98SE). Polookaj na Tasker może coś inaczej zrobione (mój czyta z listy)

1 użytkowników online, w tym zalogowanych: 0, gości: 1