ネットワーク接続が変更されたときにさまざまなことを行うスクリプトを作成したいと思います。たとえば、マシンがオフィスのネットワークに接続している場合、次のことを実行したいと思うかもしれません。
次に、マシンがオフィスのネットワークから外れると、それらの一部が元に戻る可能性があります。
おそらく「アクティブなネットワーク」は、IPアドレス/ゲートウェイの範囲やWIFIネットワーク名などに基づいています。
これを達成するための推奨ツールはありますか?このようなものが多くのITプロフェッショナルに当てはまるので、いくつかの良いヒントがあると確信しています。
これは、ユーザーがログオン/ログオフしたときだけでなく、ネットワークが変更されたときに機能することが望ましいことに注意してください。
Windowsの "Network Location Awareness"サービス( http://msdn.Microsoft.com/en-us/library/ms739931(VS.85).aspx )XP( 2000年?思い出せません...)以上でこの機能が有効になりますが、それを利用するアプリケーションを誰かが作成した場所はわかりません。自分で何かをコーディングしたいのですが、それについて考え始めるのに十分な予備のサイクルがありません。
これは単純な小さなVBScriptのことではありませんが、それほど多くのコーディングではありません。たぶん誰かがそのアイデアを手に入れてそれを実行することができるでしょう。 http://www.Microsoft.com/downloads/details.aspx?familyid=ef8a6228-f11d-4ba0-b73e-dd8dc7dd11e8&displaylang=en にもサンプルコードがあります。
私はこの機能を何度も欲しがっていますが、それを見たい人は少なくないと思います。
タスクスケジューラを使用して実行できます。
念のため、コンピュータ「サスペンド」と「レジューム」のイベントもあります。たとえば、私はこれらを使用して、これらのイベントでHamachiを停止および再起動します。それ以外の場合は、私のマシンに問題があるようです。
コンピューター「サスペンド」の場合、ログ「Microsoft-Windows-Kernel-Power/Thermal-Operational」、ソース「Kernel-Power」を使用でき、イベントIDは42です。
コンピュータ「再開」の場合、ログ「システム」、ソース「電源トラブルシューティング」を使用でき、イベントIDは1です。
ユーザーログイン/ログオフの場合、タスクスケジューラでのイベントはわかりません(ただし、イベントスケジューラでも利用できると思います)が、代わりにここで構成できます。
同じウィンドウの[Computer Configuration]フォルダーで、コンピューターの「スタートアップ」イベントと「シャットダウン」イベントに対して同様のことを行うことができます。スタートアップスクリプトは、ユーザーがログオンする前にシステムアカウントで実行されます。
これは横向きで部分的な答えのようなものです(元の記事が見つからないため、文書化されていません)が、Windows 7のプリンターオブジェクトにプロパティシートがあり、デフォルトに応じてデフォルトを変更できると確信していますサブネット。
私はあなたのリストの残りに対処する機能も見てみたいです。
.netフレームワークバージョン2を使用すると、System.Net.NetworkInformation名前空間を使用できます。これから、次のことを判別できます。
ネットワークの可用性:NetworkAvailabilityChangedEventHandler()ネットワークアドレスの変更:NetworkAddressChangedEventHandler()ipaddress:IPAddressInformation
等々。
私が使用していないため、PowerShellを介してどれだけ利用できるかわかりません。しかし、私はネットワークの可用性を監視し、ネットワークが利用可能になったときにネットワーク共有に接続する非常にシンプルなvb.netトレイアプリケーションを作成しました。コードの必要最低限の機能に興味がある場合は、お知らせください。
以前は Net Profiles である程度成功しています。
Ipconfigコマンドの結果を読み取るバッチファイルを作成し、5秒ごとに実行することができます...