XP: Einstellung des DPI-Wertes der Anzeige

  • Hallo zusammen,

    ich bin vor ein paar Tagen über AutoIt gestolpert. Feines Programm.

    Ich versuche gerade, einem Kumpel ein Programm zu schreiben, mit dem er die DPI-Einstellung von XP verändern kann, wenn er sein Laptop an einen externen Monitor anstöpselt.
    Die händische Vorgehensweise ist folgende:

    Rechtskick auf den Desktop, "Eigenschaften", Reiter "Einstellungen", Button "Erweitert", Pfeil neben "DPI-Einstellungen, "Benutzerdefinierte Einstellung..."

    Mit folgendem Code komme ich bis an eben diese Stelle:

    [autoit]

    Run("control.exe desk.cpl,,3")
    WinWait("Eigenschaften von Anzeige")
    Send("!e")

    [/autoit][autoit][/autoit][autoit]

    Sleep(1000)
    $rc=WinGetTitle("[active]")
    MsgBox(0,"Titel 1",$rc)

    [/autoit][autoit][/autoit][autoit]

    Opt("WinTitleMatchMode", 4)
    WinWait("Eigenschaften von ","Der DPI-Wert kann als Kompensi")
    ControlCommand("Eigenschaften von Plug und Play-Monitor","Der DPI-Wert kann als Kompensi","ComboBox1","SelectString","Benutzerdefinierte Einstellung...")

    [/autoit][autoit][/autoit][autoit]

    ;Bis hierhin läuft das Script!
    ;Das folgende Fenster wird nicht erkannt :--(
    ;Das Script läuft erst weiter, wenn ich das Fenster "DPI-Einstellung anpassen" schließe
    ;Die folgende Messagebox liefert dann wieder "Eigenschaften von Plug und Play-Monitor ..."

    [/autoit][autoit][/autoit][autoit]

    $rc=WinGetTitle("[active]")
    MsgBox(0,"Titel 2",$rc)

    [/autoit][autoit][/autoit][autoit]

    WinWait("DPI-Einstellung anpassen","benutzerdefinierten",5)

    [/autoit][autoit][/autoit][autoit]

    $rc=WinGetTitle("[active]")
    MsgBox(0,"Titel 3",$rc)

    [/autoit]

    Irgendwie scheint mir das Fenster "DPI-Einstellung anpassen" kein "normales" Fenster zu sein.

    Hat einer von Euch eine Idee, wie ich in diesem Fenster oben eine Prozentzahl eintragen kann?

    Vielen Dank,
    Jupp

    Einmal editiert, zuletzt von Jupp (18. Juli 2011 um 22:23)

  • Hallo misterspeed,

    doch, diesen Schlüssel gibts auch unter XP. Ich habe es gerade mal ausprobiert, klappt aber nicht.
    Außerdem hat die Methode über das Windows-GUI den Vorteil, daß ich nicht neu booten muß, ich muß mich noch nicht mal neu anmelden.
    Ach ja, ich starte das Script (bzw. bisher zu Testzwecken das GUI) per "runas", damit die Änderung auch gespeichert werden darf.

    Also mir wäre eine Lösung, bei der ich wirklich die händische Bedienung nachbaue, am liebsten.
    Weiterhin: Geht nicht gibt's nicht, das muß klappen. ;)

    Jupp

  • Also ich muss unter Vista wenn ich die DPI Settings von Hand über die Anzeige Settings ändere auch rebooten, geht scheinbar nicht live. Aber vielleicht war das unter XP ja noch besser gelöst, kanns hier leider nicht nachschaun...