Job file

Windows specific forum
Sparkie
PureBatMan Forever
PureBatMan Forever
Posts: 2307
Joined: Tue Feb 10, 2004 3:07 am
Location: Ohio, USA

Post by Sparkie »

This does not create a .job file but it does create a new task. I have not had any success using NetScheduleJobAdd_() but I have had success with using AT commands. This code will set a task to start Windows Calculator in ~1 minute from runtime. Also, Task Scheduler must be running for this to work and I don't know of anyway of getting around that. If a user doesn't want Task Scheduler enabled, we should honor and respect that in our code. ;)

Code: Select all

; For more info...
; http://support.microsoft.com/kb/313565
; This adds a task to run Windows Calculator one time only within the next minute
; Allow extra processing time if clock time is about to change to the next minute
; otherwise the task will wait 24 hours
If Second(Date()) > 55
  runtime$ = FormatDate("%hh:%ii", AddDate(Date(), #PB_Date_Minute, 2))
Else
  runtime$ = FormatDate("%hh:%ii", AddDate(Date(), #PB_Date_Minute, 1))
EndIf
runProg = RunProgram("cmd", "/c at " + runtime$ + " /interactive calc.exe", "", #PB_Program_Hide | #PB_Program_Open)
result = WaitProgram(runProg)
If ProgramExitCode(runProg) <> 0
  MessageRequester("Error", "Unable to process command." + #crlf$ + "Check to make sure Task Scheduler is running.", #MB_OK | #MB_ICONERROR)
Else
  MessageRequester("Success", "New task has been set to run at " + runtime$, #MB_OK | #MB_ICONINFORMATION)
EndIf
CloseProgram(runProg)
What goes around comes around.

PB 5.21 LTS (x86) - Windows 8.1
User avatar
Kaeru Gaman
Addict
Addict
Posts: 4826
Joined: Sun Mar 19, 2006 1:57 pm
Location: Germany

Post by Kaeru Gaman »

Sparkie wrote:Also, Task Scheduler must be running for this to work and I don't know of anyway of getting around that.
I think there is no way to do without, because there must be an Application
that checks for scheduled tasks and start them when their time has come.
it is no native function of the OS.
ok, so read that what you find behind the Links.
when you've learned how a JOB-file is constructed and where it has to be placed
and wich apps must be running etc etc
you could write an editor/creator in PB that creates JOB files using the File commands
and places it in the right place to have it run at proper time.
oh... and have a nice day.
oridan
Enthusiast
Enthusiast
Posts: 128
Joined: Tue Oct 12, 2004 12:14 am
Location: Italy
Contact:

Post by oridan »

Sparkie wrote:This does not create a .job file but it does create a new task. I have not had any success using NetScheduleJobAdd_() but I have had success with using AT commands. This code will set a task to start Windows Calculator in ~1 minute from runtime. Also, Task Scheduler must be running for this to work and I don't know of anyway of getting around that. If a user doesn't want Task Scheduler enabled, we should honor and respect that in our code. ;)

Code: Select all

; For more info...
; http://support.microsoft.com/kb/313565
; This adds a task to run Windows Calculator one time only within the next minute
; Allow extra processing time if clock time is about to change to the next minute
; otherwise the task will wait 24 hours
If Second(Date()) > 55
  runtime$ = FormatDate("%hh:%ii", AddDate(Date(), #PB_Date_Minute, 2))
Else
  runtime$ = FormatDate("%hh:%ii", AddDate(Date(), #PB_Date_Minute, 1))
EndIf
runProg = RunProgram("cmd", "/c at " + runtime$ + " /interactive calc.exe", "", #PB_Program_Hide | #PB_Program_Open)
result = WaitProgram(runProg)
If ProgramExitCode(runProg) <> 0
  MessageRequester("Error", "Unable to process command." + #crlf$ + "Check to make sure Task Scheduler is running.", #MB_OK | #MB_ICONERROR)
Else
  MessageRequester("Success", "New task has been set to run at " + runtime$, #MB_OK | #MB_ICONINFORMATION)
EndIf
CloseProgram(runProg)
Thanks Sparkie, you found to alternatives good and works perfectly,
and this you code creates a true file job in the folder \WINDOWS\TASKS.

Thanks very much. :D
Sparkie
PureBatMan Forever
PureBatMan Forever
Posts: 2307
Joined: Tue Feb 10, 2004 3:07 am
Location: Ohio, USA

Post by Sparkie »

You're welcome oridan :)
What goes around comes around.

PB 5.21 LTS (x86) - Windows 8.1
Post Reply