Адаптирано от статия, която написах на aspfaq.com преди години.
Използвайте командата AT и Windows Scripting Host (или по-елементарния планировчик на задачи), за да планирате VBS файл на определени интервали.
Първо променете ASP на VBS файл. Това се постига чрез (1) промяна на разширението към VBS; (2) промяна на всички извиквания на Server.CreateObject на CreateObject; и (3) премахване на всички <%%>
разделители и всеки код, предназначен за браузъра (например оператор response.write или HTML от страна на клиента). Не попаднах на допълнителни усложнения, но YMMV.
Вие съхранявате VBS файла във файловата система и използвате командата AT, за да го планирате (това всъщност планира неговото изпълнение с услугата за график на Windows). В командния ред можете да използвате AT самостоятелно, за да видите списък със задачи, които в момента са в графика. Можете да използвате AT /? за да разберете всичките му синтактични възможности.
Например, за да накарам файл да се изпълнява всеки делничен ден в 9:00 сутринта, стартирам този пакетен файл (първият ред изчиства съществуващите записи):
at /delete /y
at 9:00 /every:m,t,w,th,f d:\net\shared\getdata.vbs
Забележете, че не е включен уеб сървър; файлът е достъпен директно през файловата система. След като преодолех препятствията „потребителят трябва да е влязъл“ и „задачите трябва да се нулират при рестартиране“ (и двете според мен са проблеми с конкретната машина, която не е под наш контрол), всичко започна добре за мен.
За пример за използване на WSH, CDONTS и Task Scheduler за редовно изпращане на имейли вижте KB #221495 .
Ако всичко, което правите, е работа с база данни в SQL Server, може да обмислите използването на работа. Това ще ви позволи да запазите цялата обработка на заданието във вашата база данни и да предотвратите усложненията, свързани с множество системи, връзки и адаптиране на ASP кода, за да бъде различно от ASP като поведение.