public static MiResult ClearElementAt(InstanceHandle handle, int _index) { NativeCimInstance instance = CimNativeApi.MarshalledObject.FromPointer <NativeCimInstance> (handle.DangerousGetHandle()); var properties = NativeCimPropertiesHelper.Deserialize(PropertiesOrSystem(instance)); properties.ElementAt(_index).Value = null; instance.Properties = NativeCimPropertiesHelper.Serialize(properties); handle.DangerousSetHandle((IntPtr)CimNativeApi.MarshalledObject.Create <NativeCimInstance>(instance)); return(MiResult.OK); }
public static MiResult AddElement(InstanceHandle handle, string name, object obj, object par, MiFlags miFlags) { NativeCimInstance instance = CimNativeApi.MarshalledObject.FromPointer <NativeCimInstance>(handle.DangerousGetHandle()); NativeCimProperties properties = NativeCimPropertiesHelper.Deserialize(instance.Properties); CimType type = CimConverter.GetCimType(obj.GetType()); properties.Add(new NativeCimProperty { Name = name, Type = type, Origin = "client", IsArray = false, IsLocal = false, Value = obj }); instance.Properties = NativeCimPropertiesHelper.Serialize(properties); handle.DangerousSetHandle((IntPtr)CimNativeApi.MarshalledObject.Create <NativeCimInstance>(instance)); return(MiResult.OK); }
internal static MiResult NewInstance(ApplicationHandle applicationHandle, string p1, object p2, out InstanceHandle instanceHandle) { NativeCimInstance instance = new NativeCimInstance(); instance.CimClassName = p1; instance.ClassName = p1; instance.Properties = NativeCimPropertiesHelper.Serialize(new NativeCimProperties()); instance.SystemProperties = NativeCimPropertiesHelper.Serialize(new NativeCimProperties()); instance.Namespace = "root/cimv2"; instance.ServerName = "localhost"; instance.Qualifiers = NativeCimQualifiersHelper.Serialize(new NativeCimQualifiers()); IntPtr instancePtr = CimNativeApi.MarshalledObject.Create <NativeCimInstance>(instance); instanceHandle = new InstanceHandle(instancePtr, false); return(MiResult.OK); }