现在,许多C/S型的应用程序都要求客户机与服务器时间同步,大多数程序员用存储过程来解决这一问题,但存储过程编写起来有一定的难度。我在摸索中找到了一种方法,可以很好的解决这个问题。
Windows XP/2000中有一个命令:nettime。这个命令是用来读取服务器的时间,将客户机的系统时间设置为服务器的时间。以后当我们需要调用服务器时间的时候,可以直接读取本地时间,而读取本地时间对我们来说是很容易的。这样一来,问题就解决了。我们在程序启动前,使用shell函数加载net time命令,本地时间就和服务器时间一致了,而读取本地时间是很容易的。
Private Sub Form Load()
Dim tx As Integer
tx = Shell("net time dpca30517 /set /y", vb-Hide)
If tx=0Then
MsgBox”时间同步不成功", vb( "C ritical+vbOKOnly,"时间同步"
Else
MsgBox ”时间同步成功",vbInformation+vbOKOnly, ”时间同步”
End If
End Sub
其中dpea30517为服务器的名称,以上程序在WinXP+VB6.0中运行通过。