Vb.net 根据计算机时间打开WinForm

Vb.net 根据计算机时间打开WinForm,vb.net,visual-studio-2005,Vb.net,Visual Studio 2005,我有一个项目为我的客户工作,现在我正在努力使我的许可证系统更先进,我想添加一个签入软件。 问题是,当我的客户在使用我的软件时,我希望计算机时钟显示一些时间(例如12:00)我想打开一个WinForms来检查用户拥有的在线许可证。 我认为这可能很容易做到,但由于我不想在代码中使用计时器,使我的软件工作得更慢,我现在在自己的代码中加入了一个堆栈 这就是我现在尝试的: Dim day As String = Format(Today, "dddd") Dim time As Date

我有一个项目为我的客户工作,现在我正在努力使我的许可证系统更先进,我想添加一个签入软件。
问题是,当我的客户在使用我的软件时,我希望计算机时钟显示一些时间
(例如12:00)
我想打开一个
WinForms
来检查用户拥有的在线许可证。
我认为这可能很容易做到,但由于我不想在代码中使用
计时器
,使我的软件工作得更慢,我现在在自己的代码中加入了一个堆栈

这就是我现在尝试的:

    Dim day As String = Format(Today, "dddd")
    Dim time As Date
    Dim CurrHour As Integer
    Dim CurrMinute As Integer
    Dim CurrSecond As Integer
    time = My.Computer.Clock.LocalTime 'Ive tried to use DateTime.Now here
    CurrHour = time.Hour ' Get current hour value
    CurrMinute = time.Minute ' Get current minute value
    CurrSecond = time.Second ' Get current second value
    If CurrHour = 12 AndAlso CurrMinute = 0 AndAlso CurrSecond = 30 Then
        MsgBox("12 hours 0 minutes 30 seconds")
    Else
        Exit Sub
    End If
End Sub

除了使用计时器,还有其他方法吗?勾选使其工作吗?

为什么不使用计时器?您可以将时间间隔设置为几个小时,并且它只会滴答一次


当一个时间间隔应该没有问题时()

你需要定时器来完成这项工作,如果你担心你的应用程序会变慢,那么将其作为独立服务来检查许可证。此外,当您使用该服务时,您不需要您的应用程序在那个时候工作,因为如果它关闭,它将不会滴答作响。抱歉,但您的回答无助于他想要一种不使用计时器的方法,并且您用
德语提供参考,当然他应该使用计时器。不使用一个是愚蠢的,就像否决这个完美的答案一样愚蠢。为一个简单的计时器所能做的事情使用一个单独的服务(我认为只有一次滴答声的计时器没有性能问题)就像拿一把大锤敲开一颗坚果。谢谢你修复链接,汉斯:)嗯,我正在考虑将计时器间隔设置为每30分钟或1小时一次。但我当时认为,由于计时器是活动的(但没有滴答声),他也将采取更多的资源。。。好像我犯了个错误@谢谢你的推荐。