Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

FindWindow

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 09.04.2010, 21:37    Titel: FindWindow Antworten mit Zitat

hi zusammen,

Also ich suche nach einem Fenster eines programms das es in mehreren Versionen gibt, der Anfang des Namens ist immer gleich nur der hintere Teil aendert sich je nach Version...

also meine Frage,
gibt es eine moeglichkeit mit FindWindow ein Fenster auch zu finden wenn man nur einen Teilnamen hat?

oder bleibt mir nichts anderes als alles der Reihe nach abzufragen bis ich ein treffer habe?

gruss
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 10.04.2010, 19:16    Titel: Antworten mit Zitat

Probiers einfach aus...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 11.04.2010, 05:47    Titel: Antworten mit Zitat

Hatte ich ja, sonst haette ich nicht gefrat... also danke fuer den nicht hilfreichen Beitrag

habs nun etwas unelegant erst einmal so geloest...

Code:
Declare Function EnumWindows Lib "user32.dll" Alias "EnumWindows" (ByVal lpEnumFunc As any ptr, ByVal lParam As any ptr) As Integer
Declare Function GetWindowTextLength Lib "user32.dll" Alias "GetWindowTextLengthA" (ByVal hwnd As any ptr) As Integer
Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA"  (ByVal hwnd As any ptr, ByVal lpString As String, ByVal nMaxCount As Integer) As Integer

Dim Shared WindowHwnd as any ptr

Public Function EnumProc(ByVal hwnd As any ptr, ByVal lParam As any ptr) As Integer
  Dim Retval      As UInteger
  Dim WindowText  As String
 
  WindowText = Space(GetWindowTextLength(hwnd) + 1)
  Retval     = GetWindowText(hwnd, WindowText, Len(WindowText))
  WindowText = Left(WindowText, Retval)

  If Instr(WindowText,"FBIde") Then WindowHwnd=hwnd

  Return 1
End Function

EnumWindows (@EnumProc, 0)
?WindowHwnd

sleep

_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz