Seite 1 von 1

Externes Fenster disablen (Gelöst)

Verfasst: 15.11.2013 16:30
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

Re: Externes Fenster disablen

Verfasst: 15.11.2013 16:38
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.

Re: Externes Fenster disablen

Verfasst: 15.11.2013 17:06
von enigma
Ich ermittle die Fenster mit:
EnumWindows
EnumChildWindows

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

Gruß
Enigma

Re: Externes Fenster disablen

Verfasst: 15.11.2013 17:12
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.

Re: Externes Fenster disablen

Verfasst: 15.11.2013 17:29
von enigma
Danke.
Ich werde mal mit WinSpy prüfen ob ich am richtigen Fenster bin.

Gruß
Enigma

Re: Externes Fenster disablen (Gelöst)

Verfasst: 16.11.2013 11:41
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