Вниз
Скачать: CL | DM;

Выключение компа(программно)   Найти похожие ветки 

 
Merfi   (2003-06-05 06:23) [0]

Как программно можно выключить комп(у меня WinXp), ExitWindowsEx не помогает.


 
Suntechnic ©   (2003-06-05 06:24) [1]

http://delphimaster.net/view/4-1054773274/


 
Merfi   (2003-06-05 06:37) [2]

если не трудно приведи реальный код.


 
Song ©   (2003-06-05 08:40) [3]

А по той ссылке что вверху, разве нет реального кода?


 
NAlexey ©   (2003-06-05 09:49) [4]

Вот все выключение, выключение. А вы мне приведите код как программно включить комп...


 
Жук ©   (2003-06-05 10:05) [5]


> NAlexey © (05.06.03 09:49)
> ...как программно включить комп...

Да уж. ИМХО, это поинтереснее задачка.


 
NAlexey ©   (2003-06-05 10:07) [6]

То-то...


 
SergeyNew   (2003-06-05 10:14) [7]

>>Вот все выключение, выключение. А вы мне приведите код как программно включить комп...

Поставь себе Smart-UPS и будет тебе сщастье.


 
DrPass ©   (2003-06-05 11:40) [8]

Не у всех есть чувство юмора...


 
Song ©   (2003-06-05 11:59) [9]

2NAlexey © (05.06.03 09:49)
А какая проблема? Делаешь в BIOS"е WakeOnLan
и посылаешь широковещательные UDP запрос. Все включатся :)


 
NAlexey ©   (2003-06-05 12:43) [10]

>и посылаешь широковещательные UDP запрос. Все включатся :)
Ну пройдохи...


 
Song ©   (2003-06-05 12:50) [11]

Я бы попросил обосновать такое слово.


 
NAlexey ©   (2003-06-05 13:25) [12]

>Я бы попросил обосновать такое слово.
Не имел целью обидеть кого либо. Употребил слово "пройдоха" только из желания выразить удивление возможностью находить выход из безвыходных ситуаций, что на мой взгляд можно охарактеризовать словом "пройдоха". Прощу прощения если я ошибся.


 
Song ©   (2003-06-05 14:14) [13]

Почему безвыходная. Вот Вам и код:(правда с Indy)

program WakeOnLan;

{$APPTYPE CONSOLE}

uses
SysUtils,
Classes,
IdBaseComponent,
IdComponent,
IdUDPBase,
IdUDPClient;

function HexStringToBinString(const HexStr: string): string;
var
i, l: integer;
begin
Result := "";
l := length(HexStr);
l := l div 2;
SetLength(Result, l);
for i := 1 to l do
if HexToBin(PChar(Copy(HexStr, (i - 1) * 2 + 1, 2)),
PChar(@Result[i]), 1) = 0 then
raise Exception.Create("Invalid hex value");
end;

procedure SendMagicPacket(MACAddress: string);
var
s, packet: string;
i: integer;
begin
if Length(MACAddress) <> 12 then
raise Exception.CreateFmt("Invalid MAC Address: %s", [MACAddress]);
packet := HexStringToBinString("FFFFFFFFFFFF");
s := HexStringToBinString(MACAddress);
for i := 1 to 16 do
packet := packet + s;
with TIdUDPClient.Create(nil) do
try
Active := true;
BroadcastEnabled := true;
Broadcast(packet, 9);
finally
Free;
end;
end;

begin
if ParamCount <> 1 then
WriteLn("usage: WakeOnLan MACAddress" + #10 + #13 + "exmple: WakeOnLan 000102030405")
else
SendMagicPacket(ParamStr(1));
end.


 
NAlexey ©   (2003-06-05 14:30) [14]

Вот это я и имел в виду :)


 
NAlexey ©   (2003-06-05 14:34) [15]

А что в ParamStr?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.015 c
14-84545
Comwad
2003-06-06 08:47
2003.06.26
Компонент для отправки SMS сообщений.


1-84403
adogg
2003-06-09 15:55
2003.06.26
StringGrid


14-84544
race1
2003-06-07 13:33
2003.06.26
mail


3-83874
Ann
2003-06-02 14:18
2003.06.26
Grid


1-84295
???
2003-06-15 11:17
2003.06.26
как изменить время появления Hint a? и можно отловить это событее




   Наверх