Форум: "Система";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];
ВнизКак программно отключить монитор? Найти похожие ветки
← →
heruvim4ik (2002-03-09 22:40) [0]см. Тему
Только подробнее плз... Для полного чайника объясняете!
Заранее благодарен.
← →
copyr25 (2002-03-09 23:06) [1]Sasha9, кажется публиковал:
sendmessage(fhandle,wm_syscommand,sc_monitorpower,1);//выкл
sendmessage(fhandle,wm_syscommand,sc_monitorpower,-1);//вкл
sendmessage(fhandle,wm_syscommand,sc_monitorpower,0);//текстовый режим
Читайте ВСЕ странички конфы, сэр:)
← →
heruvim4ik (2002-03-10 00:23) [2]Спасибо, работает...
ТОлько немного другая строка:
SendMessage(Application.Handle,wm_SysCommand,SC_MonitorPower,1);
А реально сделать, чтоб он не врубался от движеня мыши или нажатия клавишь?
← →
Yaro (2002-03-10 00:37) [3]Реально - я в таймер пихал
← →
heruvim4ik (2002-03-10 11:02) [4]А подробнее мона??
← →
DelGod (2002-03-10 11:53) [5]код вполне работает
procedure TForm1.button1Click(Sender: TObject);
begin
timer1.Interval:=10000;
SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 0);
timer1.Enabled:=true;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1);
end;
← →
Севостьянов Игорь (2002-03-11 15:24) [6]Можно и клаву и мышку залочить - по времени..., а то не разлочишь потом... Например на 5 секунд
procedure TForm1.Button1Click(Sender: TObject);
function FuncAvail
(_dllname, _funcname: string; var _p: pointer):
boolean;
var _lib: tHandle;
begin
Result := false;
_p := NIL;
if LoadLibrary(PChar(_dllname)) = 0 then exit;
_lib := GetModuleHandle(PChar(_dllname));
if _lib <> 0 then
begin
_p := GetProcAddress(_lib, PChar(_funcname));
if _p <> NIL then Result := true;
end;
end;
var
xBlockInput : function(Block: BOOL):
BOOL; stdcall;
begin
if FuncAvail
("USER32.DLL", "BlockInput", @xBlockInput) then
begin
xBlockInput(true);
Sleep(5000);
xBlockInput(false);
end;
end;
← →
Севостьянов Игорь (2002-03-11 15:24) [7]Можно и клаву и мышку залочить - по времени..., а то не разлочишь потом... Например на 5 секунд
procedure TForm1.Button1Click(Sender: TObject);
function FuncAvail
(_dllname, _funcname: string; var _p: pointer):
boolean;
var _lib: tHandle;
begin
Result := false;
_p := NIL;
if LoadLibrary(PChar(_dllname)) = 0 then exit;
_lib := GetModuleHandle(PChar(_dllname));
if _lib <> 0 then
begin
_p := GetProcAddress(_lib, PChar(_funcname));
if _p <> NIL then Result := true;
end;
end;
var
xBlockInput : function(Block: BOOL):
BOOL; stdcall;
begin
if FuncAvail
("USER32.DLL", "BlockInput", @xBlockInput) then
begin
xBlockInput(true);
Sleep(5000);
xBlockInput(false);
end;
end;
← →
heruvim4ik (2002-03-11 15:30) [8]Блин!!! Самый клёвый форум, который когда-либо видел!!! Ахромное всем спасибо...
← →
Song (2002-03-11 15:44) [9]Вопрос в тему: определить когда монитор включается. Когда выключается я отлавливаю сообщение SC_MONITORPOWER, а вот когда включается оно не генерируется. Идеи есть какие-нибудь?
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c