![]() |
3 Monitore verwalten
ich hoffe das passt hier rein war mir da jetzt nicht so sicher -.-
Hallo an alle die in dieses Thema gefunden haben :D ich komm mal gleich zur sache: ich will mir ein programm schreiben was meine 3 monitore verwaltet habe aber überhaupt kein ansatz wie ich überhaupt an die monitore herran komme (befehlsmäßig) Die Aufgabe das Programms: ich habe 2 Monitore im normalen erweiterten desktop betrieb laufen das funktioniert auch ohne probleme wenn ich jetzt aber noch meinen 3. Monitor (TV-Gerät) hinzu schalten will sagt mir mein grafik treiber meine Graka unterstützt nur 2 monitore gleichzeitig (hat aber 3 anschlüsse hmm komisch -.-). da ich aber filme über meinen tv gugen will muss ich immer bei windows einstellen das ich meinen sekundär monitor trennen will und dafür den 3. dazuschalten will. halt über dieses menu: ![]() dazu ist zu sagen das das bild auf dem TV nur Dupliziert werden soll und nicht wie bei den beiden "echten" monitoren erweitert werden soll ich hätte das jetzt gerne so das ich ein kleines programm auf dem desktop habe mit 2 schaltflächen 1. schaltfläche: -monitor 2 trennen -Bild von monitor 1 auf tvgerät duplizieren 2. schaltfläche -TV gerät trennen -Monitor 1 und Monitor 2 arbeiten im erweiterten desktop betrieb ich hoffe hier gibtes einige leute die mir bei diesem problem helfen können danke schonmal im vorraus Gruß Sportkeks |
AW: 3 Monitore verwalten
Zitat:
Meistens ist es aber so, dass die Grafikkarten zwei DVI-Anschlüsse haben, die aber auch noch das Analog-Signal mitführen (DVI-I), wenn du deinen TV-Out aktivierst, wird aber ein DVI-Anschluss komplett deaktiviert, anstatt auf rein-Digital umzuschalten. Es gibt aber z.B. Matrox-Karten, da kannst du bis zu 8 Monitore an eine Kiste hängen. |
AW: 3 Monitore verwalten
naja ich wollte mir eigl. nicht gleich ne neue graka kaufen.
meine graka hat 2 dvi und einen svideo anschluss es werden alle 3 monitore in windows erkannt 2 davon können aber nur aktiv sein ist richtig. das programm soll nur die einstellerei für die umschaltung durch einen knopfdruck ersetzen also wie schon oben beschrieben das muss ich zur zeit immer noch von hand in diesem menu machen und es funktioniert ja auch aber ist halt lästig |
AW: 3 Monitore verwalten
Also ich nutze dafür
![]() ![]() Sowas selbst zu schreiben ist sicher möglich, aber nicht in ein paar Tagen erledigt. Selbst UltraMon hatte teilweise über lange Zeit massive Probleme mit der Monitor-Verwaltung unter Win7, die aber nun (endlich) gelöst sind und das Programm läuft nun wie am Schnürchen. |
AW: 3 Monitore verwalten
ja ich habe auch dieses programm drauf, aller dings kann ultramon nicht auf das gerät zugreifen was derzeit getrennt ist und es "aktivieren" sondern nur auf die zwei zur zeit aktiven geräte
dies kann man nur über windows selber machen. naja ich will ja keine extra funktionen einfügen wie es ultramon tut ich will ja nur die windows funktionen die schon vorhanden sind über einen befehl ausführen vll gibt es ja da eine shellexecute funktion für oder ähnliches |
AW: 3 Monitore verwalten
Öhm....:gruebel::gruebel:
Das klingt bei der Beschreibung aber anders: Zitat:
Probiert und getestet: Also ich kann hier über die Anzeigeprofile problemlos Monitore aktivieren und deaktivieren... |
AW: 3 Monitore verwalten
Zitat:
Zitat:
|
AW: 3 Monitore verwalten
Das Beispiel sollte sich auch problemlos nach Delphi übertragen lassen
|
AW: 3 Monitore verwalten
hm naja mit meiner version geht es iwie nicht denke mal es liegt daran das ich die kostenlose version hab
könnte mir mal einer n kleines beispiel machen wie ich das in delphi umsetzen kann ? bin in delphi nicht so der pro was sowas angeht. |
AW: 3 Monitore verwalten
Ich würde das Beispiel aus Post #7 erstmal so übersetzt.
Delphi-Quellcode:
Dieses scheint wohl den 2. Monitor umzuschalten (an/aus),
uses ComObj;
const POS_ALL = $07; var sys, mon: Variant{IDispatch}; begin sys := CreateOleObject('UltraMon.System'); mon := sys.Monitors('2'); if mon.Enabled then begin sys.SavePositions(POS_ALL); mon.Enabled := False; sys.ApplyMonitorChanges; end else begin mon.Enabled := True; sys.ApplyMonitorChanges; sys.RestorePositions(POS_ALL); end; end; aber k.A. ob dieses so funktioniert. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz