Bequem zwischen 2 Bildschirmen umschalten

Ich benutze AutoIt dazu. Über das Fenster "Bildschirmauflösung" soll lediglich erkannt werden auf welche Monitor/modus man gerade ist. Anscheinend läuft da was falsch. Ich werde mir mal später das Fenster bei ein 64bit win 7 anschauen. Alternativ dazu könntest du ein Screenshot von dein Fenster hochladen.
 
@TingeltangelBob

Ok, klar. Also hier ein Screenshot vom Menü "Bildschirmauflösung" bei meinem 64bit Windows 7 Pro so wie es sich nach Ausführen deines Progs öffnet. Hoffe es hilft dir weiter. Danke für deine Mühe.
 

Anhänge

  • Screen_01.jpg
    Screen_01.jpg
    111,2 KB · Aufrufe: 834
Zuletzt bearbeitet:
Ein Befehl wurde mit falschen Parameter aufgerufen. Warum es aber unter 32 Bit trotzdem ging ist mir ein Rätsel. Ich hoffe dass jetzt alles geht.
 

Anhänge

ich nutze den moniswitch seit ein paar wochen und bin ganz glücklich damit.

allerdings wollte ich wissen/fragen, ob es auch davon eine version gibt, bei der der hauptmonitor gewechselt wird, OHNE dass der zweite monitor "abgeschaltet" (nicht mehr erweitert) wird.

ich benötige eigentlich immer beide monitore zeitgleich und dann stört das ein wenig.

eventuell muss man die exe ja nicht verändern, sondern kann etwas an der au3-datei ändern, aber dazu habe ich zu wenig erfahrung. :)

vielen lieben dank vorab.

gegenwärte version, die ich nutze:
Code:
;C:\Windows\System32\DisplaySwitch.exe /external
;C:\Windows\System32\DisplaySwitch.exe /internal
;C:\Windows\System32\DisplaySwitch.exe /clone
;C:\Windows\System32\DisplaySwitch.exe /extend


Dim $var1
Dim $result1
Dim $var2=1

Run("Rundll32 Shell32.dll,Control_RunDLL desk.cpl")
WinWait("Bildschirmauflösung")
WinActivate("Bildschirmauflösung")
WinWaitActive("Bildschirmauflösung", "2")

$var1=ControlCommand("Bildschirmauflösung", "", "ComboBox1", "GetCurrentSelection", "")
$result1=StringLeft($var1, 1)
Send("{ESC}")

If $result1="1" Then
	Run(@windowsDir & "\System32\DisplaySwitch.exe /external")
ElseIf $result1="2" Then
	Run(@windowsDir & "\System32\DisplaySwitch.exe /internal")
EndIf

;--------------------------------------------------------------------------------------------------
;Fenster "Bildschirmauflösung" wird nicht immer geschlossen.
;hiermit wird ein zweites mal versucht das Fenster zu schließen falls das Fenster noch offen ist
;--------------------------------------------------------------------------------------------------
Sleep(3000)
$var2=WinExists("Bildschirmauflösung")
If $var2="1" Then
	WinActivate("Bildschirmauflösung")
	WinWaitActive("Bildschirmauflösung", "2")
	Send("{ESC}")
EndIf
 
Danke
 
Endlich was gefunden. Vielen Dank für den ExtendMoni ;)
 
Super Danke für diese Programme...heute von AMD auf Nvidia gewechselt und war erstaunt das man nicht wie bei AMD mit Rechtsklich aufs Controlcenter eine einfache Option wie Extend nicht anwählen konnte, warum sowas entfernt wurde wird mir ein Rätsel bleiben.

Funktioniert soweit einwandfrei und ich bin wieder glücklich....und kann wieder Faul sein^^

Verstehe einfach nicht warum Nvidia das so kompliziert macht.
 
hallo wie kann ich das ganze rückgänig machen bitte um hilfe , vorher mit win + p war alles kein problem seit ich diese tools genutzt habe nur noch schwarzes bild von meiner grafikkarte über hdmi zum tv -.-
 
diese tools sind an sich nur macros, also sie tun genau das was man auch selber tun würde zum umschalten. daher kann ich mir nicht erklären wie diese nun zu einem schwarzen bildschirm führen sollten. bitte von hand prüfen ob auch richtige bildwiderholfrequenz, auflösung eingestellt sind und mal von hand in windows auf dem tv umschalten.

Steht der tv auf den richtigen eingang? mit grafiktreiber alles ok?
 
ya soweit alles , einzigste was ich mir dann vorstellen könnte das die herz zahlen und auflösung nicht passen

dah vom pci an monitor per dvi 120herz @ 1920x1080 läuft und der tv glaube ich nur 50 herz und andere auflösungs formate nutzt
 
die skripte ändern aber auflösung und frequenz nicht. Es bleibt das was in windoof eingetragen ist.

ES geht hier um win7 richtig?? oder win8?
 
win7 , übernimmt er dann die auflösung vom monitor zum tv? weil denke das er tv die auflösung insbesondere die herz zahl nicht mitttmacht und deswegen schwarzbild
Ergänzung ()

ich komm einfach nicht dahinter , sobald ich mein hdmi in meinen pc ausgang stecke der mit dem tv verbunden ist geht mein pc monitor aus somit auch keine möglichkeit etwas einzustellen gibt es iwo ein tool wo ich meine herz unter 50 einstellen kann und die auflösung
 
Ist auch für mich März 2014 immer noch aktuell, arbeite immer noch mit XP ;) , habe aber oft Firmenlaptop daheim
für HomeOffice Arbeit und muss dann meinen Privatrechner auf anderen Monitor umschalten.
Das ATI CCCenter ist mir auch viel zu monströs. Ich liebe schlanke Installation.
Habe mich bisher auch immer durch die Menüorgie der Anzeigeeigenschaften gequält
bis ich dieses Tool hier gefunden habe.

Leider hat die Ursprungsversion für XP bei mir nicht funktioniert , wie bereits im Post #30 .

Also wie hier erwähnt Quellcode aus Post #38 und Autoit-v3 heruntergeladen,
Autoit Hilfe gelesen, Quellcode modifiziert, mit Autoit in .exe gewandelt.
Und siehe da! funktioniert perfekt.
Bei mir auf meinem XP hat die " Send("{TAB}{DOWN}") " Funktion nicht richtig funktioniert.
Ich wollte Euch meine Änderungen nicht vorenthalten falls jemand noch das gleiche Problem hat.

Code:
Dim $var1
Dim $var2
Dim $result1
Dim $result2

Run("Rundll32 Shell32.dll,Control_RunDLL desk.cpl")
WinWaitActive("Eigenschaften von Anzeige")

Send("^+{TAB}")
WinWaitActive("Eigenschaften von Anzeige", "&Windows-Desktop auf diesem Monitor erweitern")

$var2=ControlCommand("Eigenschaften von Anzeige", "", "ComboBox1", "GetCurrentSelection", "")
$result1=StringLeft($var2, 1)

If $result1="1" Then
    ControlCommand("Eigenschaften von Anzeige", "", "ComboBox1", "SetCurrentSelection",1)
Else
    ControlCommand("Eigenschaften von Anzeige", "", "ComboBox1", "SetCurrentSelection",0)
EndIf

ControlCommand("Eigenschaften von Anzeige", "&Windows-Desktop auf diesem Monitor erweitern", "Button4", "Check", "")
ControlCommand("Eigenschaften von Anzeige", "&Dieses Gerät als primären Monitor verwenden", "Button3", "Check", "")

$var1=ControlCommand("Eigenschaften von Anzeige", "", "ComboBox1", "GetCurrentSelection", "")
$result2=StringLeft($var1, 1)

If $result2="2" Then
    ControlCommand("Eigenschaften von Anzeige", "", "ComboBox1", "SetCurrentSelection",0)
Else
    ControlCommand("Eigenschaften von Anzeige", "", "ComboBox1", "SetCurrentSelection",1)
EndIf

ControlCommand("Eigenschaften von Anzeige", "&Windows-Desktop auf diesem Monitor erweitern", "Button4", "Uncheck", "")
ControlCommand("Eigenschaften von Anzeige", "&Dieses Gerät als primären Monitor verwenden", "Button3", "Uncheck", "")
ControlClick("Eigenschaften von Anzeige", "OK", 1)
Anhang anzeigen MoniSwitch_XP3.rar

Nochmals Vielen Vielen Dank an den Ursprungs-Autor Yorkfield, tolles Tool.
Roland
 
Danke für diese Programme. Haben mir wirklich weitergeholfen, bis jetzt...
Nun hab ich jedoch 3 Anzeigen.

Anzeige 1 (LCD) wird mit Anzeige 3 (LCD) dupliziert und ich möchte gerne umschalten auf Anzeige 2 (Monitor) alleine und retour.
Kann mir jemand weiterhelfen?
 
Hi Leute,

Ich weiß nicht ob hier das alles noch gelesen wird, aber ich versuchs mal. Ich hab mir das Programm runtergeladen und auf eine Makro-Taste meiner Sidewinder gepackt. Wenn ich jetzt von meinem Monitor 1 auf Monitor 2 umschalten möchte (sprich vom Schreibtisch zumn Fernseher) öffnet sich immer das Bildschirmauflösung Fenster und dann passiert nichts. Wenn ich dann aber auf den Reiter gehe wo man auswählen kann was man grad haben will und da irgendwo mit der Maus rüberfahre schaltet er um und schliesst das Fenster wieder. Vom Fernseher zum Schreibtisch zurück klappt es problemlos. Nur Praktisch von 1 zu 2 nicht. Hatte noch jemand das Problem? Und wie lässt sich das lösen?

Ich freue mich auf eine eventuelle Antwort...
LG
 
Sehr schöne Sache der MoniSwitch!!!!
 
Bin gerade mit Umzug beschäftigt, dann Wohnung einrichten und und... Und allgemein wenig Zeit. Kann also noch dauern bis ich dazu komme. Vielleicht in 4 Wochen oder so wieder mal vorbei schauen. Sollte jemand die Sache sich schneller annehmen wollen, nur zu ;)
 
Zurück
Oben