2016-11-07 1 views
1

는 내가 텍스트 파일에서 파이프에 결과를 Windows PowerShell을NDIS 버전 가져 오기?

Get-netadapter|select Name, ndisversion

를 사용하고, 거기에서 데이터를 분석 할 수 있다는 것을 알고 있지만, 그 종류의 해키. 좀 더 직접적인 것을 사용하여 동일한 정보를 얻을 수있는 방법이 있는지 궁금합니다. 즉 WMI 또는 Framework 클래스 등? 나는 봤지만 빈손으로 올라왔다.

답변

4

모든 NetAdapter powershell cmdlet은 WMI 개체보다가는 래퍼입니다. 따라서 실제로 Microsoft.Management.Infrastructure 네임 스페이스를 직접 사용할 수 있습니다.

이 경우 root\standardcimv2\MSFT_NetAdapter의 인스턴스를 열거하여 NameDriverMajorNdisVersion 필드를 살펴 봅니다.

var session = CimSession.Create(. . .); 
foreach (var instance in session.EnumerateInstances(@"root\standardcimv2", "MSFT_NetAdapter")) { 
    var name = instance.CimInstanceProperties["Name"].Value as string; 
    var major = instance.CimInstanceProperties["DriverMajorNdisVersion"].Value as byte; 
    WriteLine($"{name}: {major}.{minor}"); 
} 
+0

우수한! 타이 :

이 여기 MI API에 대한 완전한 튜토리얼이 아니라 아이디어의 의사 스케치입니다. –