Làm thế nào để khởi chạy một lệnh về kết nối / ngắt kết nối mạng?


59

Tôi có kết nối wifi yêu cầu xác thực bằng biểu mẫu web sau khi liên kết không dây được thiết lập. Tôi biết cách tự động hóa xác thực bằng một tập lệnh sử dụng curl/ curlIE .

Nhưng làm thế nào tôi có thể yêu cầu Windows gọi tập lệnh của mình mỗi khi tôi kết nối với một kết nối mạng cụ thể?

Tôi cũng sẽ quan tâm đến việc nhận tên của hồ sơ không dây hoặc ESSID trên dòng lệnh của tập lệnh của tôi.


1
Có lẽ là vô dụng nhưng tôi đã tìm thấy điều này thông qua việc googling. Nó dường như liệt kê các kết nối của bạn và có thể cung cấp một cái gì đó bạn có thể truy vấn bằng một tập lệnh để xác định khi nào bộ điều hợp kết nối / ngắt kết nối. msdn.microsoft.com/en-us/l
Library / ms739931% 28v = VS85% 29.aspx

Tôi không muốn phải kiểm tra trạng thái cứ sau vài giây. Thông báo nhận thức vị trí mạng là thú vị, nhưng tôi thấy không có cách nào dễ dàng để sử dụng nó chỉ với kịch bản.
heo

dolmen - có một cách bạn có thể đăng kịch bản bạn đã viết để xác thực. câu hỏi này sẽ đầy đủ hơn rất nhiều với nó trong đó.
Quest49

@ Quest49 Tôi hiểu rằng kịch bản của tôi có thể khiến bạn quan tâm, nhưng nó không liên quan đến câu hỏi.
heo

Bạn đã bao giờ nhận được một câu trả lời cho điều này thỏa mãn câu hỏi của bạn?
Menasheh

Câu trả lời:


80

Trong Windows Vista trở lên, bạn có thể thực hiện việc này bằng cách sử dụng tác vụ theo lịch trình với trình kích hoạt nhật ký sự kiện. Sự kiện đầu tiên sẽ được kích hoạt bằng cách kết nối với mạng và bạn sẽ chỉ định mạng nào bạn phải kết nối để mạng chạy. Sự kiện thứ hai sẽ được kích hoạt khi ngắt kết nối khỏi bất kỳ mạng nào. Mỗi sự kiện sẽ chạy một nhiệm vụ cụ thể mà bạn chỉ định; có thể các kịch bản bạn đề cập đã viết.

Đặt sự kiện khi bạn kết nối với mạng:

  1. Mở Trình lập lịch tác vụ. Bạn có thể tìm thấy nó bằng cách gõ Task Schedulervào hộp tìm kiếm menu bắt đầu, hoặc bên dưới Programs | Accessories | System Tools.
  2. Trong thư viện Trình lập lịch tác vụ, tạo một tác vụ mới bằng cách nhấp Create Taskvào bảng Hành động ở phía bên phải.

    thêm nhiệm vụ

  3. Đặt tên cho tác vụ như "phát hiện kết nối mạng" hoặc bất cứ điều gì bạn chọn

  4. Trên Triggerstab, nhấp New...và chọn On an Eventtừ hộp thả xuống.

    kích hoạt thả xuống

  5. Chọn các cài đặt sau:

    • Nhật ký: Microsoft-Windows-NetworkProfile/Operational
    • Nguồn: NetworkProfile
    • ID sự kiện: 10000
  6. Nhấn OK, sau đó chuyển đến Conditionstab.
  7. Chọn hộp cho Start only if the following network connection is availablevà chọn mạng bạn muốn chạy tập lệnh với
  8. Dưới Actionstab, nhấp New...và chọn Start a program. Nhập vị trí của tệp tập lệnh bạn muốn chạy, sau đó bấm OK.
  9. Đặt bất kỳ cài đặt tác vụ nào bạn muốn, sau đó nhấp vào OK.

Đặt sự kiện khi bạn ngắt kết nối mạng:

  1. Thực hiện theo các bước 2-4 ở trên
  2. Sử dụng các cài đặt kích hoạt sự kiện sau:
    • Nhật ký: Microsoft-Windows-NetworkProfile/Operational
    • Nguồn: NetworkProfile
    • ID sự kiện: 10001
  3. Bỏ qua các bước 6-7, vì bạn sẽ không còn được gắn vào bất kỳ mạng nào cả. Do đó, sự kiện này sẽ chạy bất cứ khi nào bạn ngắt kết nối khỏi bất kỳ mạng nào .
  4. Thực hiện theo các bước 8-9 một lần nữa

1
Tuyệt quá! Cảm ơn bạn cho câu trả lời bực bội đó! Điều này là nhiều hơn tôi mong đợi. Tôi phát hiện ra rằng tôi thậm chí có thể sử dụng một điều kiện trên tên kết nối mạng, vì vậy tôi chỉ có thể chạy lệnh cho một cấu hình WLAN cụ thể.
heo

Bạn đã lấy các giá trị từ đâu mà bạn đã cung cấp ở bước 5? Có thể xử lý chúng thông qua bản dùng thử và lỗi trong nhật ký sự kiện, nhưng tôi tự hỏi liệu có cách nào tốt hơn để xác định một sự kiện cụ thể không, thông qua một số tài liệu chẳng hạn.
Adam Millerchip

1
@AdamMillerchip Tôi vừa mở trình xem sự kiện, ngắt kết nối / kết nối lại, rồi nhìn xung quanh.
nhinkle

1
Lạ thật, tôi đã thử cái này và không có gì ....
Menelaos Bakopoulos

1
Đối với hồ sơ, tôi phải xác định là "nguồn" Microsoft-Windows-NetworkProfile(W10 1709)
Joril

11

Có vẻ như nó đã Start only if the following network connection is availablebị hỏng sau khi cập nhật kỷ niệm Windows 10. Sử dụng kích hoạt tùy chỉnh này thay thế:

<QueryList>
  <Query Id="0" Path="System">
    <Select Path="Microsoft-Windows-NetworkProfile/Operational">
     *[System[(EventID=10000)]] and *[EventData[(Data[@Name="Name"]="YOUR-SSID-HERE")]]
    </Select>
  </Query>
</QueryList>

Trong các mạng công ty sử dụng tên miền thay vì SSID. Trong trường hợp này, danh mục của sự kiện sẽ là "Xác thực tên miền" chứ không phải "Riêng tư".


Start only if the following network connection is availabledường như bị phá vỡ thực sự. Nếu tôi đặt tùy chọn đó và chạy tác vụ theo yêu cầu, tôi sẽ gặp lỗi này : Task Scheduler Service is not available. Task scheduler will attempt to reconnect to it.
Federico Destefanis

4

Nếu bạn tình cờ sử dụng Thinkpad, bạn có thể tận dụng kết nối truy cập ThinkVantage, có sẵn cho Windows 7, Vista và XP.

ThinkVantage Access Connection là phần mềm quản lý kết nối mạng được cung cấp cùng với ThinkPad - nếu không, có thể tải xuống từ trang web hỗ trợ của họ. Khi bạn tạo một cấu hình mới cho vị trí của mình, sẽ có một trình hướng dẫn hỏi bạn có muốn định cấu hình danh sách chương trình để bắt đầu khi vị trí đó được kết nối không. Nó cũng đề nghị giết chương trình khi hết mạng.

Lưu ý rằng phần mềm có thể được cấu hình để hoạt động mà không cần bất kỳ cấu hình vị trí nào, và đó có lẽ là trạng thái ban đầu - trong trường hợp đó, không có cách nào để định cấu hình danh sách chương trình để bắt đầu khi kết nối wifi: bạn phải tạo kết nối hồ sơ để chứa danh sách.

Đối với trải nghiệm của riêng tôi, tôi cố gắng tránh sử dụng phần mềm - mất nhiều thời gian hơn để kết nối so với khi không có nó và đôi khi không thiết lập được kết nối mới khi khởi động (có thể được sửa bằng cách kết nối lại thủ công).

Phần mềm chỉ hoạt động với trình điều khiển WIFI được cung cấp cùng với thinkpad.

Mặt khác, phần mềm này cung cấp để thiết lập kết nối trước khi người dùng đăng nhập, như một tùy chọn khi bạn tạo hồ sơ. Tôi không biết nếu điều này là có thể mà không có nó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.