Hello,
Trying to update an app from the old version of VCL Scheduling Agent to version 2.0.7.
We use code VERY similar to the sample TTaskWizard.pas.
In the TNewTaskWizard.GoForward procedure when we get to these lines:
Trigger.Details := TriggerDetails;
FTask.Triggers.UpdateTriggers;
The program errors with an "Interface Not Supported" message when we call the "FTask.Triggers.UpdateTriggers" line. After that error dialog the program quits.
I cannot see any difference in code between the sample and our program.
It does not matter what type of task we create, it always fails at the same spot.
Any ideas why the sample program works and ours would error?
Interface not supported error
Followup
I have tracked the specific error to this line (and the similar line in all the SetTrigger procedures) in the saTask.pas file:
iWeek := FInterfaceVista as IWeeklyTrigger;
I still have no idea why this works in the Demo app and not our app.
iWeek := FInterfaceVista as IWeeklyTrigger;
I still have no idea why this works in the Demo app and not our app.
Figured out issue
OK,
I finally figured out the problem.
Our old program did not specifically set the UseTaskScheduler1Only variable to TRUE and because of that we were trying to update tasks with Vista style tasks when the tasks were not originally set up to be that style.
Setting this variable to TRUE causes the code to execute on the old path in the UpdateTriggers event instead of the new Vista style tasks.
I finally figured out the problem.
Our old program did not specifically set the UseTaskScheduler1Only variable to TRUE and because of that we were trying to update tasks with Vista style tasks when the tasks were not originally set up to be that style.
Setting this variable to TRUE causes the code to execute on the old path in the UpdateTriggers event instead of the new Vista style tasks.