Beispiel #1
0
        static WmiNetUtilsHelper()
        {
            if (Environment.OSVersion.Platform == PlatformID.MacOSX || Environment.OSVersion.Platform == PlatformID.Unix)
            {
                WmiNetUtilsHelper.ResetSecurity_f = UnixWmiNetUtils.ResetSecurity;

                WmiNetUtilsHelper.SetSecurity_f = UnixWmiNetUtils.SetSecurity;

                WmiNetUtilsHelper.BlessIWbemServices_f = UnixWmiNetUtils.BlessIWbemServices;

                WmiNetUtilsHelper.BlessIWbemServicesObject_f = UnixWmiNetUtils.BlessIWbemServicesObject;

                WmiNetUtilsHelper.GetPropertyHandle_f27 = UnixWmiNetUtils.GetPropertyHandle;

                WmiNetUtilsHelper.WritePropertyValue_f28 = UnixWmiNetUtils.WritePropertyValue;

                WmiNetUtilsHelper.Clone_f12 = UnixWmiNetUtils.Clone;

                WmiNetUtilsHelper.VerifyClientKey_f = UnixWmiNetUtils.VerifyClientKey;

                WmiNetUtilsHelper.GetQualifierSet_f = UnixWmiNetUtils.GetQualifierSet;

                WmiNetUtilsHelper.Get_f = UnixWmiNetUtils.Get;

                WmiNetUtilsHelper.Put_f = UnixWmiNetUtils.Put;

                WmiNetUtilsHelper.Delete_f = UnixWmiNetUtils.Delete;

                WmiNetUtilsHelper.GetNames_f = UnixWmiNetUtils.GetNames;

                WmiNetUtilsHelper.BeginEnumeration_f = UnixWmiNetUtils.BeginEnumeration;

                WmiNetUtilsHelper.Next_f = UnixWmiNetUtils.Next;

                WmiNetUtilsHelper.EndEnumeration_f = UnixWmiNetUtils.EndEnumeration;

                WmiNetUtilsHelper.GetPropertyQualifierSet_f = UnixWmiNetUtils.GetPropertyQualifierSet;

                WmiNetUtilsHelper.Clone_f = UnixWmiNetUtils.Clone;

                WmiNetUtilsHelper.GetObjectText_f = UnixWmiNetUtils.GetObjectText;

                WmiNetUtilsHelper.SpawnDerivedClass_f = UnixWmiNetUtils.SpawnDerivedClass;

                WmiNetUtilsHelper.SpawnInstance_f = UnixWmiNetUtils.SpawnInstance;

                WmiNetUtilsHelper.CompareTo_f = UnixWmiNetUtils.CompareTo;

                WmiNetUtilsHelper.GetPropertyOrigin_f = UnixWmiNetUtils.GetPropertyOrigin;

                WmiNetUtilsHelper.InheritsFrom_f = UnixWmiNetUtils.InheritsFrom;

                WmiNetUtilsHelper.GetMethod_f = UnixWmiNetUtils.GetMethod;

                WmiNetUtilsHelper.PutMethod_f = UnixWmiNetUtils.PutMethod;

                WmiNetUtilsHelper.DeleteMethod_f = UnixWmiNetUtils.DeleteMethod;

                WmiNetUtilsHelper.BeginMethodEnumeration_f = UnixWmiNetUtils.BeginMethodEnumeration;

                WmiNetUtilsHelper.NextMethod_f = UnixWmiNetUtils.NextMethod;

                WmiNetUtilsHelper.EndMethodEnumeration_f = UnixWmiNetUtils.EndMethodEnumeration;

                WmiNetUtilsHelper.GetMethodQualifierSet_f = UnixWmiNetUtils.GetMethodQualifierSet;

                WmiNetUtilsHelper.GetMethodOrigin_f = UnixWmiNetUtils.GetMethodOrigin;

                WmiNetUtilsHelper.QualifierGet_f = UnixWmiNetUtils.QualifierSet_Get;

                WmiNetUtilsHelper.QualifierPut_f = UnixWmiNetUtils.QualifierSet_Put;

                WmiNetUtilsHelper.QualifierDelete_f = UnixWmiNetUtils.QualifierSet_Delete;

                WmiNetUtilsHelper.QualifierGetNames_f = UnixWmiNetUtils.QualifierSet_GetNames;

                WmiNetUtilsHelper.QualifierBeginEnumeration_f = UnixWmiNetUtils.QualifierSet_BeginEnumeration;

                WmiNetUtilsHelper.QualifierNext_f = UnixWmiNetUtils.QualifierSet_Next;

                WmiNetUtilsHelper.QualifierEndEnumeration_f = UnixWmiNetUtils.QualifierSet_EndEnumeration;

                WmiNetUtilsHelper.GetCurrentApartmentType_f = UnixWmiNetUtils.GetCurrentApartmentType;

                WmiNetUtilsHelper.GetDemultiplexedStub_f = UnixWmiNetUtils.GetDemultiplexedStub;

                WmiNetUtilsHelper.CreateInstanceEnumWmi_f = UnixWmiNetUtils.CreateInstanceEnumWmi;

                WmiNetUtilsHelper.CreateClassEnumWmi_f = UnixWmiNetUtils.CreateClassEnumWmi;

                WmiNetUtilsHelper.ExecQueryWmi_f = UnixWmiNetUtils.ExecQueryWmi;

                WmiNetUtilsHelper.ExecNotificationQueryWmi_f = UnixWmiNetUtils.ExecNotificationQueryWmi;

                WmiNetUtilsHelper.PutInstanceWmi_f = UnixWmiNetUtils.PutInstanceWmi;

                WmiNetUtilsHelper.PutClassWmi_f = UnixWmiNetUtils.PutClassWmi;

                WmiNetUtilsHelper.CloneEnumWbemClassObject_f = UnixWmiNetUtils.CloneEnumWbemClassObject;

                WmiNetUtilsHelper.ConnectServerWmi_f = UnixWmiNetUtils.ConnectServerWmi;
            }
            else
            {
                WmiNetUtilsHelper.myDllPath = string.Concat(RuntimeEnvironment.GetRuntimeDirectory(), "\\wminet_utils.dll");
                IntPtr intPtr = WmiNetUtilsHelper.LoadLibrary(WmiNetUtilsHelper.myDllPath);
                if (intPtr != IntPtr.Zero)
                {
                    IntPtr procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "ResetSecurity");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.ResetSecurity_f = (WmiNetUtilsHelper.ResetSecurity)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.ResetSecurity));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "SetSecurity");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.SetSecurity_f = (WmiNetUtilsHelper.SetSecurity)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.SetSecurity));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "BlessIWbemServices");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.BlessIWbemServices_f = (WmiNetUtilsHelper.BlessIWbemServices)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.BlessIWbemServices));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "BlessIWbemServicesObject");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.BlessIWbemServicesObject_f = (WmiNetUtilsHelper.BlessIWbemServicesObject)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.BlessIWbemServicesObject));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetPropertyHandle");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetPropertyHandle_f27 = (WmiNetUtilsHelper.GetPropertyHandle)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetPropertyHandle));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "WritePropertyValue");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.WritePropertyValue_f28 = (WmiNetUtilsHelper.WritePropertyValue)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.WritePropertyValue));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "Clone");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.Clone_f12 = (WmiNetUtilsHelper.Clone)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.Clone));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "VerifyClientKey");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.VerifyClientKey_f = (WmiNetUtilsHelper.VerifyClientKey)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.VerifyClientKey));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetQualifierSet");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetQualifierSet_f = (WmiNetUtilsHelper.GetQualifierSet)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetQualifierSet));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "Get");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.Get_f = (WmiNetUtilsHelper.Get)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.Get));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "Put");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.Put_f = (WmiNetUtilsHelper.Put)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.Put));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "Delete");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.Delete_f = (WmiNetUtilsHelper.Delete)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.Delete));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetNames");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetNames_f = (WmiNetUtilsHelper.GetNames)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetNames));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "BeginEnumeration");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.BeginEnumeration_f = (WmiNetUtilsHelper.BeginEnumeration)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.BeginEnumeration));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "Next");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.Next_f = (WmiNetUtilsHelper.Next)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.Next));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "EndEnumeration");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.EndEnumeration_f = (WmiNetUtilsHelper.EndEnumeration)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.EndEnumeration));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetPropertyQualifierSet");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetPropertyQualifierSet_f = (WmiNetUtilsHelper.GetPropertyQualifierSet)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetPropertyQualifierSet));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "Clone");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.Clone_f = (WmiNetUtilsHelper.Clone)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.Clone));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetObjectText");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetObjectText_f = (WmiNetUtilsHelper.GetObjectText)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetObjectText));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "SpawnDerivedClass");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.SpawnDerivedClass_f = (WmiNetUtilsHelper.SpawnDerivedClass)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.SpawnDerivedClass));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "SpawnInstance");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.SpawnInstance_f = (WmiNetUtilsHelper.SpawnInstance)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.SpawnInstance));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "CompareTo");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.CompareTo_f = (WmiNetUtilsHelper.CompareTo)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.CompareTo));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetPropertyOrigin");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetPropertyOrigin_f = (WmiNetUtilsHelper.GetPropertyOrigin)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetPropertyOrigin));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "InheritsFrom");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.InheritsFrom_f = (WmiNetUtilsHelper.InheritsFrom)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.InheritsFrom));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetMethod");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetMethod_f = (WmiNetUtilsHelper.GetMethod)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetMethod));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "PutMethod");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.PutMethod_f = (WmiNetUtilsHelper.PutMethod)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.PutMethod));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "DeleteMethod");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.DeleteMethod_f = (WmiNetUtilsHelper.DeleteMethod)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.DeleteMethod));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "BeginMethodEnumeration");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.BeginMethodEnumeration_f = (WmiNetUtilsHelper.BeginMethodEnumeration)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.BeginMethodEnumeration));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "NextMethod");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.NextMethod_f = (WmiNetUtilsHelper.NextMethod)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.NextMethod));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "EndMethodEnumeration");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.EndMethodEnumeration_f = (WmiNetUtilsHelper.EndMethodEnumeration)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.EndMethodEnumeration));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetMethodQualifierSet");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetMethodQualifierSet_f = (WmiNetUtilsHelper.GetMethodQualifierSet)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetMethodQualifierSet));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetMethodOrigin");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetMethodOrigin_f = (WmiNetUtilsHelper.GetMethodOrigin)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetMethodOrigin));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_Get");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierGet_f = (WmiNetUtilsHelper.QualifierSet_Get)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_Get));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_Put");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierPut_f = (WmiNetUtilsHelper.QualifierSet_Put)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_Put));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_Delete");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierDelete_f = (WmiNetUtilsHelper.QualifierSet_Delete)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_Delete));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_GetNames");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierGetNames_f = (WmiNetUtilsHelper.QualifierSet_GetNames)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_GetNames));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_BeginEnumeration");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierBeginEnumeration_f = (WmiNetUtilsHelper.QualifierSet_BeginEnumeration)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_BeginEnumeration));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_Next");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierNext_f = (WmiNetUtilsHelper.QualifierSet_Next)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_Next));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "QualifierSet_EndEnumeration");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.QualifierEndEnumeration_f = (WmiNetUtilsHelper.QualifierSet_EndEnumeration)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.QualifierSet_EndEnumeration));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetCurrentApartmentType");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetCurrentApartmentType_f = (WmiNetUtilsHelper.GetCurrentApartmentType)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetCurrentApartmentType));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "GetDemultiplexedStub");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.GetDemultiplexedStub_f = (WmiNetUtilsHelper.GetDemultiplexedStub)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.GetDemultiplexedStub));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "CreateInstanceEnumWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.CreateInstanceEnumWmi_f = (WmiNetUtilsHelper.CreateInstanceEnumWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.CreateInstanceEnumWmi));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "CreateClassEnumWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.CreateClassEnumWmi_f = (WmiNetUtilsHelper.CreateClassEnumWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.CreateClassEnumWmi));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "ExecQueryWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.ExecQueryWmi_f = (WmiNetUtilsHelper.ExecQueryWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.ExecQueryWmi));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "ExecNotificationQueryWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.ExecNotificationQueryWmi_f = (WmiNetUtilsHelper.ExecNotificationQueryWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.ExecNotificationQueryWmi));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "PutInstanceWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.PutInstanceWmi_f = (WmiNetUtilsHelper.PutInstanceWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.PutInstanceWmi));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "PutClassWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.PutClassWmi_f = (WmiNetUtilsHelper.PutClassWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.PutClassWmi));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "CloneEnumWbemClassObject");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.CloneEnumWbemClassObject_f = (WmiNetUtilsHelper.CloneEnumWbemClassObject)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.CloneEnumWbemClassObject));
                    }
                    procAddress = WmiNetUtilsHelper.GetProcAddress(intPtr, "ConnectServerWmi");
                    if (procAddress != IntPtr.Zero)
                    {
                        WmiNetUtilsHelper.ConnectServerWmi_f = (WmiNetUtilsHelper.ConnectServerWmi)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(WmiNetUtilsHelper.ConnectServerWmi));
                    }
                }
            }
        }