!define GUIDTaskScheduler "{148BD52A-A2AB-11CE-B11F-00AA00530503}"
!define GUIDITaskScheduler "{148BD527-A2AB-11CE-B11F-00AA00530503}"
Function DeleteTask
!define DeleteTask "!insertmacro _DeleteTask"
!macro _DeleteTask _TASK _RESULT
Push ${_Task}
Call DeleteTask
Pop ${_RESULT}
!macroend
Exch $0
Push $1
Push $2
StrCpy $0 false
System::Call "ole32::CoCreateInstance(g'${GUIDTaskScheduler}',i0,i11,g '${GUIDITaskScheduler}',*i.r1)i.r2"
IntCmp $2 0 0 +4
System::Call '$1->7(w r0)i.r2'
IntCmp $2 0 0 +2
StrCpy $0 true
Pop $2
Pop $1
END:
Exch $0
FunctionEnd
${DeleteTask} "TaskName" $0
Pop $0
$ 0はtrueまたは1に設定する必要がありますが、falseです。タスクは削除されません。ITaskScheduler :: Deleteは失敗します
私はここで間違っていますか?
$ 2のエラーコードは何ですか? – Anders
エラーがスローされた場合、0と1に設定されているはずです。私はまだかなり新しいです。 –
私は退屈な 'schtasks cmdlineを使って問題を解決しました。しかし、これは私が何が間違っているかを考え出すまでは終わらない気になるでしょう。 –