internal static string GetManagementPath(IWbemClassObjectFreeThreaded wbemObject) { string str = null; int errorCode = -2147217407; if (wbemObject == null) { return(str); } int pType = 0; int plFlavor = 0; object pVal = null; if ((wbemObject.Get_("__PATH", 0, ref pVal, ref pType, ref plFlavor) < 0) || (pVal == DBNull.Value)) { errorCode = wbemObject.Get_("__RELPATH", 0, ref pVal, ref pType, ref plFlavor); if (errorCode < 0) { if ((errorCode & 0xfffff000L) == 0x80041000L) { ManagementException.ThrowWithExtendedInfo((ManagementStatus)errorCode); } else { Marshal.ThrowExceptionForHR(errorCode); } } } if (DBNull.Value == pVal) { return(null); } return((string)pVal); }
//internal factory /// <summary> /// Internal static "factory" method for making a new ManagementPath /// from the system property of a WMI object /// </summary> /// <param name="wbemObject">The WMI object whose __PATH property will /// be used to supply the returned object</param> internal static ManagementPath GetManagementPath( IWbemClassObjectFreeThreaded wbemObject) { ManagementPath path = null; int status = (int)ManagementStatus.Failed; if (null != wbemObject) { int dummy1 = 0, dummy2 = 0; object val = null; status = wbemObject.Get_("__PATH", 0, ref val, ref dummy1, ref dummy2); if ((status & 0xfffff000) == 0x80041000) { ManagementException.ThrowWithExtendedInfo((ManagementStatus)status); } else if ((status & 0x80000000) != 0) { Marshal.ThrowExceptionForHR(status); } if (System.DBNull.Value != val) { path = new ManagementPath((string)val); } } return(path); }
//internal factory /// <summary> /// Internal static "factory" method for making a new ManagementPath /// from the system property of a WMI object /// </summary> /// <param name="wbemObject">The WMI object whose __PATH property will /// be used to supply the returned object</param> internal static string GetManagementPath( IWbemClassObjectFreeThreaded wbemObject) { string path = null; int status = (int)ManagementStatus.Failed; if (null != wbemObject) { int dummy1 = 0, dummy2 = 0; object val = null; status = wbemObject.Get_("__PATH", 0, ref val, ref dummy1, ref dummy2); if ((status < 0) || (val == System.DBNull.Value)) { //try to get the relpath instead status = wbemObject.Get_("__RELPATH", 0, ref val, ref dummy1, ref dummy2); if (status < 0) { if ((status & 0xfffff000) == 0x80041000) { ManagementException.ThrowWithExtendedInfo((ManagementStatus)status); } else { Marshal.ThrowExceptionForHR(status, WmiNetUtilsHelper.GetErrorInfo_f()); } } } if (System.DBNull.Value == val) { path = null; } else { path = (string)val; } } return(path); }
/// <summary> /// Internal factory for classes, used when deriving a class /// or cloning a class. For these purposes we always mark /// the class as "bound". /// </summary> /// <param name="wbemObject">The underlying WMI object</param> /// <param name="mgObj">Seed class from which we will get initialization info</param> internal static ManagementClass GetManagementClass( IWbemClassObjectFreeThreaded wbemObject, ManagementClass mgObj) { ManagementClass newClass = new ManagementClass(); newClass.wbemObject = wbemObject; if (null != mgObj) { newClass.scope = ManagementScope._Clone(mgObj.scope); ManagementPath objPath = mgObj.Path; if (null != objPath) newClass.path = ManagementPath._Clone(objPath); // Ensure we have our class name in the path object className = null; int dummy = 0; int status = wbemObject.Get_("__CLASS", 0, ref className, ref dummy, ref dummy); if (status < 0) { if ((status & 0xfffff000) == 0x80041000) ManagementException.ThrowWithExtendedInfo((ManagementStatus)status); else Marshal.ThrowExceptionForHR(status); } if (className != System.DBNull.Value) newClass.path.internalClassName = (string)className; ObjectGetOptions options = mgObj.Options; if (null != options) newClass.options = ObjectGetOptions._Clone(options); // Finally we ensure that this object is marked as bound. // We do this as a last step since setting certain properties // (Options, Path and Scope) would mark it as unbound // // *** // * Changed isBound flag to wbemObject==null check. // * newClass.IsBound = true; // *** } return newClass; }
internal static string GetManagementPath(IWbemClassObjectFreeThreaded wbemObject) { string str = null; if (wbemObject != null) { int num = 0; int num1 = 0; object obj = null; int num2 = wbemObject.Get_("__PATH", 0, ref obj, ref num, ref num1); if (num2 < 0 || obj == DBNull.Value) { num2 = wbemObject.Get_("__RELPATH", 0, ref obj, ref num, ref num1); if (num2 < 0) { if (((long)num2 & (long)-4096) != (long)-2147217408) { Marshal.ThrowExceptionForHR(num2); } else { ManagementException.ThrowWithExtendedInfo((ManagementStatus)num2); } } } if (DBNull.Value != obj) { str = (string)obj; } else { str = null; } } return(str); }
private static bool _IsClass(IWbemClassObjectFreeThreaded wbemObject) { object pVal = null; int pType = 0; int plFlavor = 0; int errorCode = wbemObject.Get_("__GENUS", 0, ref pVal, ref pType, ref plFlavor); if (errorCode < 0) { if ((errorCode & 0xfffff000L) == 0x80041000L) { ManagementException.ThrowWithExtendedInfo((ManagementStatus) errorCode); } else { Marshal.ThrowExceptionForHR(errorCode); } } return (((int) pVal) == 1); }
private static bool _IsClass(IWbemClassObjectFreeThreaded wbemObject) { object pVal = null; int pType = 0; int plFlavor = 0; int errorCode = wbemObject.Get_("__GENUS", 0, ref pVal, ref pType, ref plFlavor); if (errorCode < 0) { if ((errorCode & 0xfffff000L) == 0x80041000L) { ManagementException.ThrowWithExtendedInfo((ManagementStatus)errorCode); } else { Marshal.ThrowExceptionForHR(errorCode); } } return(((int)pVal) == 1); }
private static bool _IsClass(IWbemClassObjectFreeThreaded wbemObject) { object obj = null; int num = 0; int num1 = 0; int num2 = wbemObject.Get_("__GENUS", 0, ref obj, ref num, ref num1); if (num2 < 0) { if (((long)num2 & (long)-4096) != (long)-2147217408) { Marshal.ThrowExceptionForHR(num2); } else { ManagementException.ThrowWithExtendedInfo((ManagementStatus)num2); } } return((int)obj == 1); }
private static bool _IsClass(IWbemClassObjectFreeThreaded wbemObject) { object val = null; int dummy1 = 0, dummy2 = 0; int status = wbemObject.Get_("__GENUS", 0, ref val, ref dummy1, ref dummy2); if (status < 0) { if ((status & 0xfffff000) == 0x80041000) { ManagementException.ThrowWithExtendedInfo((ManagementStatus)status); } else { Marshal.ThrowExceptionForHR(status, WmiNetUtilsHelper.GetErrorInfo_f()); } } return((int)val == (int)tag_WBEM_GENUS_TYPE.WBEM_GENUS_CLASS); }
internal static ManagementClass GetManagementClass(IWbemClassObjectFreeThreaded wbemObject, ManagementClass mgObj) { ManagementClass class2 = new ManagementClass { wbemObject = wbemObject }; if (mgObj != null) { class2.scope = ManagementScope._Clone(mgObj.scope); ManagementPath path = mgObj.Path; if (path != null) { class2.path = ManagementPath._Clone(path); } object pVal = null; int pType = 0; int errorCode = wbemObject.Get_("__CLASS", 0, ref pVal, ref pType, ref pType); if (errorCode < 0) { if ((errorCode & 0xfffff000L) == 0x80041000L) { ManagementException.ThrowWithExtendedInfo((ManagementStatus)errorCode); } else { Marshal.ThrowExceptionForHR(errorCode); } } if (pVal != DBNull.Value) { class2.path.internalClassName = (string)pVal; } ObjectGetOptions options = mgObj.Options; if (options != null) { class2.options = ObjectGetOptions._Clone(options); } } return(class2); }
internal static ManagementClass GetManagementClass(IWbemClassObjectFreeThreaded wbemObject, ManagementClass mgObj) { ManagementClass managementClass = new ManagementClass(); managementClass.wbemObject = wbemObject; if (mgObj != null) { managementClass.scope = ManagementScope._Clone(mgObj.scope); ManagementPath path = mgObj.Path; if (path != null) { managementClass.path = ManagementPath._Clone(path); } object obj = null; int num = 0; int num1 = wbemObject.Get_("__CLASS", 0, ref obj, ref num, ref num); if (num1 < 0) { if (((long)num1 & (long)-4096) != (long)-2147217408) { Marshal.ThrowExceptionForHR(num1); } else { ManagementException.ThrowWithExtendedInfo((ManagementStatus)num1); } } if (obj != DBNull.Value) { managementClass.path.internalClassName = (string)obj; } ObjectGetOptions options = mgObj.Options; if (options != null) { managementClass.options = ObjectGetOptions._Clone(options); } } return(managementClass); }
internal static ManagementClass GetManagementClass(IWbemClassObjectFreeThreaded wbemObject, ManagementClass mgObj) { ManagementClass managementClass = new ManagementClass(); managementClass.wbemObject = wbemObject; if (mgObj != null) { managementClass.scope = ManagementScope._Clone(mgObj.scope); ManagementPath path = mgObj.Path; if (path != null) { managementClass.path = ManagementPath._Clone(path); } object obj = null; int num = 0; int num1 = wbemObject.Get_("__CLASS", 0, ref obj, ref num, ref num); if (num1 < 0) { if (((long)num1 & (long)-4096) != (long)-2147217408) { Marshal.ThrowExceptionForHR(num1); } else { ManagementException.ThrowWithExtendedInfo((ManagementStatus)num1); } } if (obj != DBNull.Value) { managementClass.path.internalClassName = (string)obj; } ObjectGetOptions options = mgObj.Options; if (options != null) { managementClass.options = ObjectGetOptions._Clone(options); } } return managementClass; }
private static bool _IsClass(IWbemClassObjectFreeThreaded wbemObject) { object obj = null; int num = 0; int num1 = 0; int num2 = wbemObject.Get_("__GENUS", 0, ref obj, ref num, ref num1); if (num2 < 0) { if (((long)num2 & (long)-4096) != (long)-2147217408) { Marshal.ThrowExceptionForHR(num2); } else { ManagementException.ThrowWithExtendedInfo((ManagementStatus)num2); } } return (int)obj == 1; }
internal static ManagementClass GetManagementClass(IWbemClassObjectFreeThreaded wbemObject, ManagementClass mgObj) { ManagementClass class2 = new ManagementClass { wbemObject = wbemObject }; if (mgObj != null) { class2.scope = ManagementScope._Clone(mgObj.scope); ManagementPath path = mgObj.Path; if (path != null) { class2.path = ManagementPath._Clone(path); } object pVal = null; int pType = 0; int errorCode = wbemObject.Get_("__CLASS", 0, ref pVal, ref pType, ref pType); if (errorCode < 0) { if ((errorCode & 0xfffff000L) == 0x80041000L) { ManagementException.ThrowWithExtendedInfo((ManagementStatus) errorCode); } else { Marshal.ThrowExceptionForHR(errorCode); } } if (pVal != DBNull.Value) { class2.path.internalClassName = (string) pVal; } ObjectGetOptions options = mgObj.Options; if (options != null) { class2.options = ObjectGetOptions._Clone(options); } } return class2; }
internal static string GetManagementPath(IWbemClassObjectFreeThreaded wbemObject) { string str = null; if (wbemObject != null) { int num = 0; int num1 = 0; object obj = null; int num2 = wbemObject.Get_("__PATH", 0, ref obj, ref num, ref num1); if (num2 < 0 || obj == DBNull.Value) { num2 = wbemObject.Get_("__RELPATH", 0, ref obj, ref num, ref num1); if (num2 < 0) { if (((long)num2 & (long)-4096) != (long)-2147217408) { Marshal.ThrowExceptionForHR(num2); } else { ManagementException.ThrowWithExtendedInfo((ManagementStatus)num2); } } } if (DBNull.Value != obj) { str = (string)obj; } else { str = null; } } return str; }
private static bool _IsClass(IWbemClassObjectFreeThreaded wbemObject) { object val = null; int dummy1 = 0, dummy2 = 0; int status = wbemObject.Get_("__GENUS", 0, ref val, ref dummy1, ref dummy2); if (status < 0) { if ((status & 0xfffff000) == 0x80041000) ManagementException.ThrowWithExtendedInfo((ManagementStatus)status); else Marshal.ThrowExceptionForHR(status); } return ((int)val == (int)tag_WBEM_GENUS_TYPE.WBEM_GENUS_CLASS); }
internal static string GetManagementPath(IWbemClassObjectFreeThreaded wbemObject) { string str = null; int errorCode = -2147217407; if (wbemObject == null) { return str; } int pType = 0; int plFlavor = 0; object pVal = null; if ((wbemObject.Get_("__PATH", 0, ref pVal, ref pType, ref plFlavor) < 0) || (pVal == DBNull.Value)) { errorCode = wbemObject.Get_("__RELPATH", 0, ref pVal, ref pType, ref plFlavor); if (errorCode < 0) { if ((errorCode & 0xfffff000L) == 0x80041000L) { ManagementException.ThrowWithExtendedInfo((ManagementStatus) errorCode); } else { Marshal.ThrowExceptionForHR(errorCode); } } } if (DBNull.Value == pVal) { return null; } return (string) pVal; }
//internal factory /// <summary> /// Internal static "factory" method for making a new ManagementPath /// from the system property of a WMI object /// </summary> /// <param name="wbemObject">The WMI object whose __PATH property will /// be used to supply the returned object</param> internal static string GetManagementPath ( IWbemClassObjectFreeThreaded wbemObject) { string path = null; int status = (int)ManagementStatus.Failed; if (null != wbemObject) { int dummy1 = 0, dummy2 = 0; object val = null; status = wbemObject.Get_ ("__PATH", 0, ref val, ref dummy1, ref dummy2); if ((status < 0) || (val == System.DBNull.Value)) { //try to get the relpath instead status = wbemObject.Get_ ("__RELPATH", 0, ref val, ref dummy1, ref dummy2); if (status < 0) { if ((status & 0xfffff000) == 0x80041000) ManagementException.ThrowWithExtendedInfo((ManagementStatus)status); else Marshal.ThrowExceptionForHR(status); } } if (System.DBNull.Value == val) path = null; else path = (string)val; } return path; }