|
| Se om et program kører Fra : Torsten Menzel |
Dato : 24-10-01 19:15 |
|
Hvordan undersøger jeg om et givent program kører. Er det noget med Shell
execute?? for det er jo her man starter programmet?
På forhånd tak for hjælpen
/Torsten
| |
Thomas Riedel (25-10-2001)
| Kommentar Fra : Thomas Riedel |
Dato : 25-10-01 10:23 |
|
Brug
Findwindow
F.eks:
if findwindow('Tfrmlys', nil) = 0 then //Start programmet, hvis det
ikke kører
winexec('lysserver.exe', sw_show);
--
Thomas Riedel, LogiHouse
"Torsten Menzel" <tbm@menzel.dk> wrote in message
news:3bd70449$0$25407$edfadb0f@dspool01.news.tele.dk...
> Hvordan undersøger jeg om et givent program kører. Er det noget med Shell
> execute?? for det er jo her man starter programmet?
>
> På forhånd tak for hjælpen
>
> /Torsten
>
>
| |
Søren Aaholm Møller (26-10-2001)
| Kommentar Fra : Søren Aaholm Møller |
Dato : 26-10-01 16:51 |
|
> Brug
> Findwindow
>
> F.eks:
>
> if findwindow('Tfrmlys', nil) = 0 then //Start programmet, hvis det
> ikke kører
> winexec('lysserver.exe', sw_show);
FindWindow - finder den 'form1.caption'? Eller er det en anden 'parameter'
den kigger på?
If true then :
-- Hvad så hvis man vil checke om ex. Winamp (3) kører...? Den skifter jo
caption afhængig af sang??
// Søren
| |
Gunnar Martensen (26-10-2001)
| Kommentar Fra : Gunnar Martensen |
Dato : 26-10-01 20:55 |
|
Her har du den korrekte måde til løsning af dit problem -
husk (uses TlHelp32).
procedure TProcessListDlg.FormShow(Sender: Object);
var ProcessEntry : TProcessEntry32;
hSnapShot : Integer;
FileName : String;
begin
if Memo1.Text <> '' then
Memo1.Clear;
ProcessEntry.dwSize := SizeOf(TProcessEntry32);
hSnapShot := CreateToolhelp32Snapshot(TH32CS_SnapProcess,0);
if Process32First(hSnapShot,ProcessEntry) then
repeat
FileName := ExtractFileName(ProcessEntry.szExeFile);
Memo1.Lines.Add(FileName);
until
not Process32Next(hSnapShot,ProcessEntry);
Closehandle(hSnapShot);
end;
Gunnar Martensen
"Torsten Menzel" <tbm@menzel.dk> skrev i en meddelelse
news:3bd70449$0$25407$edfadb0f@dspool01.news.tele.dk...
> Hvordan undersøger jeg om et givent program kører. Er det noget med Shell
> execute?? for det er jo her man starter programmet?
>
> På forhånd tak for hjælpen
>
> /Torsten
>
>
| |
Thomas Riedel (27-10-2001)
| Kommentar Fra : Thomas Riedel |
Dato : 27-10-01 08:01 |
|
Ja det er meget bedre.
Tak for tippet!
--
Thomas Riedel, LogiHouse
"Gunnar Martensen" <gm-data@post3.tele.dk> wrote in message
news:3bd9c12c$0$25377$edfadb0f@dspool01.news.tele.dk...
> Her har du den korrekte måde til løsning af dit problem -
> husk (uses TlHelp32).
>
>
> procedure TProcessListDlg.FormShow(Sender: Object);
> var ProcessEntry : TProcessEntry32;
> hSnapShot : Integer;
> FileName : String;
> begin
> if Memo1.Text <> '' then
> Memo1.Clear;
> ProcessEntry.dwSize := SizeOf(TProcessEntry32);
> hSnapShot := CreateToolhelp32Snapshot(TH32CS_SnapProcess,0);
> if Process32First(hSnapShot,ProcessEntry) then
> repeat
> FileName := ExtractFileName(ProcessEntry.szExeFile);
> Memo1.Lines.Add(FileName);
> until
> not Process32Next(hSnapShot,ProcessEntry);
> Closehandle(hSnapShot);
> end;
>
>
> Gunnar Martensen
>
> "Torsten Menzel" <tbm@menzel.dk> skrev i en meddelelse
> news:3bd70449$0$25407$edfadb0f@dspool01.news.tele.dk...
> > Hvordan undersøger jeg om et givent program kører. Er det noget med
Shell
> > execute?? for det er jo her man starter programmet?
> >
> > På forhånd tak for hjælpen
> >
> > /Torsten
> >
> >
>
>
| |
|
|