在做项目时用datalogic手持终端设备遇到一个问题,系统冷启动或断电后再启动这时系统的时间会还原掉,当然重新设置系统时间这是没问题的,但就是有点麻烦,每次都要设置,如果我们限制手持机的使用功能,比如说锁住桌面不让用户做其它操作,这时用户根本就没办法手动设置系统时间,那能不能能过代码获取远程服务器时间来设置本地时间呢?可通过API来修改系统的时间,代码如下:
1.
声明代码
//imports SetLocalTime function from kernel32.dll
[DllImport("coredll.dll", SetLastError = true)]
public static extern int SetLocalTime(ref SystemTime lpSystemTime);
//struct for date/time apis
public struct SystemTime
{
public short wYear;
public short wMonth;
public short wDayOfWeek;
public short wDay;
public short wHour;
public short wMinute;
public short wSecond;
public short wMilliseconds;
}
2.
调用代码示例:
try
{
// 通过WebService获取服务器时间
SCM.SOAPService soap = new SCM.SOAPService();
DateTime remoteTime = soap.getSystemTime();
// 给结构体赋值
SystemTime newTime = new SystemTime();
newTime.wYear = (short)remoteTime.Year;
newTime.wMonth = (short)remoteTime.Month;
newTime.wDay = (short)remoteTime.Day;
newTime.wHour = (short)remoteTime.Hour;
newTime.wMinute = (short)remoteTime.Minute;
newTime.wSecond = (short)remoteTime.Second;
newTime.wMilliseconds = (short)remoteTime.Millisecond;
newTime.wDayOfWeek = (short)remoteTime.DayOfWeek;
// 设置本地时间
SetLocalTime(ref newTime);
}
catch
{
MessageBox.Show("获取服务器时间设置本地时间失败!", "错误提示",MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1);
}
分享到:
相关推荐
在Windows CE(WinCE)操作系统上,开发一个应用程序来联网获取服务器时间并更新本地时间是一项常见但重要的任务,尤其在需要精确时间同步的系统中。本文将深入探讨这个过程涉及的关键知识点,包括WinCE的网络编程、...
总的来说,WinCE 6.0 VNC远程桌面工具是设备远程管理和维护的有效手段,通过RealVNC客户端,用户可以方便地对运行WinCE系统的设备进行远程控制和故障排查,极大地提高了工作效率。正确配置和使用VNC,能够在保障安全...
总的来说,"wince ftp服务器操作"涉及了嵌入式系统的网络编程、FTP协议的理解、C#编程以及DLL封装和跨语言调用。开发者需要对这些技术有深入理解,才能在Wince这样的受限环境中构建稳定且高效的FTP客户端。
文件下载则是从FTP服务器获取文件到本地,过程与上传类似,只是方向相反。封装成DLL后,开发者可以通过调用相应的API,轻松实现这些功能,无需关心底层的网络通信细节。 INI文件是Windows系统中常见的配置文件格式...
2. **下载**:用户可以从服务器下载文件至本地设备,这在需要获取远程服务器上的信息或者更新软件时尤其方便。 3. **删除**:允许用户直接在FTP服务器上删除文件,简化了远程文件管理的过程。 尽管这款FTP客户端不...
本示例将介绍如何在WINCE系统中利用C++编程语言实现FTP的基本功能,包括连接服务器、上传文件以及下载文件。 首先,我们需要了解FTP协议的基础知识。FTP是一种用于在网络上进行文件传输的应用层协议,它允许用户从...
3. **网络通信**:使用`System.Net`命名空间中的类如`WebClient`或`HttpWebRequest`来获取远程服务器上的更新信息。例如,可以发送HTTP GET请求到一个包含最新版本信息的JSON或XML文件。 4. **版本检测**:比较本地...
- 在WinCE上,你可以开发服务器应用程序来接收并处理来自多个客户端的请求,也可以创建客户端应用连接到远程服务器获取或发送数据。 综上所述,WinCE Socket编程涉及网络通信的基本原理、API调用、异常处理、多...
Socket通信允许WinCE设备与其他设备(如服务器或另一台WinCE设备)进行双向数据传输,常用于远程控制、数据同步、设备监控等场景。 **二、EVC环境设置** EVC是微软为开发Windows CE应用程序提供的集成开发环境。...
在Windows CE(简称WinCE)环境下进行UDP通信是嵌入式开发中的常见任务,尤其是在构建设备与PC之间的网络通信系统时。"UdpCom"很可能是一个实现这一功能的项目或库,用于帮助开发者在WinCE设备上实现UDP通信,并与PC...
通信模块确保了电子手簿与远程服务器的连接,实现数据的实时上传。这可能包括GPRS、蓝牙、Wi-Fi等多种通信方式,以适应不同的环境条件。数据传输的安全性也是设计重点,通常会采用加密技术保障数据的隐私。 华嵌...
- **功能**: 查询DNS服务器,获取域名对应的IP地址等信息。 - **用法**: 在命令提示符下输入`nslookup`并按需查询。 #### 25. Ntbackup - 系统备份工具 - **功能**: 备份和恢复Windows系统文件。 - **注意**: 随着...
8. **发送数据**:使用`sendto()`函数将数据发送到远程服务器。提供套接字、缓冲区指针、缓冲区长度和服务器地址信息。 9. **接收数据**:使用`recvfrom()`函数接收来自服务器的数据。它会返回接收到的数据量,并...
这包括但不限于连接远程服务器、发送和接收数据、处理错误和异常等。 5. 调试:虚拟网卡的另一个优点是便于调试。开发者可以使用各种网络诊断工具(如Wireshark)监控模拟器的网络流量,帮助找出潜在的问题和性能...
【基于ARM11的热力站远程水质监控系统设计】主要涉及了以下几个核心知识点: 1. **ARM处理器**:ARM11是ARM公司推出的一种32位微处理器内核,适用于嵌入式系统设计。在本文中,Tiny6410是基于ARM11系列的嵌入式...
端口转发可以在本地和远程系统之间创建安全的数据隧道,而X11转发则允许在本地显示远程服务器的图形界面。 8. **安全性**:虽然PuTTY本身是安全的,但用户仍需注意网络环境的安全。例如,避免在公共网络上使用未...
由于Wince是一个实时操作系统,开发者还需要关注系统的响应时间和内存效率。 通过模拟器,你可以模拟实际硬件的行为,进行编译、调试和测试。在调试过程中,可以使用`printf`语句或其他日志记录功能来追踪代码执行...
在基于arm架构的s3c6410处理器上实现UDP通信,是嵌入式系统开发中常见的任务,特别是在运行Windows Embedded CE 6.0(简称wince6.0)这样的实时操作系统上。 s3c6410是一款高性能的ARM11处理器,由Samsung公司设计...
`socket`函数创建一个套接字,`bind`将套接字绑定到本地端口,`connect`连接到远程服务器,然后使用`send`和`recv`进行数据发送和接收。 6. **关闭连接**: 当不再需要GPRS连接时,使用`RasHangUp`函数断开连接,...
这个嵌入式系统利用GPRS网络、SMTP和POP3协议以及串口通信技术,实现了远程监控、参数修改、系统自检报告获取、数据文件传输以及主控程序的远程更新。为了保证通信的可靠性,系统采用应答机制和数据校验规则,减少了...