@ironfroggyが言ったように、これは、Pythonに固有のものではなく、一般的なWindowsの質問。
ネットワークカードの速度とデュプレックスの設定をプログラムで見つけようと思ったとき、非常に困難でした。最終的に私たちはあなたのNICのベンダーに応じて異なる構造を持つレジストリをさまよっていました。
これは次のようなものです。すべてのエラーのために謝罪:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network
を検索し、データ「ネットワークアダプタ」を持っているのGUIDを探します。この<GUID1>
と呼んでください。
<GUID1>
の下に、各NICの別のGUIDがあります。それらのうちの1つを<GUID2>
と呼んでください。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\<GUID1>
にアクセスしてください。
NetCfgInstanceId
の値が<GUID2>
のものが見つかるまで、そのキーを繰り返します(0000、0001、0002などのように見えます)。
- ここでは、NICベンダーに依存するサブキーを探します。 Ndiを\ savedParamsは
- のparams BRCMndi \は、そこの下
-
-
- Ndiを\のparamsあなたがデータ
ParamDesc
と呼ばれる値を持つものを見つけるまでのキーを反復処理:我々が定義されているいくつかはあります"speed"と "duplex"という単語が含まれています。キー名を覚えて、それを<SpeedDuplexParamName>
と呼んでください。
<SpeedDuplexParamName>
の下には、enum
というキーがあり、数字は「自動検出」や「100Mbフル」などの説明と一致します。
- いくつかのレベルを見つけたところに戻ってください。
NetCfgInstanceId
その近くで、現在の値を列挙として見ることができます。ここでの例では、値の名前はRequestedMediaType
で、値は6でした。
- 速度とデュプレックスの設定を見つけるために列挙値を調べます。
私は@ DrFalk3nが同じと言うかもしれないマイクロソフトの記事にリンクしているのを見ましたが、これは役に立つかもしれないのでここに残しておきます。
私はPythonのタグを削除しましたので、Pythonの質問を無視するWindowsユーザーに表示される可能性があります。 Pythonも削除するには、質問のタイトルを編集する必要があります。 –