Example #1
0
        internal void CheckConsistencyHelper(IntPtr dsHandle, LoadLibrarySafeHandle libHandle)
        {
            // call DsReplicaConsistencyCheck
            IntPtr functionPtr = UnsafeNativeMethods.GetProcAddress(libHandle, "DsReplicaConsistencyCheck");

            if (functionPtr == (IntPtr)0)
            {
                throw ExceptionHelper.GetExceptionFromErrorCode(Marshal.GetLastWin32Error());
            }
            UnsafeNativeMethods.DsReplicaConsistencyCheck replicaConsistencyCheck = (UnsafeNativeMethods.DsReplicaConsistencyCheck)Marshal.GetDelegateForFunctionPointer(functionPtr, typeof(UnsafeNativeMethods.DsReplicaConsistencyCheck));

            int result = replicaConsistencyCheck(dsHandle, 0, 0);

            if (result != 0)
            {
                throw ExceptionHelper.GetExceptionFromErrorCode(result, Name);
            }
        }
Example #2
0
        internal void CheckConsistencyHelper(IntPtr dsHandle, LoadLibrarySafeHandle libHandle)
        {
            IntPtr procAddress = UnsafeNativeMethods.GetProcAddress(libHandle, "DsReplicaConsistencyCheck");

            if (procAddress != (IntPtr)0)
            {
                UnsafeNativeMethods.DsReplicaConsistencyCheck delegateForFunctionPointer = (UnsafeNativeMethods.DsReplicaConsistencyCheck)Marshal.GetDelegateForFunctionPointer(procAddress, typeof(UnsafeNativeMethods.DsReplicaConsistencyCheck));
                int num = delegateForFunctionPointer(dsHandle, 0, 0);
                if (num == 0)
                {
                    return;
                }
                else
                {
                    throw ExceptionHelper.GetExceptionFromErrorCode(num, this.Name);
                }
            }
            else
            {
                throw ExceptionHelper.GetExceptionFromErrorCode(Marshal.GetLastWin32Error());
            }
        }