• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:WMIによるネットワーク接続の有効無効化方法)

WMIによるネットワーク接続の有効無効化方法

このQ&Aのポイント
  • WMIを使用してネットワーク接続を有効または無効にする方法についての質問です。
  • VBScriptを使用して指定のIPアドレスを有効化または無効化する方法を教えてください。
  • 現在は指定のIPアドレスを設定しているが、実際には接続できない状態です。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4851/10265)
回答No.1

WMIは使いませんが、ネットワーク接続をオフオンするVBScriptです。 Const ssfCONTROLS = 3 Const sConPaneName = "ネットワークとダイヤルアップ接続" Const sConnectionName = "ローカル エリア接続" Const sDisableVerb = "無効にする(&B)" Const sEnableVerb = "有効にする(&A)" set shellApp = createobject("shell.application") set oControlPanel = shellApp.Namespace(ssfCONTROLS) set oNetConnections = nothing for each folderitem in oControlPanel.items if folderitem.name = sConPaneName then set oNetConnections = folderitem.getfolder: exit for end if next if oNetConnections is nothing then wscript.quit end if set oLanConnection = nothing for each folderitem in oNetConnections.items if lcase(folderitem.name) = lcase(sConnectionName) then set oLanConnection = folderitem: exit for end if next if oLanConnection is nothing then wscript.quit end if for each verb in oLanConnection.verbs if verb.name = sDisableVerb then verb.DoIt WScript.Sleep 2000 end if next for each verb in oLanConnection.verbs if verb.name = sEnableVerb then verb.DoIt WScript.Sleep 3000 end if next

suvaryu
質問者

お礼

回答ありがとうございます。 試してみます。

suvaryu
質問者

補足

「ネットワークとダイヤルアップ接続」の部分を 「ネットワーク接続」に変えて実行するとできました。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • WSHについて教えてください。

    WSHについて教えてください。 コレクションの最初の要素(オブジェクト)のプロパティを参照したいのですが、やり方がわかりません。 例えば以下のようなWMIのクエリの結果のコレクションの要素(オブジェクト)は1つだけしかありません。 ※ネットワークドライブ V: の情報を得る strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkConnection where LocalName=""V:""",,48) なのにわざわざ For Each objItem in colItems Wscript.Echo "LocalName: " & objItem.LocalName Next のような表現をするのは、いかにも大変です。 For Eachを使わずに、上記の例での colItems の最初の要素(オブジェクト)の LocalName プロパティを取り出すには どのようにコーディングすればいいのでしょうか?

  • 0×80041003 のエラー

    0×80041003のエラーがイベントビュアーに出ていて、検索しましたら http://www.sql-master.net/articles/SQL749.html がヒットしました。 書いてあるように、 strComputer = “.” Set objWMIService = GetObject(“winmgmts:” _ & “{impersonationLevel=impersonate}!\\” _ & strComputer & “\root\subscription”) Set obj1 = objWMIService.Get(“__EventFilter.Name=’BVTFilter’”) set obj2set = obj1.Associators_(“__FilterToConsumerBinding”) set obj3set = obj1.References_(“__FilterToConsumerBinding”) For each obj2 in obj2set WScript.echo “Deleting the object” WScript.echo obj2.GetObjectText_ obj2.Delete_ next For each obj3 in obj3set WScript.echo “Deleting the object” WScript.echo obj3.GetObjectText_ obj3.Delete_ next WScript.echo “Deleting the object” WScript.echo obj1.GetObjectText_ obj1.Delete_ を、新しいテキストドキュメントにページからそのままコピーして貼り付け、ファイルメニューで名前を付けて保存で、[新しい.vbs]と名前を変換して保存、保存した物をクリックすると エラー:文字が正しくありません コード:800A0408 ソース:Microsoft VBScriptコンパイルエラー と出ます、どうすれば良いのでしょうか。

  • vbsでDNSサフィックスの変更をするには

    今、WMIのメソッドを使用して DNSサフィックスを変更するVBSを作成しているのですが なぜか「行10、文字3が無効なメソッドです」って エラーになってしまいます。 運用の環境なので変にランタイムなども入れられないため VBSを選択し、IP変更やコンピュータ名変更なんかは できたのですが、DNSサフィックスがどうしてもうまくいきません。 メソッドもwbemtest.exeにて調べたので無いことも無いと 思うのですが。。。 どなたかわかる方いらっしゃいましたら 教えていただけないでしょうか。お願いします。 **ここからがソースです**** strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colNIC = objWMIService.ExecQuery _ ("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled=true") arrDNSSuffixes = Array("domain1.local", "domain2.local") For each objNIC in colNIC objNIC.SetDNSSuffixSearchOrder(arrDNSSuffixes) NEXT **ここまでがソースです****

  • WSH/VBScript DHCPの有効設定について

    お世話になっております。 毎度お手数をお掛けしていますが、よろしくお願いいたします。 WSHにてDHCPの有効設定を行ったところ、 WindowsVistaで以下の通り実行すると DHCPは有効になりますが、Staticで設定していたデフォルトゲートウェイのアドレスが残ってしまいます。 WindowsXPで実行するとデフォルトゲートウェイのアドレスは削除されます。 デフォルトゲートウェイの値を削除する方法をお願いいたします。 '----------------------------------- strComputer = "." Set objWMIService = GetObject _ ("winmgmts:\\"" & strComputer & "\root\CIMV2") Set colItems = objWMIService.ExecQuery(_ "SELECT * FROM Win32_NetworkAdapterConfiguration Where IPEnabled = 'True'" For Each objItem in colItems if objItem.EnableDHCP = False then Return = objItem.EnableDHCP end if Next '----------------------------------- 上記に以下を追加してみましたが正常に動作しませんでした。 arrGateways = Array(Null) objItem.SetGateways(arrGateways) 以上、よろしくお願いいたします。

  • ネットワーク接続を無効から接続に戻すことが出来ません

    スパイウェア掃除のためにネットワークを切断してからウイルスバスターで検索を掛けようとしてコントロールパネルからネットワーク接続を呼び出し[ローカルエリア接続]を[無効]にしました。 作業終了後[ローカルエリア接続]を戻そうとしたのですが、接続しても「接続無し、又は限定された~」と!マーク付きの警告が出てネットに繋がらなくなってしまいました。 接続の他に「修復」という項目が有りましたが、「IP更新に失敗しました」と表示されるだけでネットに繋がっていないと意味が無いようでした。 どなたかネットワーク接続を元に戻す方法を教えてください。 WindowsXP Home Editionでウイルスバスター2006を使いました。 セーフモードは接続が切れておらず、ネットに繋がりました。

  • 異なるネットワークへの接続について

    こんにちは。 現在、XPにて2つのネットワークに同時に接続しています。 ひとつのネットワークはネット接続の無いもの。(社内ネットワークと呼んでいます) 社内ネットワークへの接続は有線で 192.168.0.1からDHCPでIPアドレスを付与しています。 もうひとつはネット接続のできるネットワーク。(インターネットネットワークと呼んでいます) インターネットネットワークへの接続は無線で 192.168.5.1からDHCPでIPアドレスを付与しています。 上記のような設定をしたPCからは 社内ネットワークへのアクセスとインターネットへのアクセスが同時に可能でした。 ところが、XPからWIN8に変更して上記と同じ設定をしたところ 社内ネットワークへのアクセスについては問題ありませんが、 インターネットネットワークにおいて、このネットワーク上にある端末、デバイスには アクセス可能ですが、インターネットの閲覧が出来ません。 症状として、社内ネットワークを無効にすると、インターネットの閲覧ができますが、 先のとおり、XPの時は社内ネットワークを無効にしなくても、 同時に社内ネットワークとインターネットネットワークのすべてが利用可能でした。 是非とも解決策のご教示をお願いいたします。

  • 下記内容のスクリプトを実行すると、ポップアップが

    下記内容のスクリプトを実行すると、ポップアップが 5回表示されるのですが、どこから取ってきた値なのか知りたいです。 ※必要なのは4回目に表示されるデスクトッププロパティから  参照できる”スクリーンセーバーの待ち時間”だけです。  出来れば、それのみ表示させたいです。 ****************** On Error Resume Next strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_Desktop") For Each objItem in colItems Wscript.Echo "ScreenSaverTimeout: " & objItem.ScreenSaverTimeout Next ****************** 以上

  • IPアドレスを自動的に取得

    いつもお世話になります。 VBScriptのご質問です。 ローカルネットワーク接続の設定でIPアドレスを固定から 自動的に取得に変更するという要件なのですが ネットでは、Win32_NetworkAdapterConfigurationクラスの EnableDHCPが紹介されていたので試したところ、 使用するIPが「192.164.nn.nn」から「0.0.0.0」と変わっただけで 自動的に取得するに変更はされていませんでした。 netshコマンドをコマンド実行で埋め込んでもいいのですが 出来れば、Win32_NetworkAdapterConfigurationを使う方法を 知りたいです。 アドバイス宜しくお願い致します。

  • ネットワーク接続できなくなってしまいました

    XPで ネットワーク接続 → ローカルエリア接続 を選んだところで、左側に表示されていた このネットワークデバイスを無効にするという のを間違って押してしまったところ、 有効にするという表示が出たものの その有効にするを押しても ネットワーク接続に失敗しましたと表示されて ネットワークに接続できなくなりました。 IPの設定画面ではIP表示が消えていませんし、 ネットワークデバイスも有効になっているの ですが、コマンドプロンプトの画面で ipconfig で見るとIP、ゲートウェイの表示がでません。 どうしたら、もとに戻るでしょうか?

  • リモートPCの情報取得について

    Windows2000から下のVBSを実行しますがうまくデータを取得できません。 取得先のPCもWinodows2000です。.NET Framework 1.1以上です。 ファイヤーウォールの類もありません。 どなたか教えて下さい。 ------------------------------------------------------ strComputer = "192.168.2.●●" Set wbemServices = GetObject("winmgmts:\\" & strComputer) Set wbemObjectSet = wbemServices.InstancesOf("Win32_LogicalMemoryConfiguration") For Each wbemObject In wbemObjectSet WScript.Echo "物理メモリの合計 (kb): " & wbemObject.TotalPhysicalMemory Next