AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Name des aktiven Programms auslesen

Ein Thema von Neuni · begonnen am 1. Mai 2004 · letzter Beitrag vom 2. Mai 2004
Antwort Antwort
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#1

Name des aktiven Programms auslesen

  Alt 1. Mai 2004, 21:28
Hi,
ich möchte gerne, dass mein Programm erkennt, welches Programm gerade aktiv ist, und dann den Namen des Programms nennt. Es soll also der Name des aktiven Programms ausgelesen werden.

Jemand ne Idee, wie das geht???

Danke schonmal im vorraus
  Mit Zitat antworten Zitat
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#2

Re: Name des aktiven Programms auslesen

  Alt 1. Mai 2004, 22:03
mit GetActiveWindow() bekommt man das Handle des Aktiven Fensters
damit dürfts dann auch möglich sein, den Namen rauszufinden!
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: Name des aktiven Programms auslesen

  Alt 2. Mai 2004, 02:36
Label1.Caption := GetProcessNameFromWnd(GetForeGroundWindow);
Du brachst noch die Funktion GetProcessNameFromWnd
Thomas
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#4

Re: Name des aktiven Programms auslesen

  Alt 2. Mai 2004, 13:30
Danke erstmal, aber er ließt ja nun den Dateinamen (also *.exe) aus.

Vielleicht hab ich mich ein bissl falsch ausgedrückt.
Also: Ich möchte das haben, was ganz oben in der Leiste beim InternetExplorer steht. (Jetzt z.B: Delphi-Praxis :: Antwort schreiben ...)

Es geht darum, dass ich einen PC hab, an dem viele User sitzen, und dass ich überwachen will, dass niemand auf die Idee kommt, auf verbotene Internetseiten, also Porno-Seiten & co. zu gehen.

Jemand ne Idee wie das geht?
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Name des aktiven Programms auslesen

  Alt 2. Mai 2004, 13:35
Delphi-Quellcode:
var text: PChar;
    tmpint: Integer;
begin
  tmpint := SendMessage(GetActiveWindow, WM_GETTEXTLENGTH, 0, 0) + 1;
  getmem(text, tmpint);
  SendMessage(GetActiveWindow, WM_GETTEXT, tmpint, Integer(Text));
  Edit1.Text := String(text); //hier wird jetzt der Windowtext in Edit1 geschrieben
  freemem(text);
end;
untested, but it should work
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#6

Re: Name des aktiven Programms auslesen

  Alt 2. Mai 2004, 13:37
@toms:
GetForeGroundWindow gibt nur das Fenster mit der kleinsten Position in der Z-Achse zurück - also das Fenster, welches ganz vorne Angezeigt wird und diese muß nicht unbedingt das aktive Fenster, also das mit dem Eingabefokus sein.

GetActiveWindow sollte da schon das Richtige sein.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#7

Re: Name des aktiven Programms auslesen

  Alt 2. Mai 2004, 13:39
Danke SirThornberry, es geht.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz