วิธีรันโปรแกรมเมื่อเชื่อมต่อกับเครือข่ายเฉพาะใน Windows 7


19

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

มีวิธีการเรียกใช้โปรแกรมหรือสคริปต์เมื่อคุณเข้าร่วมเครือข่ายไร้สายหรือไม่?

ฉันใช้ Windows 7 และฉันก็ยินดีที่จะใช้โปรแกรมที่ดูแลงานประเภทนี้

คำตอบ:


16

ฉันมีคำถามที่แน่นอนนี้และคำตอบของ Darren ก็อยู่ในเส้นทางที่ถูกต้อง แต่ก็ไม่ได้รับฉันไปถึงที่นั่น นี่คือสิ่งที่ฉันทำ

ก่อนอื่นให้กำหนดเหตุการณ์ที่คุณต้องการใช้เพื่อทริกเกอร์งาน เรียกใช้โปรแกรม Event Viewer และไปที่: Applications and Services Logs > Microsoft > Windows > WLAN-AutoConfig > Operational

ในกรณีของฉันฉันไม่ต้องการให้งานของฉันทำงานจนกว่าฉันจะมีการเชื่อมต่อกับเครือข่ายจริงเฉพาะ Wi-Fi 8001เพื่อให้รหัสเหตุการณ์ที่ผมต้องการก็คือ วิธีที่รวดเร็วในการสร้างงานตามกิจกรรมนี้คือคลิกขวาที่กิจกรรมและเลือก "แนบงานกับกิจกรรมนี้ ... "

นี่คือภาพหน้าจอ

ในหน้าต่างที่ปรากฏขึ้นให้ตั้งชื่องานของคุณอย่างชาญฉลาดและเพิ่มคำอธิบายเพื่อให้คุณจำได้ในภายหลัง ผ่านตัวช่วยสร้างการเลือกโปรแกรมที่คุณต้องการเรียกใช้ ฯลฯ และเมื่อไปถึงหน้าจอสุดท้ายให้ทำเครื่องหมายในช่องที่ระบุว่า "เปิดกล่องโต้ตอบคุณสมบัติสำหรับงานนี้เมื่อฉันคลิกเสร็จสิ้น"

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

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

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

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

<EventData>
  ...
  <Data Name="SSID">Your WiFi Network</Data>
  ...
</EventData>

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

การอ้างอิงกลับไปยังบทความที่ลิงก์ด้านบนคุณจะเห็นว่าสตริงที่คุณต้องการเพิ่มจะมีลักษณะดังนี้:

and *[EventData[Data[@Name='SSID']='Your WiFi Network']]

วางทางขวาก่อนหน้า </Select>

ความเจริญ คุณทำเสร็จแล้ว


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


ด้วย Windows 7 ฉันไม่สามารถจัดการทริกเกอร์ให้ทำงานได้อย่างถูกต้องด้วยดรอปดาวน์ "Start only [.. ]" แต่ด้วยทริกเกอร์ที่กำหนดเองและ XML ที่คุณพูดถึงมันทำงานได้ เมื่อใช้เมนูแบบเลื่อนลง (ซึ่งไม่ได้แสดง SSID ที่ฉันต้องการ) ฉันมักจะหยุดเพราะเงื่อนไขนี้
joweiser

"การเชื่อมต่อเครือข่ายใช้งานได้" ไม่ได้หมายความว่าไคลเอนต์กำลังเชื่อมต่อหรือเชื่อมต่อกับการเชื่อมต่อเครือข่ายที่กำหนดตามคำขอ OP
Gaia

6

คุณสามารถใช้ Windows 7 Task Scheduler สำหรับสิ่งนี้

ภายใต้แท็บทริกเกอร์เริ่มงาน On an event

ฉันไม่ได้ใช้ Windows 7 บนแล็ปท็อป แต่ฉันเชื่อว่า Event ID สามารถพบได้ในMicrosoft-Windows-WLAN-AutoConfig

ภายใต้แท็บเงื่อนไขStart Only if the following network connection is availableและระบุเครือข่ายไร้สายที่คุณต้องการ

จากนั้นเรียกโปรแกรมภายใต้การกระทำ


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