user710307
user710307

Reputation: 13

Why does SWbemServices.ExecQuery return more properties than requested?

I'm getting unexpected results from the below JScript code. The Index property is returned even though I've only requested MACAddress.

What's going on here?

JScript:

var wmi, col, itr, obj;

wmi = GetObject('winmgmts:');
col = wmi.ExecQuery('SELECT MACAddress FROM Win32_NetworkAdapterConfiguration');
itr = new Enumerator(col);

for (; !itr.atEnd(); itr.moveNext()) {
  obj = itr.item();
  itr = new Enumerator(obj.Properties_)
  for (; !itr.atEnd(); itr.moveNext()) {
    obj = itr.item();
    WSH.echo(obj.name)
  }
}

Output:

Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

Index
MACAddress

Upvotes: 0

Views: 366

Answers (1)

RRUZ
RRUZ

Reputation: 136431

This behavior is normal, the WMI always returns (if is present) the key property (a property that uniquely identifies an instance of a class) and the others specified in the WQL sentence.

Upvotes: 1

Related Questions