Verhindern, dass ein Programm den Focus an sich reist

  • Hallo Forum,

    oft reißen Programme, die ich automatisieren möchte den Fokus an sich. Das ist besonders ein Problem, wenn zB ein Video/Game im Vollbild läuft und sieht auch sonst einfach nicht schön aus. Kann man das irgendwie verhindern? Eine Art WinDisallowFocus. Es soll nicht den Fokus zurücksetzten (dann wäre das Video z.B. ja bereits minimiert und man hat die Unterbrechung gesehen):
    Ich will NICHT den Fokus an ein bestimmtes Programm binden (der User soll weiterhin wechseln können, wenn er will).

  • Sub

    mit

    Zitat

    automatisieren


    meinst du eine Installation oder?
    Falls nein, sage wofür :D

    Ansonnsten, sollte dies mit

    [autoit]

    ControlClick ( "title", "text", controlID [, button [, clicks [, x [, y ]]]] )

    [/autoit]


    möglich sein.
    (wenn ich mich nicht Täusche >_<)

  • Das automatisieren selbst ist mir klar.
    Das Problem ist, dass Fehlermeldungen bei Installation oft "in den Fokus springen" und damit den Nutzer stören, das ist der 1. Punkt, den ich gerne umgehen würde
    (stattdessen das Fenster im Hintergrund auslesen und den Fehler behandeln)

    Da es so verwandt ist, noch das 2. Problem, auf das ich gerade gestoßen bin:
    Ich würde Programme gerne unsichtbar installieren können. Zum einen sieht es besser aus, zum anderen kann dann ein Nutzer nicht drin herum fuschen.

    Das Problem:
    WinSetState (0,@SW_Hide) und WinSetTrans (x ,0) (dürfte ja das gleiche sein) machen das Fenster zwar unsichtbar, ControlClick funktioniert dann aber nicht mehr
    Mit WinSetTrans (x ,1) ist das Fenster praktisch unsichtbar, ControlClick funktioniert - leider kann auch der Nutzer dann an der Stelle rum klicken.

    Wenn er gerade auf dem Desktop etwas anklickt und das Fenster dummer Weise an der Stelle liegt, gibt es ein Problem

  • Das automatisieren selbst ist mir klar.
    Das Problem ist, dass Fehlermeldungen bei Installation oft "in den Fokus springen" und damit den Nutzer stören, das ist der 1. Punkt, den ich gerne umgehen würde
    (stattdessen das Fenster im Hintergrund auslesen und den Fehler behandeln)

    Da es so verwandt ist, noch das 2. Problem, auf das ich gerade gestoßen bin:
    Ich würde Programme gerne unsichtbar installieren können. Zum einen sieht es besser aus, zum anderen kann dann ein Nutzer nicht drin herum fuschen.

    Das Problem:
    WinSetState (0,@SW_Hide) und WinSetTrans (x ,0) (dürfte ja das gleiche sein) machen das Fenster zwar unsichtbar, ControlClick funktioniert dann aber nicht mehr
    Mit WinSetTrans (x ,1) ist das Fenster praktisch unsichtbar, ControlClick funktioniert - leider kann auch der Nutzer dann an der Stelle rum klicken.

    Wenn er gerade auf dem Desktop etwas anklickt und das Fenster dummer Weise an der Stelle liegt, gibt es ein Problem

    Heyho, ich weiß, dass man Installationen automatisiert ablaufen kann, ohne dass man auch nur 1 einziges Fenster der Installation sieht, glaube dies ging mit einer Kombination von RunWait, werde es bei gelegenheit aber nochmal nachschlagen.

  • Also die meisten installationen haben ja ein "-silent"-Parameter (oftmals -s oder sowas ähnliches), bei einer (oder mehreren, hauptsache es sind immer dieselben exe-dateien und silent-parameter) spezifischen Installation sollte es so gehen.

    Bild1: Ich beim debuggen

  • Also die meisten installationen haben ja ein "-silent"-Parameter (oftmals -s oder sowas ähnliches), bei einer (oder mehreren, hauptsache es sind immer dieselben exe-dateien und silent-parameter) spezifischen Installation sollte es so gehen.

    Ja, so meinte ich das auch, xD... Wusste nur nicht wie ich es beschreiben soll, xD... :thumbup: