最简单的方法:创建一个任务,每天8点钟运行服务器本地的vbscript。你要自己做一个sendemail.aspx,或者console程序也不错(考虑到用到数据库,API等等,还是aspx比较好)。Const TaskURL = "http://localhost/sendemail.aspx" Const LogFileName = "Log.txt"Dim Http Private Function GetURL(URL) 'Create Http object If IsEmpty(Http) Then Set Http = CreateObject("WinHttp.WinHttpRequest.5.1") 'Send request To URL Http.Open "GET", URL Http.Send 'Get response data As a string GetURL = Http.ResponseText End FunctionPrivate Sub AppendFile(FileName, Content) Const OPEN_FILE_FOR_APPENDING = 8 Set fso = CreateObject("Scripting.FileSystemObject") Set TextFile = fso.OpenTextFile(FileName, OPEN_FILE_FOR_APPENDING, True) TextFile.Write(Content) TextFile.Close Set FileSystem = Nothing End Sub Content = GetURL(TaskURL) AppendFile LogFileName, Content 'WScript.StdOut.WriteLine ("Appended response from " & DailyTaskURL & " to " & LogFileName)最好有个Log,知道做了些什么。跑了一年多都没有问题。
Google随便找的
===》
不需要总是判断也可以实现的。
在应用程序启动的时候,初始化一个Timer,(8点钟 - 现在时间) 开始到计时,到点时触发事件,在回调里发送邮件。
然后重新设置Timer,开始24小时到计时,在事件回调中发送邮件。
Const LogFileName = "Log.txt"Dim Http
Private Function GetURL(URL)
'Create Http object
If IsEmpty(Http) Then Set Http = CreateObject("WinHttp.WinHttpRequest.5.1")
'Send request To URL
Http.Open "GET", URL
Http.Send
'Get response data As a string
GetURL = Http.ResponseText
End FunctionPrivate Sub AppendFile(FileName, Content)
Const OPEN_FILE_FOR_APPENDING = 8
Set fso = CreateObject("Scripting.FileSystemObject")
Set TextFile = fso.OpenTextFile(FileName, OPEN_FILE_FOR_APPENDING, True)
TextFile.Write(Content)
TextFile.Close
Set FileSystem = Nothing
End Sub
Content = GetURL(TaskURL)
AppendFile LogFileName, Content
'WScript.StdOut.WriteLine ("Appended response from " & DailyTaskURL & " to " & LogFileName)最好有个Log,知道做了些什么。跑了一年多都没有问题。