MCPcopy Create free account
hub / github.com/codeyourweb/irma / InitTaskScheduler

Function InitTaskScheduler

windowstaskscheduler.go:64–88  ·  view source on GitHub ↗

InitTaskScheduler Initialize COM API & Task scheduler connect

()

Source from the content-addressed store, hash-verified

62
63// InitTaskScheduler Initialize COM API & Task scheduler connect
64func InitTaskScheduler() error {
65 var err error
66 if err = ole.CoInitializeEx(0, 0); err != nil {
67 return errors.New("Could not initialize Windows COM API")
68 }
69
70 // Create an ITaskService object
71 unknown, err = ole.CreateInstance(ole.NewGUID("{0f87369f-a4e5-4cfc-bd3e-73e6154572dd}"), nil)
72 if err != nil {
73 return errors.New("Could not initialize Task Scheduler")
74 }
75
76 // Convert IUnknown to IDispatch to get more functions like CallMethod()
77 ts, err = unknown.QueryInterface(ole.IID_IDispatch)
78 if err != nil {
79 return errors.New("Could not prepare Task Scheduler")
80 }
81
82 // Connect to the Task Scheduler
83 if _, err = ts.CallMethod("Connect", "", "", "", ""); err != nil {
84 return errors.New("Could not connect to Task Scheduler")
85 }
86
87 return nil
88}
89
90// UninitializeTaskScheduler Release Task Scheduler COM API
91func UninitializeTaskScheduler() {

Callers 1

GetTasksFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected