Windows 7 ออกจากโหมดสลีปเมื่อฉันเปิดเดสก์ท็อประยะไกล


24

มีวิธีใดที่จะให้เครื่อง Windows 7 เข้าสู่โหมดสลีปโดยอัตโนมัติเมื่อฉันลองและเชื่อมต่อกับ Remote Desktop หรือไม่?

ตัวเลือกการประหยัดพลังงานของเครื่องที่ฉันต้องการเชื่อมต่อ (บังคับใช้โดยนโยบายกลุ่มที่ฉันเชื่อ) คือเข้าสู่โหมดสลีปหลังจาก 30 นาทีซึ่งหมายความว่าฉันต้องเดินกายเพื่อกดปุ่มหรือเปิดเครื่อง Wake-on- แยกต่างหาก เครื่องมือ LAN เพื่อนำออกจากโหมดสลีป

ฉันจะดีถ้าไคลเอนต์การเชื่อมต่อเดสก์ท็อประยะไกลส่งแพ็คเก็ต Wake-on-LAN โดยอัตโนมัติ - เป็นไปได้หรือไม่


2
ไม่มีเมนบอร์ดรุ่นใหม่กว่าที่มีคุณสมบัตินี้?
Dalin Seivewright

@DalinSeivewright ใช่พวกเขาทำของฉันเครื่อง dev ใหม่ล่าสุดไม่นี้โดยอัตโนมัติในขณะนี้ :)
จอห์น Sibly

คำตอบ:


13

คุณจะต้องส่งแพ็คเก็ตเวทย์มนตร์ (สำหรับ LAN ของ LAN) ผ่านเราเตอร์ของคุณ ยากเนื่องจากเราเตอร์จะไม่ส่งต่อสิ่งเหล่านี้ตามค่าเริ่มต้น แต่มีวิธีแก้ไขตามที่พบที่นี่ :

ในการปลุกคอมพิวเตอร์จากอินเทอร์เน็ตคุณต้องเชื่อมต่อบรอดแบนด์ด้วยเราเตอร์ที่เชื่อมต่อกับโมเด็มที่ทำให้การเชื่อมต่อของคุณยังคงอยู่ (คุณต้องใช้เราเตอร์แม้ว่าคุณจะมี IP แบบคงที่)

การปลุกคอมพิวเตอร์จากระยะไกลทำได้โดยการส่งมายากลแพ็คเก็ตผ่านอินเทอร์เน็ตโดยใช้ที่อยู่ IP อินเทอร์เน็ตของคุณและหมายเลข MAC ของคอมพิวเตอร์ที่คุณต้องการจะปลุก

หากคุณไม่ทราบที่อยู่ IP ของคุณ:

ลิงก์ไปที่: ฉันจะค้นหาที่อยู่คอมพิวเตอร์ / เซิร์ฟเวอร์อินเทอร์เน็ตของฉันจากที่ตั้งระยะไกลได้อย่างไร

คุณต้องเตรียมระบบสำหรับ Wake Up Over Internet

เปิดพอร์ตคิดว่าเราเตอร์และซอฟต์แวร์ไฟร์วอลล์ (ใช้หมายเลขพอร์ตสูงดังนั้นจะไม่ขัดแย้งกับพอร์ตอื่น ๆ 5850 เป็นตัวอย่างที่ดี)

กำหนดพอร์ตให้กับ IP ภายในของคอมพิวเตอร์ที่คุณต้องการ WOL (คุณสามารถใช้พอร์ตสำหรับคอมพิวเตอร์หนึ่งเครื่องเท่านั้น)

รับยูทิลิตี้นี้มันช่วยให้คุณกำหนดพอร์ตสำหรับ WOL

ลิงก์ไปที่: Wake on LAN สำหรับ Windows Graphical User Interface (WOL GUI)

นำสำเนา WOL GUI ติดตัวไปกับคุณแล้วจดบันทึกหมายเลข MAC ในที่ตั้งระยะไกลให้เริ่ม WOL GUI และพิมพ์หมายเลข MAC ของคุณพิมพ์ในที่อยู่อินเทอร์เน็ต (Internet IP) พิมพ์ในหมายเลขพอร์ตที่คุณเปิดทิ้งไว้ คลิกที่ Wake me Up และควรใช้งานได้

ยูทิลิตี้:

ข้อความแสดงแทน

ยูทิลิตี้แพ็คเก็ตมายากล GUI เป็นฟรีแวร์


คุณยังสามารถใช้ฮอตคีย์เพื่อปลุกพร้อมกับเวอร์ชันบรรทัดคำสั่งของ Wake On LAN :

ไวยากรณ์:

C:\path\to\wolcmd.exe [Mac address] [IP address] [Subnet mask] [port number]

ทำให้สิ่งต่าง ๆ ง่ายขึ้น:

  • ดาวน์โหลดAutoHotkey
  • ใช้สคริปต์นี้:
! w :: Run, C: \ wolcmd.exe 009027a324fe 195.188.159.20 255.255.255.0 8900
  • Alt+ wจะปลุกคอมพิวเตอร์ระยะไกล

แก้ไขสคริปต์ให้สอดคล้องกันเพื่อให้พา ธ ชี้ไปยังwolcmd.exeไฟล์ที่เรียกทำงานได้และ MAC, IP และซับเน็ตถูกต้อง


สวัสดีจอห์น - ใช่นี่เป็นเครื่องมือที่ฉันต้องใช้ในปัจจุบันหากฉันต้องการทำให้คอมพิวเตอร์เครื่องนี้หยุดทำงาน ฉันสงสัยว่าเป็นไปได้หรือไม่ที่ Remote Desktop จะทำงานอัตโนมัติ
John Sibly

1
ฉันไม่รู้วิธีการทำโดยอัตโนมัติและถ้าฉันใช้ AutoHotkey เพื่อปลุกโดยอัตโนมัติเมื่อคุณเปิดเดสก์ท็อประยะไกลการเปิด RDC ด้วยเหตุผลอื่นจะยังคงปลุกคอมพิวเตอร์ที่บ้านของคุณซึ่งคุณไม่ต้องการดังนั้นฉันจึงแก้ไขคำตอบของฉัน เพื่ออธิบายรายละเอียดเกี่ยวกับวิธีตั้งค่าปุ่มลัดเพื่อปลุกคอมพิวเตอร์ระยะไกลของคุณ
John T

1
คำตอบของ John T นั้นยอดเยี่ยม สิ่งที่ฉันสามารถเพิ่มได้คือฉันสร้างทางลัดบนเดสก์ท็อปของฉันด้วย: wol -i 192.168.1.61 -p 00: 24: 8C: 1F: 90: 23 wol 00: 24: 8C: 1F: 90: 23 (Can ' จำไม่ได้ว่าทำไมฉันจึงเพิ่มคำสั่งที่คล้ายกันสองคำสั่ง) จากนั้นฉันจะกำหนดทางลัดให้แป้นพิมพ์คอมโบเช่น Ctrl + shift + j ใช้งานได้ดีสำหรับเครื่องเดสก์ท็อป แต่การดิ้นรนกับแล็ปท็อปของฉัน
Guy Thomas

ขอบคุณสำหรับคำติชมทั้งหมด เวอร์ชั่นบรรทัดคำสั่งดูดีมาก - ฉันคิดว่าวิธีแก้ปัญหา (สำหรับฉันอย่างน้อย) คือการสร้างแบตช์ไฟล์ไปที่: เรียกเครื่องมือบรรทัดคำสั่งรอ 5 วินาทีหรือมากกว่านั้นและเปิดใช้ "mstsc.exe mycomputer.rdp"
John Sibly

3

การปรับปรุงคำตอบของ John Sibly ... หากอยู่ในหน้าต่างคุณสามารถหลีกเลี่ยงรหัส C # ได้โดยใช้ "หมดเวลา" cmd ดังนี้

ECHO OFF
CLS
WolCmd.exe MAC_OF_NIC IP_ADDR MASK 7
timeout 10
ECHO Starting remote desktop connection
start mstsc.exe mycomputer.rdp

ดูคำตอบนี้ใน StackOverflow สำหรับตัวเลือกเพิ่มเติมเกี่ยวกับส่วนสลีปของไฟล์. cmd: /programming/4317020/windows-batch-sleep


คำสั่งที่มีประโยชน์ - ฉันจะต้องจำไว้ว่าในอนาคตสำหรับไฟล์ชุด :)
จอห์น Sibly

2

เดสก์ท็อประยะไกลไม่มีความสามารถในการปลุกจากระยะไกลในตัว

คุณอาจกำหนดค่าการ์ดเครือข่ายของคุณให้ตื่นขึ้นมาบนแพ็กเก็ตใด ๆ อย่างไรก็ตามสิ่งนี้อาจไม่ทำงานอย่างที่คุณตั้งใจเพราะจะไม่แยกแยะระหว่างความพยายามเชื่อมต่อเดสก์ท็อประยะไกลกับใครบางคนที่กำลังสแกนเครือข่ายของคุณหรือแพ็คเก็ตแฝงจากบริการที่คุณใช้

ในตอนนี้คุณอาจต้องใช้สองขั้นตอนคือ 1) ปลุกคอมพิวเตอร์ด้วยแอปพลิเคชั่นเดียว 2) เชื่อมต่อผ่านเดสก์ท็อประยะไกล


2

ด้วยการใช้ข้อมูลจากคำตอบอื่น ๆ ฉันได้สร้างโฟลเดอร์ที่มีไฟล์ต่อไปนี้:

connect.bat
mycomputer.rdp (remote desktop connection file)
sleep.exe (a little program to wait a specified number of milliseconds)
wolcmd.exe

ดังนั้นการใช้งาน connect.bat ทำให้คอมพิวเตอร์ของฉันตื่นขึ้นมารออีก 10 วินาทีจากนั้นเปิดการเชื่อมต่อเดสก์ท็อประยะไกล

connect.bat มีสิ่งต่อไปนี้:

ECHO OFF
CLS
WolCmd.exe 0011AA22BB33 10.1.255.255 255.255.0.0 7
ECHO Sleeping...
Sleep.exe 10000
ECHO Starting remote desktop connection
start mstsc.exe mycomputer.rdp

คุณสามารถสร้าง sleep.exe ได้โดยการบันทึกซอร์สด้านล่างเป็น sleep.cs และบ่นโดยใช้คอมไพเลอร์ C # ที่มาพร้อมกับ. NET Framework:

csc /out:sleep.exe c:\sleep.cs

แหล่งที่มาสำหรับ sleep.cs

using System;
using System.Threading;

namespace Sleep
{
    class Program
    {
        static void Main(string[] args)
        {
            if (args.Length == 1)
            {
                int period = 0;
                Int32.TryParse(args[0], out period);
                Console.WriteLine("Sleeping for {0} ms", period);
                Thread.Sleep(period);
            }
        }
    }
}

2

คุณต้องใช้อะแดปเตอร์เครือข่ายที่รองรับ ARP offload และรูปแบบการปลุก TCP SYN ดังที่ระบุไว้ในhttp://technet.microsoft.com/en-us/library/ee617165%28v=ws.10%29.aspx

หากฟีเจอร์เหล่านั้นได้รับการรองรับและเปิดใช้งาน Whindos จะไม่เตือนคุณเกี่ยวกับนโยบายสลีป / ไฮเบอร์เนตเมื่อคุณเปิดเดสก์ท็อประยะไกล


ฉันสังเกตเห็นว่าสิ่งนี้ใช้ได้กับเครื่องจักร dev ตัวใหม่ของฉัน - ฉันเดาว่านี่คือเหตุผลว่าทำไม
John Sibly

1

มีเหตุผลหลายประเภทที่เกี่ยวข้องกับข้อความแสดงข้อผิดพลาดที่ปรากฏ

หน่วยความจำไม่เพียงพอ

ปิดโปรแกรมอื่น ๆ ของคุณแล้วลองเชื่อมต่ออีกครั้ง หากปัญหายังคงมีอยู่ให้รีสตาร์ทคอมพิวเตอร์แล้วลองเชื่อมต่ออีกครั้ง หากคุณยังไม่สามารถเชื่อมต่อได้ให้ติดต่อผู้ดูแลระบบเครือข่ายหรือฝ่ายสนับสนุนด้านเทคนิค (สำหรับข้อมูลเพิ่มเติมให้ดูที่การป้องกันปัญหาหน่วยความจำเหลือน้อย)

เครือข่ายล่ม

ตรวจสอบให้แน่ใจว่าการเชื่อมต่อเครือข่ายของคุณใช้งานได้เช่นโดยการเข้าใช้งานโดเมนท้องถิ่นหรือส่วนกลางหรือหากเสียบสายอีเธอร์เน็ตเข้ากับอะแดปเตอร์เครือข่ายหรือเปิดสวิตช์ไร้สาย

ไม่พบคอมพิวเตอร์ระยะไกล

ตรวจสอบว่าเปิดใช้งานเดสก์ท็อประยะไกลแล้ว ตรวจสอบว่าคอมพิวเตอร์ระยะไกลกำลังทำงานอยู่ (ไม่อยู่ในโหมดสลีปหรือไฮเบอร์เนต) ตรวจสอบชื่อคอมพิวเตอร์หรือที่อยู่ IP ของมันและตรวจสอบให้แน่ใจว่าคุณพิมพ์อย่างถูกต้อง

การเชื่อมต่อคอมพิวเตอร์ที่บ้านกับคอมพิวเตอร์บนโดเมนองค์กรนั้นต้องใช้ขั้นตอนขั้นกลางเพื่อให้แน่ใจว่าคอมพิวเตอร์สามารถสื่อสารได้เช่นเพื่อสร้างการเชื่อมต่อเครือข่ายส่วนตัวเสมือน (VPN) ไปยังเครือข่ายองค์กร

หรือแอปพลิเคชั่นอื่นอาจใช้พอร์ตเดียวกันกับ RDP

สำหรับตัวอย่างเพิ่มเติมนอกเหนือจากกรณีที่พบบ่อยที่สุดของฉันหรือสำหรับรายละเอียดเกี่ยวกับแต่ละกรณีให้ดู:

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.