Понякога искате да стартирате компютър, без да натискате бутона за захранване. И това може да се направи... по мрежата с помощта на технология, наречена Wake on LAN (WoL).
Но как може да се направи в AutoHotkey?
Понякога искате да стартирате компютър, без да натискате бутона за захранване. И това може да се направи... по мрежата с помощта на технология, наречена Wake on LAN (WoL).
Но как може да се направи в AutoHotkey?
За да събудите компютър през вашата LAN, трябва да създадете и изпратите така наречения магически пакет. Всичко, което трябва да знаете, е mac адресът на вашия целеви компютър. Освен това се уверете, че е правилно настроен за WoL.
Събуждането на компютъра може да се направи доста лесно с помощта на библиотеката на сокетите в AHK:
#include Socket.ahk ;http://pastebin.com/CtM9p4QG
WakeOnLAN("AABBCCDDEEFF") ;Example - use the mac address of your target here
ExitApp
WakeOnLAN(mac) {
magicPacket_HexString := GenerateMagicPacketHex(mac)
size := CreateBinary(magicPacket_HexString, magicPacket)
UdpOut := new SocketUDP()
UdpOut.connect("addr_broadcast", 9)
UdpOut.enableBroadcast()
UdpOut.send(&magicPacket, size)
}
GenerateMagicPacketHex(mac) {
magicPacket_HexString := "FFFFFFFFFFFF"
Loop, 16
magicPacket_HexString .= mac
Return magicPacket_HexString
}
CreateBinary(hexString, ByRef var) { ;Credits to RHCP!
sizeBytes := StrLen(hexString)//2
VarSetCapacity(var, sizeBytes)
Loop, % sizeBytes
NumPut("0x" SubStr(hexString, A_Index * 2 - 1, 2), var, A_Index - 1, "UChar")
Return sizeBytes
}
Можете да използвате Softperfect Network Scanner (този, който има футболна топка за икона) и след това използвайте AutoHotkey, за да изпратите командни редове до него. Можете да го стартирате и преносимо, така че дори не е необходимо да инсталирате нищо.
netscan := "c:\program files\netscan\netscan.exe"
run, %netscan% /wol:AA:EE:73:43:BB:73
Синтаксисът на командния ред за netscan е в долната част на страницата с документи.
/wol:MAC изпраща магически пакет Wake-On-LAN до посочения MAC адрес и незабавно излиза. Пример: /wol:AABBCCDDEEFF.
/wolfile:filename.txt ви позволява да посочите текстов файл с MAC адреси за събуждане, напр. /wolfile:c:\myfile.txt, където файлът е обикновен текстов файл, съдържащ по един MAC адрес на ред.
/wakeall изпраща WOL пакет до всички компютри, конфигурирани в WOL мениджъра и незабавно се затваря.
Но имайте предвид, че трябва да имате активирана опция във вашия BIOS, за да позволите на компютъра да получи магически пакет на своята NIC.