既に無効になっているカードを有効にする必要があり、WMI NetworkAdapterのサーチャーがオブジェクトを返さないという問題があります。C#を使用して無効なワイヤレスネットワークカードを有効にする方法
これを行う方法は考えられますが、動作させることができませんでした。つまり、これをコンストラクタ名として使用してmanagementObjectを作成することです。しかし、これは単に他の方法は、netshをシェルとの両方の、一種の醜いあるデバイスを、有効、またはShell32は/ DLLもう一度、同じことを行うには、「有効」を使用することでした例外
{\\.\root\CIMV2:Win32_NetworkAdapter.NetConnectionID='Wireless Network Connection'}
をスローしますちょうど名前を渡す。私はHKLM\SYSTEM\CurrentControlSet\Network
のレジストリスキャンから名前を取得していて、MediaType = 2を探してワイヤレスデバイスの文字列リストを取得しています。ワイヤレスデバイスのnetworkObjectを取得できるようにアダプタが有効な状態でアプリケーションを実行すると、すべてが良好ですが、ワイヤレスデバイスが無効な状態でアプリケーションが起動すると、すべてが終了します。
おかげ
編集:これは、この方法で私は仕事が大好きだコードが、なし、外出先:(
using System;
using System.Management;
class Sample
{
public static int Main(string[] args)
{
ManagementObject mObj = new ManagementObject("\\\\.\\root\\CIMV2:Win32_NetworkAdapter.NetConnectionID=\"Wireless Network Connection\"");
mObj.InvokeMethod("Enable", null);
return 0;
}
}
感謝を助けること
!私は何をすることができないようです。無効になっているデバイスの検索で何も返されないため、無効になっているアダプタを有効にします。デバイスを無効にすることは本当に簡単ですが、オブジェクトを取得できないデバイスを有効にすることは、Imが問題を抱えていることです。理想的には、これが私が仕事に挑戦しようとしているものです。 – pedigree
正確なインターフェイスを問い合わせると、 'enable'メソッドで実装することができます。私が試してみると、うまくいかないのですか? – Greg
@Grey - 電話する前に無線を無効にしていますか(デバイスマネージャで)?もしそうなら、どんなOS/.NETをターゲットにしていますか? – pedigree