Guest User

Untitled

a guest
Aug 13th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 31.86 KB | None | 0 0
  1. RIDL!{#[uuid(0x79184a66, 0x8664, 0x423f, 0x97, 0xf1, 0x63, 0x73, 0x56, 0xa5, 0xd8, 0x12)]
  2. interface ITaskFolderCollection(ITaskFolderCollectionVtbl): IDispatch(IDispatchVtbl) {
  3. fn get_Count(
  4. pCount: *mut i32,
  5. ) -> HRESULT,
  6. fn get_Item(
  7. index: VARIANT,
  8. ppFolder: *mut *mut ITaskFolder,
  9. ) -> HRESULT,
  10. fn get__NewEnum(
  11. ppEnum: *mut LPUNKNOWN,
  12. ) -> HRESULT,
  13. }}
  14.  
  15. RIDL!{#[uuid(0x8cfac062, 0xa080, 0x4c15, 0x9a, 0x88, 0xaa, 0x7c, 0x2a, 0xf8, 0x0d, 0xfc)]
  16. interface ITaskFolder(ITaskFolderVtbl): IDispatch(IDispatchVtbl) {
  17. fn get_Name(
  18. pName: *mut BSTR,
  19. ) -> HRESULT,
  20. fn get_Path(
  21. pPath: *mut BSTR,
  22. ) -> HRESULT,
  23. fn GetFolder(
  24. Path: BSTR,
  25. ppFolder: *mut *mut ITaskFolder,
  26. ) -> HRESULT,
  27. fn GetFolders(
  28. flags: i32,
  29. ppFolders: *mut *mut ITaskFolderCollection,
  30. ) -> HRESULT,
  31. fn CreateFolder(
  32. subFolderName: BSTR,
  33. sddl: VARIANT,
  34. ppFolder: *mut *mut ITaskFolder,
  35. ) -> HRESULT,
  36. fn DeleteFolder(
  37. subFolderName: BSTR,
  38. flags: i32,
  39. ) -> HRESULT,
  40. fn GetTask(
  41. Path: BSTR,
  42. ppTask: *mut *mut IRegisteredTask,
  43. ) -> HRESULT,
  44. fn GetTasks(
  45. flags: i32,
  46. ppTasks: *mut *mut IRegisteredTaskCollection,
  47. ) -> HRESULT,
  48. fn DeleteTask(
  49. Name: BSTR,
  50. flags: i32,
  51. ) -> HRESULT,
  52. fn RegisterTask(
  53. Path: BSTR,
  54. XmlText: BSTR,
  55. flags: i32,
  56. UserId: VARIANT,
  57. password: VARIANT,
  58. LogonType: _TASK_LOGON_TYPE,
  59. sddl: VARIANT,
  60. ppTask: *mut *mut IRegisteredTask,
  61. ) -> HRESULT,
  62. fn RegisterTaskDefinition(
  63. Path: BSTR,
  64. pDefinition: *const ITaskDefinition,
  65. flags: i32,
  66. UserId: VARIANT,
  67. password: VARIANT,
  68. LogonType: _TASK_LOGON_TYPE,
  69. sddl: VARIANT,
  70. ppTask: *mut *mut IRegisteredTask,
  71. ) -> HRESULT,
  72. fn GetSecurityDescriptor(
  73. securityInformation: i32,
  74. pSddl: *mut BSTR,
  75. ) -> HRESULT,
  76. fn SetSecurityDescriptor(
  77. sddl: BSTR,
  78. flags: i32,
  79. ) -> HRESULT,
  80. }}
  81.  
  82. RIDL!{#[uuid(0x9c86f320, 0xdee3, 0x4dd1, 0xb9, 0x72, 0xa3, 0x03, 0xf2, 0x6b, 0x06, 0x1e)]
  83. interface IRegisteredTask(IRegisteredTaskVtbl): IDispatch(IDispatchVtbl) {
  84. fn get_Name(
  85. pName: *mut BSTR,
  86. ) -> HRESULT,
  87. fn get_Path(
  88. pPath: *mut BSTR,
  89. ) -> HRESULT,
  90. fn get_State(
  91. pState: *mut _TASK_STATE,
  92. ) -> HRESULT,
  93. fn get_Enabled(
  94. pEnabled: *mut VARIANT_BOOL,
  95. ) -> HRESULT,
  96. fn put_Enabled(
  97. pEnabled: VARIANT_BOOL,
  98. ) -> HRESULT,
  99. fn Run(
  100. params: VARIANT,
  101. ppRunningTask: *mut *mut IRunningTask,
  102. ) -> HRESULT,
  103. fn RunEx(
  104. params: VARIANT,
  105. flags: i32,
  106. sessionID: i32,
  107. user: BSTR,
  108. ppRunningTask: *mut *mut IRunningTask,
  109. ) -> HRESULT,
  110. fn GetInstances(
  111. flags: i32,
  112. ppRunningTasks: *mut *mut IRunningTaskCollection,
  113. ) -> HRESULT,
  114. fn get_LastRunTime(
  115. pLastRunTime: *mut DATE,
  116. ) -> HRESULT,
  117. fn get_LastTaskResult(
  118. pLastTaskResult: *mut i32,
  119. ) -> HRESULT,
  120. fn get_NumberOfMissedRuns(
  121. pNumberOfMissedRuns: *mut i32,
  122. ) -> HRESULT,
  123. fn get_NextRunTime(
  124. pNextRunTime: *mut DATE,
  125. ) -> HRESULT,
  126. fn get_Definition(
  127. ppDefinition: *mut *mut ITaskDefinition,
  128. ) -> HRESULT,
  129. fn get_Xml(
  130. pXml: *mut BSTR,
  131. ) -> HRESULT,
  132. fn GetSecurityDescriptor(
  133. securityInformation: i32,
  134. pSddl: *mut BSTR,
  135. ) -> HRESULT,
  136. fn SetSecurityDescriptor(
  137. sddl: BSTR,
  138. flags: i32,
  139. ) -> HRESULT,
  140. fn Stop(
  141. flags: i32,
  142. ) -> HRESULT,
  143. fn GetRunTimes(
  144. pstStart: *const _SYSTEMTIME,
  145. pstEnd: *const _SYSTEMTIME,
  146. pCount: *mut u32,
  147. pRunTimes: *mut *mut _SYSTEMTIME,
  148. ) -> HRESULT,
  149. }}
  150.  
  151. ENUM!{enum _TASK_STATE {
  152. TASK_STATE_UNKNOWN = 0,
  153. TASK_STATE_DISABLED = 1,
  154. TASK_STATE_QUEUED = 2,
  155. TASK_STATE_READY = 3,
  156. TASK_STATE_RUNNING = 4,
  157. }}
  158.  
  159. RIDL!{#[uuid(0x653758fb, 0x7b9a, 0x4f1e, 0xa4, 0x71, 0xbe, 0xeb, 0x8e, 0x9b, 0x83, 0x4e)]
  160. interface IRunningTask(IRunningTaskVtbl): IDispatch(IDispatchVtbl) {
  161. fn get_Name(
  162. pName: *mut BSTR,
  163. ) -> HRESULT,
  164. fn get_InstanceGuid(
  165. pGuid: *mut BSTR,
  166. ) -> HRESULT,
  167. fn get_Path(
  168. pPath: *mut BSTR,
  169. ) -> HRESULT,
  170. fn get_State(
  171. pState: *mut _TASK_STATE,
  172. ) -> HRESULT,
  173. fn get_CurrentAction(
  174. pName: *mut BSTR,
  175. ) -> HRESULT,
  176. fn Stop(
  177. ) -> HRESULT,
  178. fn Refresh(
  179. ) -> HRESULT,
  180. fn get_EnginePID(
  181. pPID: *mut u32,
  182. ) -> HRESULT,
  183. }}
  184.  
  185. RIDL!{#[uuid(0x6a67614b, 0x6828, 0x4fec, 0xaa, 0x54, 0x6d, 0x52, 0xe8, 0xf1, 0xf2, 0xdb)]
  186. interface IRunningTaskCollection(IRunningTaskCollectionVtbl): IDispatch(IDispatchVtbl) {
  187. fn get_Count(
  188. pCount: *mut i32,
  189. ) -> HRESULT,
  190. fn get_Item(
  191. index: VARIANT,
  192. ppRunningTask: *mut *mut IRunningTask,
  193. ) -> HRESULT,
  194. fn get__NewEnum(
  195. ppEnum: *mut LPUNKNOWN,
  196. ) -> HRESULT,
  197. }}
  198.  
  199. RIDL!{#[uuid(0xf5bc8fc5, 0x536d, 0x4f77, 0xb8, 0x52, 0xfb, 0xc1, 0x35, 0x6f, 0xde, 0xb6)]
  200. interface ITaskDefinition(ITaskDefinitionVtbl): IDispatch(IDispatchVtbl) {
  201. fn get_RegistrationInfo(
  202. ppRegistrationInfo: *mut *mut IRegistrationInfo,
  203. ) -> HRESULT,
  204. fn put_RegistrationInfo(
  205. ppRegistrationInfo: *const IRegistrationInfo,
  206. ) -> HRESULT,
  207. fn get_Triggers(
  208. ppTriggers: *mut *mut ITriggerCollection,
  209. ) -> HRESULT,
  210. fn put_Triggers(
  211. ppTriggers: *const ITriggerCollection,
  212. ) -> HRESULT,
  213. fn get_Settings(
  214. ppSettings: *mut *mut ITaskSettings,
  215. ) -> HRESULT,
  216. fn put_Settings(
  217. ppSettings: *const ITaskSettings,
  218. ) -> HRESULT,
  219. fn get_Data(
  220. pData: *mut BSTR,
  221. ) -> HRESULT,
  222. fn put_Data(
  223. pData: BSTR,
  224. ) -> HRESULT,
  225. fn get_Principal(
  226. ppPrincipal: *mut *mut IPrincipal,
  227. ) -> HRESULT,
  228. fn put_Principal(
  229. ppPrincipal: *const IPrincipal,
  230. ) -> HRESULT,
  231. fn get_Actions(
  232. ppActions: *mut *mut IActionCollection,
  233. ) -> HRESULT,
  234. fn put_Actions(
  235. ppActions: *const IActionCollection,
  236. ) -> HRESULT,
  237. fn get_XmlText(
  238. pXml: *mut BSTR,
  239. ) -> HRESULT,
  240. fn put_XmlText(
  241. pXml: BSTR,
  242. ) -> HRESULT,
  243. }}
  244.  
  245. RIDL!{#[uuid(0x416d8b73, 0xcb41, 0x4ea1, 0x80, 0x5c, 0x9b, 0xe9, 0xa5, 0xac, 0x4a, 0x74)]
  246. interface IRegistrationInfo(IRegistrationInfoVtbl): IDispatch(IDispatchVtbl) {
  247. fn get_Description(
  248. pDescription: *mut BSTR,
  249. ) -> HRESULT,
  250. fn put_Description(
  251. pDescription: BSTR,
  252. ) -> HRESULT,
  253. fn get_Author(
  254. pAuthor: *mut BSTR,
  255. ) -> HRESULT,
  256. fn put_Author(
  257. pAuthor: BSTR,
  258. ) -> HRESULT,
  259. fn get_Version(
  260. pVersion: *mut BSTR,
  261. ) -> HRESULT,
  262. fn put_Version(
  263. pVersion: BSTR,
  264. ) -> HRESULT,
  265. fn get_Date(
  266. pDate: *mut BSTR,
  267. ) -> HRESULT,
  268. fn put_Date(
  269. pDate: BSTR,
  270. ) -> HRESULT,
  271. fn get_Documentation(
  272. pDocumentation: *mut BSTR,
  273. ) -> HRESULT,
  274. fn put_Documentation(
  275. pDocumentation: BSTR,
  276. ) -> HRESULT,
  277. fn get_XmlText(
  278. pText: *mut BSTR,
  279. ) -> HRESULT,
  280. fn put_XmlText(
  281. pText: BSTR,
  282. ) -> HRESULT,
  283. fn get_URI(
  284. pUri: *mut BSTR,
  285. ) -> HRESULT,
  286. fn put_URI(
  287. pUri: BSTR,
  288. ) -> HRESULT,
  289. fn get_SecurityDescriptor(
  290. pSddl: *mut VARIANT,
  291. ) -> HRESULT,
  292. fn put_SecurityDescriptor(
  293. pSddl: VARIANT,
  294. ) -> HRESULT,
  295. fn get_Source(
  296. pSource: *mut BSTR,
  297. ) -> HRESULT,
  298. fn put_Source(
  299. pSource: BSTR,
  300. ) -> HRESULT,
  301. }}
  302.  
  303. RIDL!{#[uuid(0x85df5081, 0x1b24, 0x4f32, 0x87, 0x8a, 0xd9, 0xd1, 0x4d, 0xf4, 0xcb, 0x77)]
  304. interface ITriggerCollection(ITriggerCollectionVtbl): IDispatch(IDispatchVtbl) {
  305. fn get_Count(
  306. pCount: *mut i32,
  307. ) -> HRESULT,
  308. fn get_Item(
  309. index: i32,
  310. ppTrigger: *mut *mut ITrigger,
  311. ) -> HRESULT,
  312. fn get__NewEnum(
  313. ppEnum: *mut LPUNKNOWN,
  314. ) -> HRESULT,
  315. fn Create(
  316. Type: _TASK_TRIGGER_TYPE2,
  317. ppTrigger: *mut *mut ITrigger,
  318. ) -> HRESULT,
  319. fn Remove(
  320. index: VARIANT,
  321. ) -> HRESULT,
  322. fn Clear(
  323. ) -> HRESULT,
  324. }}
  325.  
  326. RIDL!{#[uuid(0x09941815, 0xea89, 0x4b5b, 0x89, 0xe0, 0x2a, 0x77, 0x38, 0x01, 0xfa, 0xc3)]
  327. interface ITrigger(ITriggerVtbl): IDispatch(IDispatchVtbl) {
  328. fn get_Type(
  329. pType: *mut _TASK_TRIGGER_TYPE2,
  330. ) -> HRESULT,
  331. fn get_Id(
  332. pId: *mut BSTR,
  333. ) -> HRESULT,
  334. fn put_Id(
  335. pId: BSTR,
  336. ) -> HRESULT,
  337. fn get_Repetition(
  338. ppRepeat: *mut *mut IRepetitionPattern,
  339. ) -> HRESULT,
  340. fn put_Repetition(
  341. ppRepeat: *const IRepetitionPattern,
  342. ) -> HRESULT,
  343. fn get_ExecutionTimeLimit(
  344. pTimeLimit: *mut BSTR,
  345. ) -> HRESULT,
  346. fn put_ExecutionTimeLimit(
  347. pTimeLimit: BSTR,
  348. ) -> HRESULT,
  349. fn get_StartBoundary(
  350. pStart: *mut BSTR,
  351. ) -> HRESULT,
  352. fn put_StartBoundary(
  353. pStart: BSTR,
  354. ) -> HRESULT,
  355. fn get_EndBoundary(
  356. pEnd: *mut BSTR,
  357. ) -> HRESULT,
  358. fn put_EndBoundary(
  359. pEnd: BSTR,
  360. ) -> HRESULT,
  361. fn get_Enabled(
  362. pEnabled: *mut VARIANT_BOOL,
  363. ) -> HRESULT,
  364. fn put_Enabled(
  365. pEnabled: VARIANT_BOOL,
  366. ) -> HRESULT,
  367. }}
  368.  
  369. ENUM!{enum _TASK_TRIGGER_TYPE2 {
  370. TASK_TRIGGER_EVENT = 0,
  371. TASK_TRIGGER_TIME = 1,
  372. TASK_TRIGGER_DAILY = 2,
  373. TASK_TRIGGER_WEEKLY = 3,
  374. TASK_TRIGGER_MONTHLY = 4,
  375. TASK_TRIGGER_MONTHLYDOW = 5,
  376. TASK_TRIGGER_IDLE = 6,
  377. TASK_TRIGGER_REGISTRATION = 7,
  378. TASK_TRIGGER_BOOT = 8,
  379. TASK_TRIGGER_LOGON = 9,
  380. TASK_TRIGGER_SESSION_STATE_CHANGE = 11,
  381. }}
  382.  
  383. RIDL!{#[uuid(0x7fb9acf1, 0x26be, 0x400e, 0x85, 0xb5, 0x29, 0x4b, 0x9c, 0x75, 0xdf, 0xd6)]
  384. interface IRepetitionPattern(IRepetitionPatternVtbl): IDispatch(IDispatchVtbl) {
  385. fn get_Interval(
  386. pInterval: *mut BSTR,
  387. ) -> HRESULT,
  388. fn put_Interval(
  389. pInterval: BSTR,
  390. ) -> HRESULT,
  391. fn get_Duration(
  392. pDuration: *mut BSTR,
  393. ) -> HRESULT,
  394. fn put_Duration(
  395. pDuration: BSTR,
  396. ) -> HRESULT,
  397. fn get_StopAtDurationEnd(
  398. pStop: *mut VARIANT_BOOL,
  399. ) -> HRESULT,
  400. fn put_StopAtDurationEnd(
  401. pStop: VARIANT_BOOL,
  402. ) -> HRESULT,
  403. }}
  404.  
  405. RIDL!{#[uuid(0x8fd4711d, 0x2d02, 0x4c8c, 0x87, 0xe3, 0xef, 0xf6, 0x99, 0xde, 0x12, 0x7e)]
  406. interface ITaskSettings(ITaskSettingsVtbl): IDispatch(IDispatchVtbl) {
  407. fn get_AllowDemandStart(
  408. pAllowDemandStart: *mut VARIANT_BOOL,
  409. ) -> HRESULT,
  410. fn put_AllowDemandStart(
  411. pAllowDemandStart: VARIANT_BOOL,
  412. ) -> HRESULT,
  413. fn get_RestartInterval(
  414. pRestartInterval: *mut BSTR,
  415. ) -> HRESULT,
  416. fn put_RestartInterval(
  417. pRestartInterval: BSTR,
  418. ) -> HRESULT,
  419. fn get_RestartCount(
  420. pRestartCount: *mut INT,
  421. ) -> HRESULT,
  422. fn put_RestartCount(
  423. pRestartCount: INT,
  424. ) -> HRESULT,
  425. fn get_MultipleInstances(
  426. pPolicy: *mut _TASK_INSTANCES_POLICY,
  427. ) -> HRESULT,
  428. fn put_MultipleInstances(
  429. pPolicy: _TASK_INSTANCES_POLICY,
  430. ) -> HRESULT,
  431. fn get_StopIfGoingOnBatteries(
  432. pStopIfOnBatteries: *mut VARIANT_BOOL,
  433. ) -> HRESULT,
  434. fn put_StopIfGoingOnBatteries(
  435. pStopIfOnBatteries: VARIANT_BOOL,
  436. ) -> HRESULT,
  437. fn get_DisallowStartIfOnBatteries(
  438. pDisallowStart: *mut VARIANT_BOOL,
  439. ) -> HRESULT,
  440. fn put_DisallowStartIfOnBatteries(
  441. pDisallowStart: VARIANT_BOOL,
  442. ) -> HRESULT,
  443. fn get_AllowHardTerminate(
  444. pAllowHardTerminate: *mut VARIANT_BOOL,
  445. ) -> HRESULT,
  446. fn put_AllowHardTerminate(
  447. pAllowHardTerminate: VARIANT_BOOL,
  448. ) -> HRESULT,
  449. fn get_StartWhenAvailable(
  450. pStartWhenAvailable: *mut VARIANT_BOOL,
  451. ) -> HRESULT,
  452. fn put_StartWhenAvailable(
  453. pStartWhenAvailable: VARIANT_BOOL,
  454. ) -> HRESULT,
  455. fn get_XmlText(
  456. pText: *mut BSTR,
  457. ) -> HRESULT,
  458. fn put_XmlText(
  459. pText: BSTR,
  460. ) -> HRESULT,
  461. fn get_RunOnlyIfNetworkAvailable(
  462. pRunOnlyIfNetworkAvailable: *mut VARIANT_BOOL,
  463. ) -> HRESULT,
  464. fn put_RunOnlyIfNetworkAvailable(
  465. pRunOnlyIfNetworkAvailable: VARIANT_BOOL,
  466. ) -> HRESULT,
  467. fn get_ExecutionTimeLimit(
  468. pExecutionTimeLimit: *mut BSTR,
  469. ) -> HRESULT,
  470. fn put_ExecutionTimeLimit(
  471. pExecutionTimeLimit: BSTR,
  472. ) -> HRESULT,
  473. fn get_Enabled(
  474. pEnabled: *mut VARIANT_BOOL,
  475. ) -> HRESULT,
  476. fn put_Enabled(
  477. pEnabled: VARIANT_BOOL,
  478. ) -> HRESULT,
  479. fn get_DeleteExpiredTaskAfter(
  480. pExpirationDelay: *mut BSTR,
  481. ) -> HRESULT,
  482. fn put_DeleteExpiredTaskAfter(
  483. pExpirationDelay: BSTR,
  484. ) -> HRESULT,
  485. fn get_Priority(
  486. pPriority: *mut INT,
  487. ) -> HRESULT,
  488. fn put_Priority(
  489. pPriority: INT,
  490. ) -> HRESULT,
  491. fn get_Compatibility(
  492. pCompatLevel: *mut _TASK_COMPATIBILITY,
  493. ) -> HRESULT,
  494. fn put_Compatibility(
  495. pCompatLevel: _TASK_COMPATIBILITY,
  496. ) -> HRESULT,
  497. fn get_Hidden(
  498. pHidden: *mut VARIANT_BOOL,
  499. ) -> HRESULT,
  500. fn put_Hidden(
  501. pHidden: VARIANT_BOOL,
  502. ) -> HRESULT,
  503. fn get_IdleSettings(
  504. ppIdleSettings: *mut *mut IIdleSettings,
  505. ) -> HRESULT,
  506. fn put_IdleSettings(
  507. ppIdleSettings: *const IIdleSettings,
  508. ) -> HRESULT,
  509. fn get_RunOnlyIfIdle(
  510. pRunOnlyIfIdle: *mut VARIANT_BOOL,
  511. ) -> HRESULT,
  512. fn put_RunOnlyIfIdle(
  513. pRunOnlyIfIdle: VARIANT_BOOL,
  514. ) -> HRESULT,
  515. fn get_WakeToRun(
  516. pWake: *mut VARIANT_BOOL,
  517. ) -> HRESULT,
  518. fn put_WakeToRun(
  519. pWake: VARIANT_BOOL,
  520. ) -> HRESULT,
  521. fn get_NetworkSettings(
  522. ppNetworkSettings: *mut *mut INetworkSettings,
  523. ) -> HRESULT,
  524. fn put_NetworkSettings(
  525. ppNetworkSettings: *const INetworkSettings,
  526. ) -> HRESULT,
  527. }}
  528.  
  529. ENUM!{enum _TASK_INSTANCES_POLICY {
  530. TASK_INSTANCES_PARALLEL = 0,
  531. TASK_INSTANCES_QUEUE = 1,
  532. TASK_INSTANCES_IGNORE_NEW = 2,
  533. TASK_INSTANCES_STOP_EXISTING = 3,
  534. }}
  535.  
  536. ENUM!{enum _TASK_COMPATIBILITY {
  537. TASK_COMPATIBILITY_AT = 0,
  538. TASK_COMPATIBILITY_V1 = 1,
  539. TASK_COMPATIBILITY_V2 = 2,
  540. TASK_COMPATIBILITY_V2_1 = 3,
  541. }}
  542.  
  543. RIDL!{#[uuid(0x84594461, 0x0053, 0x4342, 0xa8, 0xfd, 0x08, 0x8f, 0xab, 0xf1, 0x1f, 0x32)]
  544. interface IIdleSettings(IIdleSettingsVtbl): IDispatch(IDispatchVtbl) {
  545. fn get_IdleDuration(
  546. pDelay: *mut BSTR,
  547. ) -> HRESULT,
  548. fn put_IdleDuration(
  549. pDelay: BSTR,
  550. ) -> HRESULT,
  551. fn get_WaitTimeout(
  552. pTimeout: *mut BSTR,
  553. ) -> HRESULT,
  554. fn put_WaitTimeout(
  555. pTimeout: BSTR,
  556. ) -> HRESULT,
  557. fn get_StopOnIdleEnd(
  558. pStop: *mut VARIANT_BOOL,
  559. ) -> HRESULT,
  560. fn put_StopOnIdleEnd(
  561. pStop: VARIANT_BOOL,
  562. ) -> HRESULT,
  563. fn get_RestartOnIdle(
  564. pRestart: *mut VARIANT_BOOL,
  565. ) -> HRESULT,
  566. fn put_RestartOnIdle(
  567. pRestart: VARIANT_BOOL,
  568. ) -> HRESULT,
  569. }}
  570.  
  571. RIDL!{#[uuid(0x9f7dea84, 0xc30b, 0x4245, 0x80, 0xb6, 0x00, 0xe9, 0xf6, 0x46, 0xf1, 0xb4)]
  572. interface INetworkSettings(INetworkSettingsVtbl): IDispatch(IDispatchVtbl) {
  573. fn get_Name(
  574. pName: *mut BSTR,
  575. ) -> HRESULT,
  576. fn put_Name(
  577. pName: BSTR,
  578. ) -> HRESULT,
  579. fn get_Id(
  580. pId: *mut BSTR,
  581. ) -> HRESULT,
  582. fn put_Id(
  583. pId: BSTR,
  584. ) -> HRESULT,
  585. }}
  586.  
  587. RIDL!{#[uuid(0xd98d51e5, 0xc9b4, 0x496a, 0xa9, 0xc1, 0x18, 0x98, 0x02, 0x61, 0xcf, 0x0f)]
  588. interface IPrincipal(IPrincipalVtbl): IDispatch(IDispatchVtbl) {
  589. fn get_Id(
  590. pId: *mut BSTR,
  591. ) -> HRESULT,
  592. fn put_Id(
  593. pId: BSTR,
  594. ) -> HRESULT,
  595. fn get_DisplayName(
  596. pName: *mut BSTR,
  597. ) -> HRESULT,
  598. fn put_DisplayName(
  599. pName: BSTR,
  600. ) -> HRESULT,
  601. fn get_UserId(
  602. pUser: *mut BSTR,
  603. ) -> HRESULT,
  604. fn put_UserId(
  605. pUser: BSTR,
  606. ) -> HRESULT,
  607. fn get_LogonType(
  608. pLogon: *mut _TASK_LOGON_TYPE,
  609. ) -> HRESULT,
  610. fn put_LogonType(
  611. pLogon: _TASK_LOGON_TYPE,
  612. ) -> HRESULT,
  613. fn get_GroupId(
  614. pGroup: *mut BSTR,
  615. ) -> HRESULT,
  616. fn put_GroupId(
  617. pGroup: BSTR,
  618. ) -> HRESULT,
  619. fn get_RunLevel(
  620. pRunLevel: *mut _TASK_RUNLEVEL,
  621. ) -> HRESULT,
  622. fn put_RunLevel(
  623. pRunLevel: _TASK_RUNLEVEL,
  624. ) -> HRESULT,
  625. }}
  626.  
  627. ENUM!{enum _TASK_LOGON_TYPE {
  628. TASK_LOGON_NONE = 0,
  629. TASK_LOGON_PASSWORD = 1,
  630. TASK_LOGON_S4U = 2,
  631. TASK_LOGON_INTERACTIVE_TOKEN = 3,
  632. TASK_LOGON_GROUP = 4,
  633. TASK_LOGON_SERVICE_ACCOUNT = 5,
  634. TASK_LOGON_INTERACTIVE_TOKEN_OR_PASSWORD = 6,
  635. }}
  636.  
  637. ENUM!{enum _TASK_RUNLEVEL {
  638. TASK_RUNLEVEL_LUA = 0,
  639. TASK_RUNLEVEL_HIGHEST = 1,
  640. }}
  641.  
  642. RIDL!{#[uuid(0x02820e19, 0x7b98, 0x4ed2, 0xb2, 0xe8, 0xfd, 0xcc, 0xce, 0xff, 0x61, 0x9b)]
  643. interface IActionCollection(IActionCollectionVtbl): IDispatch(IDispatchVtbl) {
  644. fn get_Count(
  645. pCount: *mut i32,
  646. ) -> HRESULT,
  647. fn get_Item(
  648. index: i32,
  649. ppAction: *mut *mut IAction,
  650. ) -> HRESULT,
  651. fn get__NewEnum(
  652. ppEnum: *mut LPUNKNOWN,
  653. ) -> HRESULT,
  654. fn get_XmlText(
  655. pText: *mut BSTR,
  656. ) -> HRESULT,
  657. fn put_XmlText(
  658. pText: BSTR,
  659. ) -> HRESULT,
  660. fn Create(
  661. Type: _TASK_ACTION_TYPE,
  662. ppAction: *mut *mut IAction,
  663. ) -> HRESULT,
  664. fn Remove(
  665. index: VARIANT,
  666. ) -> HRESULT,
  667. fn Clear(
  668. ) -> HRESULT,
  669. fn get_Context(
  670. pContext: *mut BSTR,
  671. ) -> HRESULT,
  672. fn put_Context(
  673. pContext: BSTR,
  674. ) -> HRESULT,
  675. }}
  676.  
  677. RIDL!{#[uuid(0xbae54997, 0x48b1, 0x4cbe, 0x99, 0x65, 0xd6, 0xbe, 0x26, 0x3e, 0xbe, 0xa4)]
  678. interface IAction(IActionVtbl): IDispatch(IDispatchVtbl) {
  679. fn get_Id(
  680. pId: *mut BSTR,
  681. ) -> HRESULT,
  682. fn put_Id(
  683. pId: BSTR,
  684. ) -> HRESULT,
  685. fn get_Type(
  686. pType: *mut _TASK_ACTION_TYPE,
  687. ) -> HRESULT,
  688. }}
  689.  
  690. ENUM!{enum _TASK_ACTION_TYPE {
  691. TASK_ACTION_EXEC = 0,
  692. TASK_ACTION_COM_HANDLER = 5,
  693. TASK_ACTION_SEND_EMAIL = 6,
  694. TASK_ACTION_SHOW_MESSAGE = 7,
  695. }}
  696.  
  697. STRUCT!{struct _SYSTEMTIME {
  698. wYear: u16,
  699. wMonth: u16,
  700. wDayOfWeek: u16,
  701. wDay: u16,
  702. wHour: u16,
  703. wMinute: u16,
  704. wSecond: u16,
  705. wMilliseconds: u16,
  706. }}
  707.  
  708. RIDL!{#[uuid(0x86627eb4, 0x42a7, 0x41e4, 0xa4, 0xd9, 0xac, 0x33, 0xa7, 0x2f, 0x2d, 0x52)]
  709. interface IRegisteredTaskCollection(IRegisteredTaskCollectionVtbl): IDispatch(IDispatchVtbl) {
  710. fn get_Count(
  711. pCount: *mut i32,
  712. ) -> HRESULT,
  713. fn get_Item(
  714. index: VARIANT,
  715. ppRegisteredTask: *mut *mut IRegisteredTask,
  716. ) -> HRESULT,
  717. fn get__NewEnum(
  718. ppEnum: *mut LPUNKNOWN,
  719. ) -> HRESULT,
  720. }}
  721.  
  722. RIDL!{#[uuid(0x2faba4c7, 0x4da9, 0x4013, 0x96, 0x97, 0x20, 0xcc, 0x3f, 0xd4, 0x0f, 0x85)]
  723. interface ITaskService(ITaskServiceVtbl): IDispatch(IDispatchVtbl) {
  724. fn GetFolder(
  725. Path: BSTR,
  726. ppFolder: *mut *mut ITaskFolder,
  727. ) -> HRESULT,
  728. fn GetRunningTasks(
  729. flags: i32,
  730. ppRunningTasks: *mut *mut IRunningTaskCollection,
  731. ) -> HRESULT,
  732. fn NewTask(
  733. flags: u32,
  734. ppDefinition: *mut *mut ITaskDefinition,
  735. ) -> HRESULT,
  736. fn Connect(
  737. serverName: VARIANT,
  738. user: VARIANT,
  739. domain: VARIANT,
  740. password: VARIANT,
  741. ) -> HRESULT,
  742. fn get_Connected(
  743. pConnected: *mut VARIANT_BOOL,
  744. ) -> HRESULT,
  745. fn get_TargetServer(
  746. pServer: *mut BSTR,
  747. ) -> HRESULT,
  748. fn get_ConnectedUser(
  749. pUser: *mut BSTR,
  750. ) -> HRESULT,
  751. fn get_ConnectedDomain(
  752. pDomain: *mut BSTR,
  753. ) -> HRESULT,
  754. fn get_HighestVersion(
  755. pVersion: *mut u32,
  756. ) -> HRESULT,
  757. }}
  758.  
  759. RIDL!{#[uuid(0x839d7762, 0x5121, 0x4009, 0x92, 0x34, 0x4f, 0x0d, 0x19, 0x39, 0x4f, 0x04)]
  760. interface ITaskHandler(ITaskHandlerVtbl): IUnknown(IUnknownVtbl) {
  761. fn Start(
  762. pHandlerServices: LPUNKNOWN,
  763. Data: BSTR,
  764. ) -> HRESULT,
  765. fn Stop(
  766. pRetCode: *mut HRESULT,
  767. ) -> HRESULT,
  768. fn Pause(
  769. ) -> HRESULT,
  770. fn Resume(
  771. ) -> HRESULT,
  772. }}
  773.  
  774. RIDL!{#[uuid(0xeaec7a8f, 0x27a0, 0x4ddc, 0x86, 0x75, 0x14, 0x72, 0x6a, 0x01, 0xa3, 0x8a)]
  775. interface ITaskHandlerStatus(ITaskHandlerStatusVtbl): IUnknown(IUnknownVtbl) {
  776. fn UpdateStatus(
  777. percentComplete: i16,
  778. statusMessage: BSTR,
  779. ) -> HRESULT,
  780. fn TaskCompleted(
  781. taskErrCode: HRESULT,
  782. ) -> HRESULT,
  783. }}
  784.  
  785. RIDL!{#[uuid(0x3e4c9351, 0xd966, 0x4b8b, 0xbb, 0x87, 0xce, 0xba, 0x68, 0xbb, 0x01, 0x07)]
  786. interface ITaskVariables(ITaskVariablesVtbl): IUnknown(IUnknownVtbl) {
  787. fn GetInput(
  788. pInput: *mut BSTR,
  789. ) -> HRESULT,
  790. fn SetOutput(
  791. input: BSTR,
  792. ) -> HRESULT,
  793. fn GetContext(
  794. pContext: *mut BSTR,
  795. ) -> HRESULT,
  796. }}
  797.  
  798. RIDL!{#[uuid(0x39038068, 0x2b46, 0x4afd, 0x86, 0x62, 0x7b, 0xb6, 0xf8, 0x68, 0xd2, 0x21)]
  799. interface ITaskNamedValuePair(ITaskNamedValuePairVtbl): IDispatch(IDispatchVtbl) {
  800. fn get_Name(
  801. pName: *mut BSTR,
  802. ) -> HRESULT,
  803. fn put_Name(
  804. pName: BSTR,
  805. ) -> HRESULT,
  806. fn get_Value(
  807. pValue: *mut BSTR,
  808. ) -> HRESULT,
  809. fn put_Value(
  810. pValue: BSTR,
  811. ) -> HRESULT,
  812. }}
  813.  
  814. RIDL!{#[uuid(0xb4ef826b, 0x63c3, 0x46e4, 0xa5, 0x04, 0xef, 0x69, 0xe4, 0xf7, 0xea, 0x4d)]
  815. interface ITaskNamedValueCollection(ITaskNamedValueCollectionVtbl): IDispatch(IDispatchVtbl) {
  816. fn get_Count(
  817. pCount: *mut i32,
  818. ) -> HRESULT,
  819. fn get_Item(
  820. index: i32,
  821. ppPair: *mut *mut ITaskNamedValuePair,
  822. ) -> HRESULT,
  823. fn get__NewEnum(
  824. ppEnum: *mut LPUNKNOWN,
  825. ) -> HRESULT,
  826. fn Create(
  827. Name: BSTR,
  828. Value: BSTR,
  829. ppPair: *mut *mut ITaskNamedValuePair,
  830. ) -> HRESULT,
  831. fn Remove(
  832. index: i32,
  833. ) -> HRESULT,
  834. fn Clear(
  835. ) -> HRESULT,
  836. }}
  837.  
  838. RIDL!{#[uuid(0xd537d2b0, 0x9fb3, 0x4d34, 0x97, 0x39, 0x1f, 0xf5, 0xce, 0x7b, 0x1e, 0xf3)]
  839. interface IIdleTrigger(IIdleTriggerVtbl): ITrigger(ITriggerVtbl) {
  840. }}
  841.  
  842. RIDL!{#[uuid(0x72dade38, 0xfae4, 0x4b3e, 0xba, 0xf4, 0x5d, 0x00, 0x9a, 0xf0, 0x2b, 0x1c)]
  843. interface ILogonTrigger(ILogonTriggerVtbl): ITrigger(ITriggerVtbl) {
  844. fn get_Delay(
  845. pDelay: *mut BSTR,
  846. ) -> HRESULT,
  847. fn put_Delay(
  848. pDelay: BSTR,
  849. ) -> HRESULT,
  850. fn get_UserId(
  851. pUser: *mut BSTR,
  852. ) -> HRESULT,
  853. fn put_UserId(
  854. pUser: BSTR,
  855. ) -> HRESULT,
  856. }}
  857.  
  858. RIDL!{#[uuid(0x754da71b, 0x4385, 0x4475, 0x9d, 0xd9, 0x59, 0x82, 0x94, 0xfa, 0x36, 0x41)]
  859. interface ISessionStateChangeTrigger(ISessionStateChangeTriggerVtbl): ITrigger(ITriggerVtbl) {
  860. fn get_Delay(
  861. pDelay: *mut BSTR,
  862. ) -> HRESULT,
  863. fn put_Delay(
  864. pDelay: BSTR,
  865. ) -> HRESULT,
  866. fn get_UserId(
  867. pUser: *mut BSTR,
  868. ) -> HRESULT,
  869. fn put_UserId(
  870. pUser: BSTR,
  871. ) -> HRESULT,
  872. fn get_StateChange(
  873. pType: *mut _TASK_SESSION_STATE_CHANGE_TYPE,
  874. ) -> HRESULT,
  875. fn put_StateChange(
  876. pType: _TASK_SESSION_STATE_CHANGE_TYPE,
  877. ) -> HRESULT,
  878. }}
  879.  
  880. ENUM!{enum _TASK_SESSION_STATE_CHANGE_TYPE {
  881. TASK_CONSOLE_CONNECT = 1,
  882. TASK_CONSOLE_DISCONNECT = 2,
  883. TASK_REMOTE_CONNECT = 3,
  884. TASK_REMOTE_DISCONNECT = 4,
  885. TASK_SESSION_LOCK = 7,
  886. TASK_SESSION_UNLOCK = 8,
  887. }}
  888.  
  889. RIDL!{#[uuid(0xd45b0167, 0x9653, 0x4eef, 0xb9, 0x4f, 0x07, 0x32, 0xca, 0x7a, 0xf2, 0x51)]
  890. interface IEventTrigger(IEventTriggerVtbl): ITrigger(ITriggerVtbl) {
  891. fn get_Subscription(
  892. pQuery: *mut BSTR,
  893. ) -> HRESULT,
  894. fn put_Subscription(
  895. pQuery: BSTR,
  896. ) -> HRESULT,
  897. fn get_Delay(
  898. pDelay: *mut BSTR,
  899. ) -> HRESULT,
  900. fn put_Delay(
  901. pDelay: BSTR,
  902. ) -> HRESULT,
  903. fn get_ValueQueries(
  904. ppNamedXPaths: *mut *mut ITaskNamedValueCollection,
  905. ) -> HRESULT,
  906. fn put_ValueQueries(
  907. ppNamedXPaths: *const ITaskNamedValueCollection,
  908. ) -> HRESULT,
  909. }}
  910.  
  911. RIDL!{#[uuid(0xb45747e0, 0xeba7, 0x4276, 0x9f, 0x29, 0x85, 0xc5, 0xbb, 0x30, 0x00, 0x06)]
  912. interface ITimeTrigger(ITimeTriggerVtbl): ITrigger(ITriggerVtbl) {
  913. fn get_RandomDelay(
  914. pRandomDelay: *mut BSTR,
  915. ) -> HRESULT,
  916. fn put_RandomDelay(
  917. pRandomDelay: BSTR,
  918. ) -> HRESULT,
  919. }}
  920.  
  921. RIDL!{#[uuid(0x126c5cd8, 0xb288, 0x41d5, 0x8d, 0xbf, 0xe4, 0x91, 0x44, 0x6a, 0xdc, 0x5c)]
  922. interface IDailyTrigger(IDailyTriggerVtbl): ITrigger(ITriggerVtbl) {
  923. fn get_DaysInterval(
  924. pDays: *mut i16,
  925. ) -> HRESULT,
  926. fn put_DaysInterval(
  927. pDays: i16,
  928. ) -> HRESULT,
  929. fn get_RandomDelay(
  930. pRandomDelay: *mut BSTR,
  931. ) -> HRESULT,
  932. fn put_RandomDelay(
  933. pRandomDelay: BSTR,
  934. ) -> HRESULT,
  935. }}
  936.  
  937. RIDL!{#[uuid(0x5038fc98, 0x82ff, 0x436d, 0x87, 0x28, 0xa5, 0x12, 0xa5, 0x7c, 0x9d, 0xc1)]
  938. interface IWeeklyTrigger(IWeeklyTriggerVtbl): ITrigger(ITriggerVtbl) {
  939. fn get_DaysOfWeek(
  940. pDays: *mut i16,
  941. ) -> HRESULT,
  942. fn put_DaysOfWeek(
  943. pDays: i16,
  944. ) -> HRESULT,
  945. fn get_WeeksInterval(
  946. pWeeks: *mut i16,
  947. ) -> HRESULT,
  948. fn put_WeeksInterval(
  949. pWeeks: i16,
  950. ) -> HRESULT,
  951. fn get_RandomDelay(
  952. pRandomDelay: *mut BSTR,
  953. ) -> HRESULT,
  954. fn put_RandomDelay(
  955. pRandomDelay: BSTR,
  956. ) -> HRESULT,
  957. }}
  958.  
  959. RIDL!{#[uuid(0x97c45ef1, 0x6b02, 0x4a1a, 0x9c, 0x0e, 0x1e, 0xbf, 0xba, 0x15, 0x00, 0xac)]
  960. interface IMonthlyTrigger(IMonthlyTriggerVtbl): ITrigger(ITriggerVtbl) {
  961. fn get_DaysOfMonth(
  962. pDays: *mut i32,
  963. ) -> HRESULT,
  964. fn put_DaysOfMonth(
  965. pDays: i32,
  966. ) -> HRESULT,
  967. fn get_MonthsOfYear(
  968. pMonths: *mut i16,
  969. ) -> HRESULT,
  970. fn put_MonthsOfYear(
  971. pMonths: i16,
  972. ) -> HRESULT,
  973. fn get_RunOnLastDayOfMonth(
  974. pLastDay: *mut VARIANT_BOOL,
  975. ) -> HRESULT,
  976. fn put_RunOnLastDayOfMonth(
  977. pLastDay: VARIANT_BOOL,
  978. ) -> HRESULT,
  979. fn get_RandomDelay(
  980. pRandomDelay: *mut BSTR,
  981. ) -> HRESULT,
  982. fn put_RandomDelay(
  983. pRandomDelay: BSTR,
  984. ) -> HRESULT,
  985. }}
  986.  
  987. RIDL!{#[uuid(0x77d025a3, 0x90fa, 0x43aa, 0xb5, 0x2e, 0xcd, 0xa5, 0x49, 0x9b, 0x94, 0x6a)]
  988. interface IMonthlyDOWTrigger(IMonthlyDOWTriggerVtbl): ITrigger(ITriggerVtbl) {
  989. fn get_DaysOfWeek(
  990. pDays: *mut i16,
  991. ) -> HRESULT,
  992. fn put_DaysOfWeek(
  993. pDays: i16,
  994. ) -> HRESULT,
  995. fn get_WeeksOfMonth(
  996. pWeeks: *mut i16,
  997. ) -> HRESULT,
  998. fn put_WeeksOfMonth(
  999. pWeeks: i16,
  1000. ) -> HRESULT,
  1001. fn get_MonthsOfYear(
  1002. pMonths: *mut i16,
  1003. ) -> HRESULT,
  1004. fn put_MonthsOfYear(
  1005. pMonths: i16,
  1006. ) -> HRESULT,
  1007. fn get_RunOnLastWeekOfMonth(
  1008. pLastWeek: *mut VARIANT_BOOL,
  1009. ) -> HRESULT,
  1010. fn put_RunOnLastWeekOfMonth(
  1011. pLastWeek: VARIANT_BOOL,
  1012. ) -> HRESULT,
  1013. fn get_RandomDelay(
  1014. pRandomDelay: *mut BSTR,
  1015. ) -> HRESULT,
  1016. fn put_RandomDelay(
  1017. pRandomDelay: BSTR,
  1018. ) -> HRESULT,
  1019. }}
  1020.  
  1021. RIDL!{#[uuid(0x2a9c35da, 0xd357, 0x41f4, 0xbb, 0xc1, 0x20, 0x7a, 0xc1, 0xb1, 0xf3, 0xcb)]
  1022. interface IBootTrigger(IBootTriggerVtbl): ITrigger(ITriggerVtbl) {
  1023. fn get_Delay(
  1024. pDelay: *mut BSTR,
  1025. ) -> HRESULT,
  1026. fn put_Delay(
  1027. pDelay: BSTR,
  1028. ) -> HRESULT,
  1029. }}
  1030.  
  1031. RIDL!{#[uuid(0x4c8fec3a, 0xc218, 0x4e0c, 0xb2, 0x3d, 0x62, 0x90, 0x24, 0xdb, 0x91, 0xa2)]
  1032. interface IRegistrationTrigger(IRegistrationTriggerVtbl): ITrigger(ITriggerVtbl) {
  1033. fn get_Delay(
  1034. pDelay: *mut BSTR,
  1035. ) -> HRESULT,
  1036. fn put_Delay(
  1037. pDelay: BSTR,
  1038. ) -> HRESULT,
  1039. }}
  1040.  
  1041. RIDL!{#[uuid(0x4c3d624d, 0xfd6b, 0x49a3, 0xb9, 0xb7, 0x09, 0xcb, 0x3c, 0xd3, 0xf0, 0x47)]
  1042. interface IExecAction(IExecActionVtbl): IAction(IActionVtbl) {
  1043. fn get_Path(
  1044. pPath: *mut BSTR,
  1045. ) -> HRESULT,
  1046. fn put_Path(
  1047. pPath: BSTR,
  1048. ) -> HRESULT,
  1049. fn get_Arguments(
  1050. pArgument: *mut BSTR,
  1051. ) -> HRESULT,
  1052. fn put_Arguments(
  1053. pArgument: BSTR,
  1054. ) -> HRESULT,
  1055. fn get_WorkingDirectory(
  1056. pWorkingDirectory: *mut BSTR,
  1057. ) -> HRESULT,
  1058. fn put_WorkingDirectory(
  1059. pWorkingDirectory: BSTR,
  1060. ) -> HRESULT,
  1061. }}
  1062.  
  1063. RIDL!{#[uuid(0x505e9e68, 0xaf89, 0x46b8, 0xa3, 0x0f, 0x56, 0x16, 0x2a, 0x83, 0xd5, 0x37)]
  1064. interface IShowMessageAction(IShowMessageActionVtbl): IAction(IActionVtbl) {
  1065. fn get_Title(
  1066. pTitle: *mut BSTR,
  1067. ) -> HRESULT,
  1068. fn put_Title(
  1069. pTitle: BSTR,
  1070. ) -> HRESULT,
  1071. fn get_MessageBody(
  1072. pMessageBody: *mut BSTR,
  1073. ) -> HRESULT,
  1074. fn put_MessageBody(
  1075. pMessageBody: BSTR,
  1076. ) -> HRESULT,
  1077. }}
  1078.  
  1079. RIDL!{#[uuid(0x6d2fd252, 0x75c5, 0x4f66, 0x90, 0xba, 0x2a, 0x7d, 0x8c, 0xc3, 0x03, 0x9f)]
  1080. interface IComHandlerAction(IComHandlerActionVtbl): IAction(IActionVtbl) {
  1081. fn get_ClassId(
  1082. pClsid: *mut BSTR,
  1083. ) -> HRESULT,
  1084. fn put_ClassId(
  1085. pClsid: BSTR,
  1086. ) -> HRESULT,
  1087. fn get_Data(
  1088. pData: *mut BSTR,
  1089. ) -> HRESULT,
  1090. fn put_Data(
  1091. pData: BSTR,
  1092. ) -> HRESULT,
  1093. }}
  1094.  
  1095. RIDL!{#[uuid(0x10f62c64, 0x7e16, 0x4314, 0xa0, 0xc2, 0x0c, 0x36, 0x83, 0xf9, 0x9d, 0x40)]
  1096. interface IEmailAction(IEmailActionVtbl): IAction(IActionVtbl) {
  1097. fn get_Server(
  1098. pServer: *mut BSTR,
  1099. ) -> HRESULT,
  1100. fn put_Server(
  1101. pServer: BSTR,
  1102. ) -> HRESULT,
  1103. fn get_Subject(
  1104. pSubject: *mut BSTR,
  1105. ) -> HRESULT,
  1106. fn put_Subject(
  1107. pSubject: BSTR,
  1108. ) -> HRESULT,
  1109. fn get_To(
  1110. pTo: *mut BSTR,
  1111. ) -> HRESULT,
  1112. fn put_To(
  1113. pTo: BSTR,
  1114. ) -> HRESULT,
  1115. fn get_Cc(
  1116. pCc: *mut BSTR,
  1117. ) -> HRESULT,
  1118. fn put_Cc(
  1119. pCc: BSTR,
  1120. ) -> HRESULT,
  1121. fn get_Bcc(
  1122. pBcc: *mut BSTR,
  1123. ) -> HRESULT,
  1124. fn put_Bcc(
  1125. pBcc: BSTR,
  1126. ) -> HRESULT,
  1127. fn get_ReplyTo(
  1128. pReplyTo: *mut BSTR,
  1129. ) -> HRESULT,
  1130. fn put_ReplyTo(
  1131. pReplyTo: BSTR,
  1132. ) -> HRESULT,
  1133. fn get_From(
  1134. pFrom: *mut BSTR,
  1135. ) -> HRESULT,
  1136. fn put_From(
  1137. pFrom: BSTR,
  1138. ) -> HRESULT,
  1139. fn get_HeaderFields(
  1140. ppHeaderFields: *mut *mut ITaskNamedValueCollection,
  1141. ) -> HRESULT,
  1142. fn put_HeaderFields(
  1143. ppHeaderFields: *const ITaskNamedValueCollection,
  1144. ) -> HRESULT,
  1145. fn get_Body(
  1146. pBody: *mut BSTR,
  1147. ) -> HRESULT,
  1148. fn put_Body(
  1149. pBody: BSTR,
  1150. ) -> HRESULT,
  1151. fn get_Attachments(
  1152. pAttachements: *mut SAFEARRAY,
  1153. ) -> HRESULT,
  1154. fn put_Attachments(
  1155. pAttachements: SAFEARRAY,
  1156. ) -> HRESULT,
  1157. }}
  1158.  
  1159. RIDL!{#[uuid(0x2c05c3f0, 0x6eed, 0x4c05, 0xa1, 0x5f, 0xed, 0x7d, 0x7a, 0x98, 0xa3, 0x69)]
  1160. interface ITaskSettings2(ITaskSettings2Vtbl): IDispatch(IDispatchVtbl) {
  1161. fn get_DisallowStartOnRemoteAppSession(
  1162. pDisallowStart: *mut VARIANT_BOOL,
  1163. ) -> HRESULT,
  1164. fn put_DisallowStartOnRemoteAppSession(
  1165. pDisallowStart: VARIANT_BOOL,
  1166. ) -> HRESULT,
  1167. fn get_UseUnifiedSchedulingEngine(
  1168. pUseUnifiedEngine: *mut VARIANT_BOOL,
  1169. ) -> HRESULT,
  1170. fn put_UseUnifiedSchedulingEngine(
  1171. pUseUnifiedEngine: VARIANT_BOOL,
  1172. ) -> HRESULT,
  1173. }}
  1174.  
  1175. ENUM!{enum _TASK_RUN_FLAGS {
  1176. TASK_RUN_NO_FLAGS = 0,
  1177. TASK_RUN_AS_SELF = 1,
  1178. TASK_RUN_IGNORE_CONSTRAINTS = 2,
  1179. TASK_RUN_USE_SESSION_ID = 4,
  1180. TASK_RUN_USER_SID = 8,
  1181. }}
  1182.  
  1183. ENUM!{enum _TASK_ENUM_FLAGS {
  1184. TASK_ENUM_HIDDEN = 1,
  1185. }}
  1186.  
  1187. ENUM!{enum _TASK_PROCESSTOKENSID {
  1188. TASK_PROCESSTOKENSID_NONE = 0,
  1189. TASK_PROCESSTOKENSID_UNRESTRICTED = 1,
  1190. TASK_PROCESSTOKENSID_DEFAULT = 2,
  1191. }}
  1192.  
  1193. ENUM!{enum _TASK_CREATION {
  1194. TASK_VALIDATE_ONLY = 1,
  1195. TASK_CREATE = 2,
  1196. TASK_UPDATE = 4,
  1197. TASK_CREATE_OR_UPDATE = 6,
  1198. TASK_DISABLE = 8,
  1199. TASK_DONT_ADD_PRINCIPAL_ACE = 16,
  1200. TASK_IGNORE_REGISTRATION_TRIGGERS = 32,
  1201. }}
  1202.  
  1203. // Implements ITaskService
  1204. pub struct TaskScheduler {
  1205. _use_cocreateinstance_to_instantiate: (),
  1206. }
  1207.  
  1208. impl TaskScheduler {
  1209. #[inline]
  1210. pub fn uuidof() -> GUID {
  1211. GUID {
  1212. Data1: 0x0f87369f,
  1213. Data2: 0xa4e5,
  1214. Data3: 0x4cfc,
  1215. Data4: [0xbd, 0x3e, 0x73, 0xe6, 0x15, 0x45, 0x72, 0xdd],
  1216. }
  1217. }
  1218. }
  1219.  
  1220. // Implements ITaskHandler
  1221. pub struct TaskHandlerPS {
  1222. _use_cocreateinstance_to_instantiate: (),
  1223. }
  1224.  
  1225. impl TaskHandlerPS {
  1226. #[inline]
  1227. pub fn uuidof() -> GUID {
  1228. GUID {
  1229. Data1: 0xf2a69db7,
  1230. Data2: 0xda2c,
  1231. Data3: 0x4352,
  1232. Data4: [0x90, 0x66, 0x86, 0xfe, 0xe6, 0xda, 0xca, 0xc9],
  1233. }
  1234. }
  1235. }
  1236.  
  1237. // Implements ITaskHandlerStatus
  1238. // Implements ITaskVariables
  1239. pub struct TaskHandlerStatusPS {
  1240. _use_cocreateinstance_to_instantiate: (),
  1241. }
  1242.  
  1243. impl TaskHandlerStatusPS {
  1244. #[inline]
  1245. pub fn uuidof() -> GUID {
  1246. GUID {
  1247. Data1: 0x9f15266d,
  1248. Data2: 0xd7ba,
  1249. Data3: 0x48f0,
  1250. Data4: [0x93, 0xc1, 0xe6, 0x89, 0x5f, 0x6f, 0xe5, 0xac],
  1251. }
  1252. }
  1253. }
Add Comment
Please, Sign In to add comment