www.mikrocontroller.net

Forum: PC-Programmierung Monitor in Standby versetzen - brauche Tip


Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte den Monitor (Touchscreen) an einem BDE-Terminal bei längerer 
Nichtbenutzung von der BDE-Applikation abschalten lassen. Dazu habe ich 
im Web diesen Beispielcode in VB gefunden. Ich kenn mich aber mit VB 
nicht so gut aus und  habe Zweifel, was sich hinter der Schreibweise 
"-1&" und "2&" verbirgt. Ist das Binär, Oktal, Dezimal? Die beiden 
Hex-Zahlen kenn ich, das ist kein Problem, aber die Werte für 
Monitor_on/off ... ?
Public Const WM_SYSCOMMAND = &H112
Public Const SC_MONITORPOWER = &HF170
Public Const MONITOR_ON = -1&
Public Const MONITOR_OFF = 2&

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long

Aufruf: SendMessage Me.hwnd, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF
oder: SendMessage Me.hwnd, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON

Danke, Frank

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum erledigst Du das nicht mit den 
Energieeinstellungen/Bildschirmschoner des von Dir verwendeten 
Betriebssystemes?

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> -1&
Das ist einfach ein Int (also -1 und -2)
const int MONITOR_ON = -1;
const int MONITOR_OFF = 2;
const int MONITOR_STANBY = 1;
Google doch mal nach SC_MONITORPOWER, dort solltest du dir den zweiten 
Link mal genauer ansehen.

Autor: Skua C:\> (skua)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht nach Integer aus
-1 = &HFFFFFFFF

Autor: NurEingGast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... und was bedeutet nun das & hinter der Zahl ?

Merci

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Warum erledigst Du das nicht mit den
>Energieeinstellungen/Bildschirmschoner des von Dir verwendeten
>Betriebssystemes?

Weil der Monitor an Werktagen tagsüber gearnicht ausgehen soll, nur in 
den Zeiten, in denen wenig oder nicht gearbeitet wird. Es gibt eine 
zentrale Administrator-Applikation (es sind ca. 80 Terminals) ...

Frank

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

es handelt sich tatsächlich um normale Integer-Werte, es funktioniert 
also. Die Funktion schaltet die Grafikkarte an und aus. Ohne 
Video-Signal geht der Monitor nach einigen Sekunden in den 
Standby-Modus. Nun tritt aber das nächste Problem auf:

Es handelt sich um einen Touchscreen, der quasi aus zwei Geräten in 
einem Gehäuse besteht:

- ein "normaler" Monitor
- die Touch-Platte davor

Beide sind völlig unabhängig von einander. Die Touch-Platte meldet sich 
am Computer als normale (HID-) Maus. Wenn nun der Monitor dunkel 
gesteuert ist, genügt ein Tipp auf die Oberfläche und der Computer 
schaltet die Grafikkarte wieder an. Die Touch-Platte bleibt aktiv und es 
besteht die Gefahr, das mit dem ersten Tipp "ins Dunkle" zum Aufwecken 
eine unerwünschte Funktion ausgelöst wird (die Programmoberfläche ist 
voller Buttons). An dieser Stelle wäre es nützlich den Status der 
Grafikkarte abfragen zu können - und genau dazu konnte ich absolut nix 
finden.

Tips? Danke.

Frank

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Programm was den Moni ausschaltet, weiß doch dass es das getan hat. 
Du musst dir also nur merken dass du es getan hast.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.