我需要为我的应用程序设置一个到期日期(我知道它可以简单地被黑客入侵,但考虑到将要使用它的人,这真的不是问题或担心。我只需要每年到期)。我的代码似乎可以工作,但我想确保它适用于其他文化设置。我尝试将其转换为不变量,但尝试说它无法转换为日期类型时出错。这是我所拥有的:
Private Sub expcheck()
Try
Dim format As Date = #5/1/2013#
Dim edate As Date = format.ToString()
Dim daysleft As Integer = DateDiff(DateInterval.Day, Now, edate)
If Date.Now > edate Then
MsgBox("This program was valid up to " & edate & " and will now close")
Application.Exit()
End If
If daysleft < 30 Then
MsgBox("This program expires on " & edate & vbNewLine & "You have " & daysleft & " Days left." & vbNewLine & "Export your work before expiry.")
End If
Catch e As Exception
MsgBox(e.Message)
End Try
End Sub
这似乎可行,但我认为它可能会破坏其他文化设置(我尝试更改自己的设置/格式,但它仍然有效,但不知道为什么。这行得通吗?