Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Community Manager
836 Views

Using C# System.Management to change adapter settings

Hello,

I am developing a command line utility that will allow an end user to configure the network adapters via command line. This is a C# (.NET 2.0) application running on Window Embedded Standard 2009. I can enumerate the IANet_PhysicalEthernetAdapters and IANet_AdapterSettings just fine. However, I cannot figure out how to update a setting. I'm trying something like this, but keep getting a "Generic failure" exception.

_objSetting["CurrentValue"] = newVal;

 

NetService ns = NetService.GetInstance();

 

uint clientHandle, followupAction;

 

ns.BeginApply(out clientHandle);

 

ManagementNamedValueCollection context = new ManagementNamedValueCollection();

 

context.Add("ClientSetId", clientHandle.ToString());

 

_objSetting.Put(new PutOptions(context, TimeSpan.MaxValue, true, PutType.UpdateOnly));

 

ns.Apply(clientHandle, out followupAction);

The _objSetting.Put(..) is causing the exception "Generic failure".

I appear to be getting a valid client handle from the BeginApply() function call. After the crash, it takes a bit before I can even run this again, as I'm having to wait for that lock to timeout. Development and testing is on Vista, but I get the same error on XP64 test machine as well.

I have search the web cannot find any examples on how to change these settings using C# WMI classes. I'm obviously missing an important step.

Please help!

0 Kudos
0 Replies