![]() |
WindowTopper
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo
Inspiriert ![]() 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! |
Re: WindowTopper
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. Unter Win98 habe ich gar nichts bemerkt, es wurde kein Hinweisfenster angezeigt und auch kein Fenster nach vorne geholt :( . |
Re: WindowTopper
Also bei mir WinXP scheint es korrekt zu laufen, habe es jetzt erst mal nur kurz ausprobiert. Das wichtigste was
mich betrifft ist das das Programm auch bei DosBoxen das Fenster "On Top" halten kann. Das einzige was ich machen mußte an meiner MS Intelli Mouse den "Mittelklick" auf das Mausrad zu legen. Wäre es möglich evtl. mit Kombination das zu lösen z.B. Strg + linke Maustaste. Vielleicht auch frei einstellbar. Ansonsten nettes Tool, ich werde es mal dauer Testen, hatte nämlich schon einige Zeit nach einem solchen Prog. gesucht. |
Off Topic?
|
Re: WindowTopper
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
|
Re: WindowTopper
Zitat:
|
Re: WindowTopper
Zitat:
Zitat:
|
Re: WindowTopper
für was gibts dann die DLL? :gruebel: ich dachte diese sorgt dafür das dein Programm immer mitbekommt wenn ein neues Fenster sich an die Spitzte setzt so das du andere Fenster wieder drüber setzen kannst. Naja, wäre dann nen Featurewunsch das dein Programm das überwacht und dafür sorgt das die Programme ständig oben bleiben.
|
Re: WindowTopper
Bei mir scheint es ohne Probleme zu funktionieren (Win XP Pro SP2). :)
|
Re: WindowTopper
Mir ist vorhin noch etwas eingefallen, evtl. ein kleinen About Dialog hinzu zufügen.
Damit man weiß von wem das Programm stammt bzw. für Bug meldungen etc. |
Re: WindowTopper
Hallo,
Zitat:
Gruß Jörg |
Re: WindowTopper
Zitat:
|
Re: WindowTopper
Hallo,
auch wenn Dein Programm beendet ist, bleibt irgendwie ein Chaos zwischen den aktiven Fenstern. Gruß Jörg |
Re: WindowTopper
Zitat:
|
Re: WindowTopper
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 |
Re: WindowTopper
Zitat:
Wenn ich Zeit habe, werde ich meinen eigenen Maushook schreiben. Der Hersteller der TWatch Komponente hat geschrieben: Zitat:
|
Re: WindowTopper
Zitat:
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 |
Re: WindowTopper
Für den MouseHook habe ich eine Alternative, ist ohne dll und reicht für diesen Prozess aus:
Delphi-Quellcode:
Gruß
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; Mazel |
Re: WindowTopper
Habe mir auch schon überlegt, ob ich einen WH_JOURNALRECORD Hook nehmen soll.
Werde es mal testen, ob es damit zuverlässig läuft. |
Re: WindowTopper
Zitat:
|
Re: WindowTopper
[quote="toms"]
Zitat:
Diese wurde nun entfernt. |
Re: WindowTopper
Moin Moin,
mir ist noch aufgefallen, dass bei allen Buttons in der Taskleiste die gruppiert sind dein Tool nicht funktioniert. (In meiner Taskleiste habe ich die Option Ähnliche Elemente gruppieren aktiviert.) Wenn ich den Windows Taskmanager aufrufe und ihn dann wieder beende funktioniert dein Tool danach auch nicht mehr. :( |
Re: WindowTopper
Nur mit einer DLL kann man einen 'globalen' Hook setzen, der also immer aktiv ist, auch wenn es die Anwendung nicht ist.
Ein Virenscanner erkennt diesen globalen Hook und meckert (i.A. zu Recht). Global Hooks eignen sich hervorragend, um Passworter, PIN etc. auszuspionieren, daher der Virenalarm. Das der Autor der DLL irgendwelche Geschichten umbenennt, ist löblich, hindert aber moderne Scanner nicht daran, den Code als 'verdächtig' einzustufen. Dein eigener Hook wird nicht zuverlässig funktionieren, eben weil der Hook nicht in einer DLL gelagert ist. Es gibt imho keinen Weg, auf die DLL zu verzichten. |
Re: WindowTopper
Zitat:
![]() Ein Virenscanner erkennt diesen globalen Hook und meckert (i.A. zu Recht). Global Hooks eignen sich hervorragend, um Passworter, PIN etc. auszuspionieren, daher der Virenalarm. Das der Autor der DLL irgendwelche Geschichten umbenennt, ist löblich, hindert aber moderne Scanner nicht daran, den Code als 'verdächtig' einzustufen. Zitat:
|
Re: WindowTopper
Zitat:
Zitat:
|
Re: WindowTopper
Hallo,
mich würde der Sourcecode interessieren. Ohne Sourcecode mach ich grundsätzlich keinen Test mit "gebastelten" Programmen. Nimms mir nicht übel. WS1976 |
Re: WindowTopper
Zitat:
![]() + einem JOURNALRECORD - Hook. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:33 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-2025 by Thomas Breitkreuz