วิธีจับภาพเหตุการณ์การเชื่อมต่ออินเทอร์เน็ตใน Windows Task Scheduler


4

ฉันพยายามสร้างงานง่าย ๆ ใน Windows 7 ที่จะเรียกใช้สคริปต์หลังจากเชื่อมต่อกับอินเทอร์เน็ตทุกครั้ง บางครั้งเกตเวย์ของฉันรีสตาร์ทตัวเองและฉันต้องการเรียกใช้สคริปต์นั้นทุกครั้งที่มีการเชื่อมต่ออินเทอร์เน็ต

ในตัวช่วยสร้างการสร้างงานฉันเลือกงานที่ควรเริ่มต้น "เมื่อมีการบันทึกเหตุการณ์เฉพาะ" แต่ฉันไม่รู้ว่าอันไหน


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

ฉันพยายามจับภาพเหตุการณ์ทั้งหมดในช่วงเวลาหนึ่งเมื่อฉันตัดการเชื่อมต่อโมเด็มจากเกตเวย์และเชื่อมต่อใหม่อีกครั้ง ไม่มีกิจกรรมใด ๆ เลย แต่เมื่อฉันตัดการเชื่อมต่อเกตเวย์บางNetworkProfileเหตุการณ์ก็ถูกจับ อย่างไรก็ตามอย่างที่คุณพูดการเชื่อมต่อเครือข่ายไม่รับประกันว่าจะมีการเชื่อมต่ออินเทอร์เน็ต
Roman

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

คำตอบ:


7

ฉันจะใช้ Task Scheduler เพื่อเรียกสคริปต์เมื่อเชื่อมต่อกับเครือข่ายจากนั้นใช้สคริปต์เพื่อยืนยันการมีอยู่ของอินเทอร์เน็ต

บันทึกเหตุการณ์ Microsoft-Windows-NetworkProfile / Operational ได้รับ 10,000 เหตุการณ์เมื่อเชื่อมต่อกับเครือข่ายดังนั้นคุณสามารถใช้สิ่งนั้นเพื่อเรียกสคริปต์ของคุณ

จากนั้นในตอนต้นของสคริปต์คุณสามารถมีลักษณะดังนี้:

ping 8.8.8.8 | find "Reply"
if errorlevel 1 goto :eof

# Your script

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