AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte WindowTopper
Thema durchsuchen
Ansicht
Themen-Optionen

WindowTopper

Ein Thema von toms · begonnen am 26. Apr 2007 · letzter Beitrag vom 30. Apr 2007
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von toms
toms
Registriert seit: 10. Jun 2002
Hallo

Inspiriert durch diesen Thread, habe ich ein kleines Tool geschrieben:

WinTopper

1. Beschreibung:

Der WindowTopper ist in der Lage, jedes offene Fenster für immer in den Vordergrund zu holen ("Top Most")
so dass es nicht mehr von anderen Fenstern verdeckt werden kann.

2. Installation:

Keine Installation nötig. Einfach WinTopper.exe starten.
Es werden keine Einstellungen irgendwo gespeichert.

3. Wie funktioniert's?:

Mit der mittleren Maustaste auf einen beliebigen Taskbar Button klicken.
Dadurch wird das zugehörige Fenster "Top Most" gesetzt.
Bei Wiederholtem Klicken wird es rückgängig gemacht.

4. Kompatibilität:

Windoes 2000/XP. Unter Win 98 / ME / Vista nicht getestet.

5. Bekannte Probleme:

- Hook funktioniert nach Sarten des Task Managers nicht mehr.
- Funktioniert noch nicht, wenn die Elemente gruppiert sind

6. Source Code:

Kommt demnächst!

7. History

28.4.07: Version 1.1: jetzt ohne Hook-Dll, kleine Verbesserungen.
26.4.07: Version 1.0

Würde mich freuen über Verbesserungsvorschläge!
Angehängte Dateien
Dateityp: zip wintopper_179.zip (218,2 KB, 22x aufgerufen)
 
Benutzerbild von jmit
jmit

 
Turbo Delphi für Win32
 
#11
  Alt 26. Apr 2007, 19:55
Hallo,

Zitat von bitsetter:
Hi,

unter WinXP funktionierte den Tool bei mir nur ab und zu mal. Wenn ich mit der mittleren Maustaste auf einen Taskbar Button klickte erscheint ein kleines Hinweisfenster mit "On Top". Das Fenster wird auch kurz nach vorne geholt, wenn ich die Maus dann bewege, wird es wieder nach hinten gesetzt.
...
Dem kann ich nur zustimmen, habe dasselbe Ergebnis.

Gruß Jörg
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

 
Delphi 2009 Professional
 
#12
  Alt 26. Apr 2007, 20:01
Zitat von Matze:
Bei mir scheint es ohne Probleme zu funktionieren (Win XP Pro SP2).
Manuel
  Mit Zitat antworten Zitat
Benutzerbild von jmit
jmit

 
Turbo Delphi für Win32
 
#13
  Alt 26. Apr 2007, 20:01
Hallo,

auch wenn Dein Programm beendet ist, bleibt irgendwie ein Chaos zwischen den aktiven Fenstern.

Gruß Jörg
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#14
  Alt 26. Apr 2007, 20:07
Zitat von jmit:
Hallo,

auch wenn Dein Programm beendet ist, bleibt irgendwie ein Chaos zwischen den aktiven Fenstern.

Gruß Jörg
Was meinst du mit Chaos?
Thomas
  Mit Zitat antworten Zitat
dominikkv

 
Delphi 2007 Professional
 
#15
  Alt 26. Apr 2007, 20:08
Hi
mein Virenscanner sagt das dein programm ein Vius ist: Win32:Banwor-I [Wrm]
ansonsten würde ich es gerne mal unter vista testen xD
Dominik
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#16
  Alt 26. Apr 2007, 20:20
Zitat von dominikkv:
Hi
mein Virenscanner sagt das dein programm ein Vius ist: Win32:Banwor-I [Wrm]
Die dll, welche ich für den Maushook verwendet habe, wird vermutlich als Virus erkannt.
Wenn ich Zeit habe, werde ich meinen eigenen Maushook schreiben.

Der Hersteller der TWatch Komponente hat geschrieben:

Zitat:
Virus alert ?
A programmer of a trojan horse (like a virus) used an older version of this component. This had the unpleasant result that some virus scanners detected any program which used this component as a virus.

I guarentee that there is no virus in the downloadable zip. I renamed relevant items and hope that most virus scanners will not detect TWatch as a virus anymore. I also contacted anti-virus companies to modify their detection algorithm, but without response.
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von jmit
jmit

 
Turbo Delphi für Win32
 
#17
  Alt 26. Apr 2007, 20:45
Zitat von toms:
Zitat von jmit:
Hallo,

auch wenn Dein Programm beendet ist, bleibt irgendwie ein Chaos zwischen den aktiven Fenstern.

Gruß Jörg
Was meinst du mit Chaos?
Fenster, die ich über die Symbolleiste ON TOP gesetzte habe, funktionieren nach dem Beenden deines Programmes nicht mehr korrekt. Das Verhalten der Fenster ist nicht wie vor dem Starten deines Programmes. Ich habe z.B. das Fenster vom BDS 2006 nicht mehr in den Vordergrund bekommen. Nach dem Neustart des Rechners funktionierte wieder alles richtig.

Was ist denn der Unterschied zwischen Fenstern, die ich mit Deinem Programm ON TOP gesetzt habe und den anderen. Das BDS 2006 Fenster hatte ich nicht ON TOP gesetzt.

Gruß Jörg
  Mit Zitat antworten Zitat
Benutzerbild von Mazel
Mazel
 
#18
  Alt 26. Apr 2007, 23:58
Für den MouseHook habe ich eine Alternative, ist ohne dll und reicht für diesen Prozess aus:
Delphi-Quellcode:
private
  MouseHook: HHOOK;


{--[MouseHookProc]-------------------------------------------------------------}

function MouseHookProc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
 if nCode = HC_ACTION then
  begin
   if lParam <> 0 then with PEventMsg(lParam)^ do
    begin
     if Message = WM_LBUTTONDOWN then
      begin
      end;
     if Message = WM_RBUTTONDOWN then
      begin
      end;
     if Message = WM_MOUSEMOVE then
      begin
      end;
    end;
  end;
 Result := CallNextHookEx(Form1.MouseHook, nCode, wParam, lParam);
end;

{--[FormCreate]----------------------------------------------------------------}

procedure TForm1.FormCreate(Sender: TObject);
begin
 MouseHook := SetWindowsHookEx(WH_JOURNALRECORD, @MouseHookProc, HInstance, 0);
end;


{--[FormDestroy]---------------------------------------------------------------}

procedure TForm1.FormDestroy(Sender: TObject);
begin
 if MouseHook <> 0 then UnhookWindowsHookEx(MouseHook);
end;
Gruß
Mazel
Marcel Jänicke
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#19
  Alt 27. Apr 2007, 09:59
Habe mir auch schon überlegt, ob ich einen WH_JOURNALRECORD Hook nehmen soll.
Werde es mal testen, ob es damit zuverlässig läuft.
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#20
  Alt 28. Apr 2007, 22:50
Zitat von toms:
Habe mir auch schon überlegt, ob ich einen WH_JOURNALRECORD Hook nehmen soll.
Werde es mal testen, ob es damit zuverlässig läuft.
Die Version 1.1 kommt nun ohne dll aus!
Thomas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 12:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz