Autor Beitrag
toms
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 27.01.04 20:24 
WinSpy ist ein Tool zum...

  • Hierarchischen Auflisten von Fenstern, Controls systemweit
  • Anzeigen von Handle, Titel, Klassenname, Prozesspfad etc.
  • Auflisten von Fenstern, Prozessen, Diensten, Treibern, (TrayIcons)
  • Generieren des FindWindow() Codes...
  • Erstellen von Screenshots
  • Anzeigen von einigen System Informationen


:arrow: Aktuelle Version: WinSpy 2008 beta, V.2.0.2.502 (06.05.2008)

:arrow: Alte Version: 1.8.9.3 (24.02.2005), siehe Anhang

:arrow: WinSpy 2008 "Debug Edition" (V.2.0.1.470), mit madexcept


user defined image

user defined image

Für (Windows 98*), Windows NT, Windows 2000, Windows XP, (Windows Vista*)
*nur bedingt getestet

Weitere Funktionen:

  • Deaktiverte Controls können enabled / disabled / versteckt / geschlossen werden.
  • Der Inhalt eines TreeViews, einer Listview, der Quelltext vom IE können ausgelesen u. kopiert werden.
  • Die Grösse u. Position beliebiger Controls kann verändert werden.
  • Prozesse können beendet werden
  • Fenster können geschlossen werden
  • Fenster können als Vordergrundfenster (Topmost) gesetzt werden
  • Die Mausposition + Farbe unter dem Mauscursor können angezeigt werden



Anwendungsbeispiel 1:

Was für ein Klassenname hat das Fenster unter der Maus?

Anwendungsbeispiel 2:

Zu welcher Exe-Datei gehört das Vordergrundfenster?

Anwendungsbeispiel 3:

Man möchte eine ListView (z.B die vom Explorer) auslesen und
die Anzahl Items ermitteln oder die ListView als Excel Datei speichern.

Vorgehen: Item im TreeView auswählen und rechte Maustaste drücken.
Dann auf Eigenschaften klicken.

Anwendungsbeispiel 4:

Man möchte das Handle zum Shell_TrayWnd mittels FindWindow(Ex) suchen.
(Den Bereich neben der Uhr, wo Icons sind)

Vorgehen:

Man "markiert" die Icons mit der Maus und klickt auf den "FindWindow Code generieren..." Button. Dann wird dieser Code erstellt:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
var
  wndMain, wndChild: HWND;
begin
  wndMain := FindWindow('Shell_TrayWnd','');
  if wndMain <> 0 then
  begin
    wndChild := FindWindowEx(wndMain, 0, 'TrayNotifyWnd', nil);
    wndChild := FindWindowEx(wndChild, 0, 'SysPager', nil);
    wndChild := FindWindowEx(wndChild, 0, 'ToolbarWindow32', nil);
    if wndMain <> 0 then
    begin
      ShowMessage('Window found. Handle: ' + IntToStr(wndChild));
      FlashControl(wndChild); // internal function
    end;
  end;




Bitte um Feedback, Ideen!
Einloggen, um Attachments anzusehen!


Zuletzt bearbeitet von toms am Di 06.05.08 06:42, insgesamt 20-mal bearbeitet

Für diesen Beitrag haben gedankt: Marc.
Andreas L.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1703
Erhaltene Danke: 25

Windows Vista / Windows 10
Delphi 2009 Pro (JVCL, DragDrop, rmKlever, ICS, EmbeddedWB, DEC, Indy)
BeitragVerfasst: Di 27.01.04 22:14 
Interessant das Teil. Wie lang hast du dafür gebraucht, das muss doch richtig viel arbeit gewesen sein?!?! Alleine schon das dus hinbekommen hast das das zeug alles ausgelsen wird und so.... WOW.. RESPECT
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 27.01.04 22:56 
Zitat:
Interessant das Teil.


Ja, finde ich auch.
Wenn jemand Funktionen vom Quelltext bracht,
soll er/sie sich ruhig bei mir melden.

Zitat:
Wie lang hast du dafür gebraucht, da

s muss doch richtig viel arbeit gewesen sein?!?!


Na, die Arbeit hat sich bisher (noch) in Grenzen gehalten.

Zitat:
Alleine schon das dus hinbekommen hast das das zeug alles ausgelsen wird und so


Ja, das Auslesen hat bis jetzt die Grösste Zeit in Anspruch genommen.

Zitat:
WOW.. RESPECT


Danke, für die Blumen!
Es ist aber erst eine Alpha Version und es sollte noch einiges mehr
dazukomen!


Zuletzt bearbeitet von toms am Di 27.01.04 23:02, insgesamt 1-mal bearbeitet
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 27.01.04 23:02 
Das kennst du: www.x-spy.net/ und das: www.assarbad.org/de/index.shtml -> EDA ?

Der Treeview ist falsch rum aufgebaut. Das oberste Child erscheint als Root und das Parent als Node im Treeview. Das ist unlogisch. Root sollte das Parent sein und die Childs Nodes des Treeviews.
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 27.01.04 23:04 
Zitat:
Der Treeview ist falsch rum aufgebaut.


Danke für den Hinweis. Habe das auch schon bemerkt und
werd's mal bei Gelegenheit upside down machen.
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Di 27.01.04 23:36 
Nicht schlecht, gefällt mir.

Ein kleiner Bug ist mir aufgefallen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
var
  wnd: HWND;
begin
  wnd := FindWindow('TForm2','Eigenschaften');
  wnd := FindWindowEx(wnd, 0,'TPageControl'nil);
  wnd := FindWindowEx(wnd, 0,'TTabSheet','TabSheet2');
  wnd := FindWindowEx(wnd, 0,'TMemo','var
  wnd: HWND;
begin
  wnd := FindWindow('
WinRarWindow','WinSpy[1].zip - WinRAR');
  wnd := FindWindowEx(wnd, 0,'
SysListView32', nil);
  if wnd <> 0 then
  begin

  end;
end;
'
);
  if wnd <> 0 then
  begin

  end;
end;


Das passiert wenn man auf den "Delphi Findwindow Code" Button klickt, das Fenster nicht schließt, ein anders Fenster wählt und nochmal den Button klickt. Passiert aber aus irgend einem Grund nicht immer. Anscheinend wird nicht immer das Memo vorher gelöscht.

Ein kleiner Tip zu der Version WinSpy 1.0. Die erste funktionierende Version bekommt bei mir immer die Version 0.1. Dann hab ich noch jede menge Nummern bis ich mal die 1.0 ausgebe. Die ist dann die fertige Version. Ist aber reine Geschmacksache ;)

_________________
Popov


Zuletzt bearbeitet von Popov am Di 27.01.04 23:42, insgesamt 1-mal bearbeitet
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 27.01.04 23:40 
Zitat:
Anscheinend wird nicht immer das Memo vorher gelöscht.


Das ist aber SEHR seltsam...
Ich rufe immer die Clear Mehtode des Memos auf, bevor
der neue Text hinzugefügt wird.
Mal schauen was da nicht stimmt...
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Mi 28.01.04 08:15 
Zitat:
Anscheinend wird nicht immer das Memo vorher gelöscht.


Sollte nun behoben sein.

Ein Update ist nun verfügbar.

www.datavis.ch/Thomas/Downloads/WinSpy.Zip

Änderungen in Version 1.1

- Anzeigen von Fenster ID.
- Kopieren der Baumstruktur in die Zwischenablage, eine Datei.
- Kopieren der Grid Auflistung
- Bug im Fenster "Eigenschaften" behoben.
- Div Verbesserungen.
Chatfix
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: Mi 28.01.04 09:24 
Tolles Tool, wenn der Titel ne URL ist kann man druf klicken ^^
Vielleicht sollte die URL nur im in neuem Fenster geöffnet werden...

aber ansonsten TOLL

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: So 01.02.04 10:59 
Titel: Neue Version: WinSpy 1.2 - Spion
Und eine neue Version ist draussen: Version 1.2!

www.datavis.ch/Thomas/Downloads/WinSpy.Zip

user defined image

History Version 1.2:

* Zusätzliche Icons für den Tree hinzugefügt,
bestehende z.T durch schönere ersetzt.


+ Fenster auflisten
Fenster beenden

+ Prozesse auflisten
Prozesse "abschiessen"

+ TrayIcons auflisten
ToDo: TrayIcons verstecken.

+ Installierte Treiber auflisten (Nur NT)

* Div. Bugs behoben, andere Features in Vorbereitung

* : Geändert
+ : Neue Features[img][/img]
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 01.02.04 16:27 
Ich würde aus den oberen Buttons eine Toolbar machen oder ein Menü. Aber so sieht es blöd aus, find eich.
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: So 01.02.04 22:18 
Zitat:
Ich würde aus den oberen Buttons eine Toolbar machen oder ein Menü. Aber so sieht es blöd aus, find eich.


Ok, hab mal auf eine Toolbar umgestellt:

user defined image

Version 1.4:
www.datavis.ch/Thomas/Downloads/WinSpy.Zip
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 03.02.04 10:15 
Titel: WinSpy 1.5 - Spion
Version 1.5:

+ Windows Dienste anzeigen
+ Toolbar Design geändert
+ Syntax Highlight beim FindWindow Code:
+ Andere Änderungen


Version 1.4:
www.datavis.ch/Thomas/Downloads/WinSpy.Zip


Zuletzt bearbeitet von toms am Mi 04.02.04 16:24, insgesamt 1-mal bearbeitet
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Mi 04.02.04 01:42 
Kleiner Tipp (das hab ich schon paar mal hier bemerkt):

Sollange ich den ersten Titel lesen kann: "WinSpy 1.2 - Spion", und ich kann nur den ersten Titel lesen wenn ich die Sparte öffne, dann gibt es für mich nur die Version 1.2. Wenn hin und wieder der Thread wieder nach oben geht, dann ist das noch lange kein Grund für mich den Thread zu öffnen. Dann sage ich mir, daß sich da paar Leute untehalten, es sich am Programm selbst noch nichts geändert hat. Wenn du also willst, daß man mitbekommt, daß es inzwischen die Version 1.5 gibt, dann schreib das nicht im Beitrags-Titel, sondern im Thread-Titel. Und der Thread-Titel ist immer noch der erste Beitrags-Titel.

Es bleibt also dir überlassen ob du willst, daß man mitbekommt, daß sich an deinem Programm was getann hat. In der Regel achte ich nur auf die Thread-Titel. Ich gehe nicht mehr in die Beiträger rein, da da zu oft einfach nur gequatscht wird. In der Regel bekomme ich (persönlich) fast garnicht mit ob sich an einem Programm was getann hat, weil eigentlich kaum noch einer den ersten Beitrag pflegt. Ist also eine nur eine Empfehlung.

Da wird versucht ein neuen Thread zu öffnen, weil eine neune (volle) Version rauskamm. Wenn der neue Thread dann gelöscht wird (nur ein Thread pro Programm), dann kommen die meisten irgendwie nicht drauf am Titel was zu ändern. Sie schreiben wieder mal einen neuen Beitrag in der Reihe und wundern sich, daß sie nicht beachtet werden.

_________________
Popov
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Mi 04.02.04 14:04 
@Popov: Hast recht! Zum Glück kann man im DF den Thread-Titel auch nach ein paar Tagen ändern. In der DP, z.B, ist es nicht möglich.
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Mi 04.02.04 17:26 
Soweit ich weiß kann man den Thread-Titel im DF auch nach Jahren ändern. Das mit DP wußte ich allerdings nicht.

_________________
Popov
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 06.04.04 08:46 
Titel: WinSpy 1.8.1 - Spion
Neues:

* Es kann ein ScreenShot vom ausgewählten Control gemacht werden
Ermöglicht speichern eines Screenshots in die Zwischenablage/ eine Datei

* Grid zur Anzeige von Control Infos wurde durch einzelne TEdits ersetzt.
Vorteil: einfacheres Kopieren von Informationen.

* Bei Klick auf ein Item in der Baumstruktur, wird dessen Infos (Handle, Text usw.) in den Edits angezeigt.

* Die Datei in "Prozess Name" kann nun über einen Button im Explorer lokalisiert werden.

* Auslesen von TreeViews/ListViews und speichern.

* neue Icons für Controls.

* div. ¨

Bugfixes:

* Prozesse konnten z.T nicht beendet werden.
* Childstruktur wurde vom "Vordergrundfenster" nicht aufgelistet.
* Childwindows wurden nicht korrekt in der Baumstruktur angezeigt
* Dienste können ohne Adminrechte nicht aufgelistet werden

Screenshot:
user defined image

Download Version 1.8.1:
www.datavis.ch/Thomas/Downloads/WinSpy.Zip

Bitte Bugs, Ideen usw melden!
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Mi 07.04.04 04:07 
So, es gibt noch ein kleines Update in Mitten der Nacht...

Version 1.8.3


Neues

* Neue Toolbutton Funktion "Unter der Maus" zeigt die Infos
vom Control unter der Maus an, ohne "Drag- & Move"
* F8: Screenshot erstellen.


Bugs gefixt/Änderungen:

* Ändern der Fensterkoordinaten hat nicht funktioniert.
* Falscher Hint beim Button zum "Fensterkoordinaten ändern".
* Neues Icon für "Fensterkoordinaten ändern"
* EXE-Grösse um ca. 100 KB reduziert.
* div.

Bitte noch um weitere Feedbacks, Bugs, neue Ideen!


Zuletzt bearbeitet von toms am Sa 15.01.05 22:32, insgesamt 1-mal bearbeitet
Shadow110
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64



BeitragVerfasst: Do 15.04.04 18:06 
Titel: Idee
Hi.

Super Tool! Wird das open source? *GG

Wenn FENSTER ausgewählt ist, und man durch die angezeigenten Fenster klickt, wäre super, wenn die Informationen (Fenster ID, Koordinaten usw.. auch oben angezeigt würden.


Grüße
Alex
toms Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Do 15.04.04 18:10 
Zitat:
Super Tool!


Danke! Bin daran, es noch besser zu machen...!

Zitat:
Wird das open source? *GG


Wahrscheinlich nicht. Aber werde einzelne Funktionen gerne veröffentlichen oder erklären, falls
Bedarf da ist.

Zitat:
Wenn FENSTER ausgewählt ist, und man durch die angezeigenten Fenster klickt, wäre super, wenn die Informationen (Fenster ID, Koordinaten usw.. auch oben angezeigt würden.


Stimmt. Werde ich noch implementieren und noch viel mehr....!