Externes Fenster disablen (Gelöst)

Anfängerfragen zum Programmieren mit PureBasic.
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Externes Fenster disablen (Gelöst)

Beitrag von enigma »

Hallo,
wie kann ich ein externes Fenster disablen so das in diesem keine Buttons geklickt werden können. Ich habe das Fensterhandle ermittelt und wollte, so wie ich hier an mehreren Stellen gelesen habe, das Fenster mit:
EnableWindow_(FensterhWnd, 1)
EnableWindow_(FensterhWnd, 0)
EnableWindow(FensterhWnd, 1)
EnableWindow(FensterhWnd, 0)
DisableWindow_(FensterhWnd, 1)
DisableWindow_(FensterhWnd, 0)
DisableWindow(FensterhWnd, 1)
DisableWindow(FensterhWnd, 0)

unbenutzbar machen. Natürlich war jede Zeile ein neuer Versuch :) Aber keine Version hat geholfen :( ich konnte immer fleißig im Fenster rumklicken. Ich hoffe ihr könnt mir auf die Sprünge helfen denn ich vermute der Fehler sitzt vor dem Bildschirm.

Gruß
Enigma
Zuletzt geändert von enigma am 16.11.2013 11:38, insgesamt 1-mal geändert.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Externes Fenster disablen

Beitrag von RSBasic »

Wie ermittelst du das externe Fenster? Mit FindWindow_()? Ist die zurückgegebene Handle-Nummer ungleich Null?
Falls du nach den Fensternamen suchst, kannst du sicherstellen, dass das Fenster mit dem von dir gesuchten Titel auch einmalig ist?
Es könnte sein, dass es mehrere Fenster mit diesem Titel gibt. Mal angenommen, du hast mehrere Notepad-Fenster mit dem selben Titel. FindWindow_() würde dann nur das erste Fenster finden. Vielleicht ist es bei dir der Fall, dass einfach das falsche Fenster gefunden wird? Wenn ja, dann benutze lieber EnumWindows_(), um alle Fenster aufzulisten und dein gewünschtes Fenster gezielt zu ermitteln.
Ansonsten wäre EnableWindow_(FensterhWnd, 0) das richtige, um das Fenster zu deaktivieren.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Re: Externes Fenster disablen

Beitrag von enigma »

Ich ermittle die Fenster mit:
EnumWindows
EnumChildWindows

Wenn ich das ergebnis über Debug ausgebe werden auch alle angezeigt.

Gruß
Enigma
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Externes Fenster disablen

Beitrag von RSBasic »

Welche Anwendung ist es denn?
Hast du mal mit einem anderen Fenster ausprobiert, ob es damit klappt?
Und kannst du deinen Code posten, wie du was machst?
Welche Tools nutzt du, um manuell die Handle-Nummer zu ermitteln? Nutzt du welche?
Wenn nicht, dann: http://www.rsbasic.de/temp/WinSpy.exe
Damit kannst du sicherstellen, ob die Handle-Nummer die selbe ist wie die, die du mit EnumWindows_() gefunden hast.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Re: Externes Fenster disablen

Beitrag von enigma »

Danke.
Ich werde mal mit WinSpy prüfen ob ich am richtigen Fenster bin.

Gruß
Enigma
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Re: Externes Fenster disablen (Gelöst)

Beitrag von enigma »

@RSBasic
nochmals Danke. Wie ich eingangs vermutet habe saß der Fehler vor dem Bildschirm.
Ich habe tatsächlich immer am falschen Fenster geprüft :oops:

Gruß
Enigma
Antworten