private void btnNTP_Click(object sender, EventArgs e) { // NTP基本操作 ntp_ = new NTPClient(ip_ntp_); tmrNTP.Enabled = true; btnNTP.Enabled = false; }
public static TimeSpan CheckTimeDelay() { NTPClient ntpClient = new NTPClient(Settings.Default.TimeServer); ntpClient.Connect(false); TimeSpan delay = TimeSyncHandler.Raw - ntpClient.TransmitTimestamp; return(delay); }
public void ConnectNTP(String ip, int port) { NTPClient client; try { client = new NTPClient(ip, port); client.Connect(false); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.Message); } }
private void tmrNTP_Tick(object sender, EventArgs e) { // NTP, 定时计算本地时钟偏差 try { ntp_.Connect(false); } catch (SocketException ex) { txtLog.AppendLine(ex.Message); tmrNTP.Enabled = false; btnNTP.Enabled = true; ntp_ = null; } }
private static void SyncTimeThread(object state) { NTPClient ntpClient = new NTPClient(Settings.Default.TimeServer); ntpClient.Connect(true); // When set to false systemtime will remains as it was. DS-Timer still works correct! m_Offset = DateTime.Now - ntpClient.TransmitTimestamp; if (SyncDone != null) { SyncDone.Invoke(null, EventArgs.Empty); } // TickCount Method //m_LastSync = ntpClient.TransmitTimestamp; //m_BaseTickCount = SystemTickCount; }
private void StartNTP(object s, EventArgs e) { TcpClient t; if (m_dicCurrentConnections.ContainsKey(Thread.CurrentThread.ManagedThreadId)) { m_dicCurrentConnections.TryGetValue(Thread.CurrentThread.ManagedThreadId, out t); string ip = t.Client.RemoteEndPoint.ToString().Split(":".ToCharArray()[0])[0]; NTPClient ntpClient = new NTPClient(ip, AirPlayHandler.NTP_PORT); ntpClient.Connect(false); } }
public static int Main(string[] args) { NTPClient client; try { client = new NTPClient(TimeServer, 10000, 2000); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.Message); return(-1); } var offsets = new List <long>(); for (int i = 0; i < 10; ++i) { try { client.Connect(false); if (i != 0) { offsets.Add(client.LocalClockOffset); } Console.WriteLine(i + " " + client.LocalClockOffset); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.Message); } if (i % 10 == 0 && offsets.Count > 0) { Console.WriteLine("Avg offset {0}ms from {1} records", 1.0 * offsets.Average() / TimeSpan.TicksPerMillisecond, offsets.Count); } } return(0); }
private static LoginTickets GetLoginTicket(Empresas empresa) { LoginTickets result = null; string ntpServer; NTPClient ntp; if (loginTicketsBL != null) { result = loginTicketsBL.GetCurrentLoginTicket(empresa); ntpServer = GeneralSettings.Instance.NTPServer; } if (result == null) { //Sincronización de reloj por NTP ntp = new NTPClient("time.afip.gov.ar"); ntp.Connect(true); XmlDocument xmlDocument; LoginTicketRequests loginTicketRequest; //Generacion del Ticket de Requerimiento de Acceso if (loginTicketRequestsBL != null) { loginTicketRequest = loginTicketRequestsBL.GenerateLoginTicket(empresa); xmlDocument = loginTicketRequestsBL.GenerateLoginTicketRequestXML(loginTicketRequest); } else { loginTicketRequest = new LoginTicketRequests(empresa); xmlDocument = GenerateLoginTicketRequestXML(loginTicketRequest); } // Conversion del XML a bytes StringWriter sw = new StringWriter(); xmlDocument.WriteTo(new XmlTextWriter(sw)); byte[] loginTicketRequestXml = new ASCIIEncoding().GetBytes(sw.ToString()); //Firma del Ticket de Requerimiento de Acceso X509Certificate2 certOrigen = GetSenderCertificate(empresa); byte[] loginTicketRequestCMS = Sign(loginTicketRequestXml, certOrigen); //Codificacion a base 64 //string loginTicketRequestBase64 = Convert.ToBase64String(encryptedTicket); string loginTicketRequestBase64 = Convert.ToBase64String(loginTicketRequestCMS); //Transmisión del Ticket de Requerimiento de Acceso al WSAA LoginCMSService loginService = new LoginCMSService(); ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate); string loginServiceResponse = loginService.loginCms(loginTicketRequestBase64); //Extracción del Ticket de Acceso devuelto por el WSAA XmlDocument loginTicketXml = new XmlDocument(); loginTicketXml.LoadXml(loginServiceResponse); if (loginTicketRequestsBL != null) { result = loginTicketsBL.GetLoginTicketFromXML(loginTicketXml, loginTicketRequest); } else { result = GetLoginTicketFromXML(loginTicketXml, null); } } return(result); }