Zum Inhalt springen

Taskleiste unter Access auslesen???


Empfohlene Beiträge

Geschrieben

Hallo miteinander,

habe folgendes Problem. Habe mir von www.activevb.de ein Quelltextbeispiel zum Auslesen der laufenden Anwendungen heruntergeladen. Dies funktioniert auch mit Visual Basic 6.0 einwandfrei, doch sobald ich denselben Quelltext in Access nutze, durchläuft er nur noch 2 bis 3 Fenster. Das heisst, er durchläuft nur die Fenster des aktiven Access Projektes. Das kann es jawohl nicht sein.

Bin jetzt total überfragt, wie ich das Problem lösen kann, da ich mit API's noch nicht wirklich häufig gearbeitet habe.

Danke im voraus

Arnie

P.S.: Arbeiten mit Office 2000 SP3 unter Windows 2000 Pro SP3

P.P.S.: Ich nutze die API's: GetWindow, GetWindowTextLength, GetWindowText!

Geschrieben

Warum? Es geht um die in meinem letzten Beitrag u.g. API Funktionen und nicht erstrangig um die Programmiersprache...

Mir soll's recht sein, Hauptsache ich bekomme ne Antwort ;-)

Geschrieben
Original geschrieben von Arnie

Warum? Es geht um die in meinem letzten Beitrag u.g. API Funktionen und nicht erstrangig um die Programmiersprache...

APIs gibt es viele. Darum sind unsere Foren nach Sprachen sortiert.

Mir soll's recht sein, Hauptsache ich bekomme ne Antwort ;-)
Dann solltest du aber zumindest den Code oder einen Link darauf posten. Blinddebugging ist immer etwas schwierig. ;)
Geschrieben

            hWnds = GetWindow(Me.hWnd, GW_HWNDFIRST)

            Do

              ' Handle auswerten

              sTitle = HoleFensterBezeichnung(hWnds)

              If InStr(1, sTitle, "Test") Then

                        i = i + 1

                        MsgBox "HWND: " & hWnds & ", Durchlauf: " & Durchlauf & ", Titel: " & sTitle & ", Treffer: " & i

                    End If

              End If

              'Nächstes Handle

              hWnds = GetWindow(hWnds, GW_HWNDNEXT)

            Loop Until hWnds = 0

Beschreibung: Ich nehme den Handle des aktiven Fensters und durchlaufe dann alle Fenster nacheinander. Wenn eines der Fenster den Titel "Test" enthält, soll eine Zählvariable hochgezählt werden. Dadurch will ich im späteren Verlauf des Programms abfragen, wieviele Anwendungen diesen Typs schon geöffnet sind.

Ich hoffe, jetzt kann mir geholfen werden...

MfG Arnie

Geschrieben

Mit GW_HWNDFIRST und GW_HWNDNEXT kommst du nur an die Geschwisterfenster von "Me". Da die Fenster in einem Baum angeordnet sind, kommst du so also niemals aus Access heraus. Hol dir mit

GetAncestor( Me.hWnd, GA_ROOT )

das Root-Fenster, und versuch es damit mal.

Geschrieben

Zuerst

hWnds = GetAncestor(Me.hwnd, GA_ROOT)

das ist klar, aber wie kann ich da in meiner Schleife mit arbeiten? Ich muss ja immer von Fenster zu Fenster springen... (z.Zt. hWnds = GetWindow(hWnds, GW_HWNDNEXT))

Gibt es für Ancestor auch ne Art Next-Anweisung?

MfG Arnie

Geschrieben
Original geschrieben von Arnie

Gibt es für Ancestor auch ne Art Next-Anweisung?

Nein, denn es gibt ja immer nur ein Ahnen-Fenster. Aber du kannst dir mit GetWindow und GW_CHILD das erste Kindfenster des Root-Fensters holen und dessen Handle als Startpunkt für deine Schleife verwenden.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...