public uint GetDomainController( string domainFQDN, out string domainControllerFQDN ) { domainControllerFQDN = null; uint error = 0; try { Logger.Log(String.Format("GetDomainController({0}) called", domainFQDN), Logger.NetlogonLogLevel); error = NetlogonAPI.LWNetGetDomainController( domainFQDN, out domainControllerFQDN); Logger.Log(String.Format("GetDomainController() returned {0}, error={1}", domainControllerFQDN, error), Logger.NetlogonLogLevel); } catch (Exception e) { Logger.LogException("Netlogon.GetDomainController", e); if (error == 0) { error = CNetlogon.Definitions.LWNET_ERROR_INTEROP_EXCEPTION; } } return(error); }
public uint GetDCName( string domainFQDN, uint flags, out CNetlogon.LWNET_DC_INFO DCInfo ) { CNetlogon.LWNET_DC_INFO info = new CNetlogon.LWNET_DC_INFO(); DCInfo = info; IntPtr pDCInfo = IntPtr.Zero; uint error = 0; try { Logger.Log(String.Format("GetDCName({0}, {1}) called", domainFQDN, flags), Logger.NetlogonLogLevel); error = NetlogonAPI.LWNetGetDCName( null, domainFQDN, null, flags, out pDCInfo); DCInfo = (CNetlogon.LWNET_DC_INFO)Marshal.PtrToStructure(pDCInfo, typeof(CNetlogon.LWNET_DC_INFO)); Logger.Log(String.Format("GetDCName() returned {0}, error={1}", CNetlogon.LWNETDCInfoToString(DCInfo), error), Logger.NetlogonLogLevel); } catch (Exception e) { Logger.LogException("Netlogon.GetDCName", e); if (error == 0) { error = CNetlogon.Definitions.LWNET_ERROR_INTEROP_EXCEPTION; } } return(error); }
public uint GetDCTime( string domainFQDN, out DateTime DCTime ) { DCTime = new DateTime(); uint error = 0; NetlogonAPI.POSIX_TIME posixDCTime = new NetlogonAPI.POSIX_TIME(); try { Logger.Log(String.Format("GetDCTime({0}) called", domainFQDN), Logger.NetlogonLogLevel); error = NetlogonAPI.LWNetGetDCTime( domainFQDN, out posixDCTime); DCTime = PosixTimeToDateTime(posixDCTime); Logger.Log(String.Format("GetDCTime() returned {0}, error={1}", DCTime, error), Logger.NetlogonLogLevel); } catch (Exception e) { Logger.LogException("Netlogon.GetDCTime", e); if (error == 0) { error = CNetlogon.Definitions.LWNET_ERROR_INTEROP_EXCEPTION; } } return(error); }