Bagikan melalui


Metode IRegisteredTask::RunEx (taskschd.h)

Menjalankan tugas terdaftar segera menggunakan bendera yang ditentukan dan pengidentifikasi sesi.

Sintaksis

HRESULT RunEx(
  [in]            VARIANT      params,
  [in]            LONG         flags,
  [in]            LONG         sessionID,
  [in]            BSTR         user,
  [out, optional] IRunningTask **ppRunningTask
);

Parameter

[in] params

Parameter yang digunakan sebagai nilai dalam tindakan tugas. Untuk tidak menentukan nilai parameter apa pun untuk tindakan tugas, atur parameter ini ke VT_NULL atau VT_EMPTY. Jika tidak, satu nilai BSTR , atau array nilai BSTR , dapat ditentukan.

Nilai BSTR yang Anda tentukan dipasangkan dengan nama dan disimpan sebagai pasangan nilai nama. Jika Anda menentukan satu nilai BSTR, maka Arg0 akan menjadi nama yang ditetapkan ke nilai . Nilai dapat digunakan dalam tindakan tugas di mana variabel $(Arg0) digunakan dalam properti tindakan.

Jika Anda meneruskan nilai seperti "0", "100", dan "250" sebagai array nilai BSTR, maka "0" akan menggantikan variabel $(Arg0), "100" akan menggantikan variabel $(Arg1), dan "250" akan menggantikan variabel $(Arg2) yang digunakan dalam properti tindakan.

Maksimum 32 nilai BSTR dapat ditentukan.

Untuk informasi selengkapnya dan daftar properti tindakan yang dapat menggunakan variabel $(Arg0), $(Arg1), ..., $(Arg32) dalam nilainya, lihat Tindakan Tugas.

[in] flags

Konstanta TASK_RUN_FLAGS yang menentukan bagaimana tugas dijalankan.

[in] sessionID

Sesi server terminal tempat Anda ingin memulai tugas.

Jika konstanta TASK_RUN_USE_SESSION_ID tidak diteruskan ke parameter bendera , maka nilai yang ditentukan dalam parameter ini diabaikan. Jika konstanta TASK_RUN_USE_SESSION_ID diteruskan ke dalam bendera parameter dan nilai sessionID kurang dari atau sama dengan 0, maka kesalahan argumen yang tidak valid akan dikembalikan.

Jika konstanta TASK_RUN_USE_SESSION_ID diteruskan ke parameter bendera dan nilai sessionID adalah ID sesi yang valid lebih besar dari 0 dan jika tidak ada nilai yang ditentukan untuk parameter pengguna , maka layanan Penjadwal Tugas akan mencoba memulai tugas secara interaktif sebagai pengguna yang masuk ke sesi yang ditentukan.

Jika konstanta TASK_RUN_USE_SESSION_ID diteruskan ke parameter bendera dan nilai sessionID adalah ID sesi yang valid lebih besar dari 0 dan jika pengguna ditentukan dalam parameter pengguna , maka layanan Penjadwal Tugas akan mencoba memulai tugas secara interaktif sebagai pengguna yang ditentukan dalam parameter pengguna .

[in] user

Pengguna tempat tugas berjalan.

[out, optional] ppRunningTask

Antarmuka IRunningTask yang menentukan instans tugas baru.

Berikan referensi ke nullIRunningTask penunjuk antarmuka. Mereferensikan pointer NULL non-dapat menyebabkan kebocoran memori karena pointer akan ditimpa.

Mengembalikan nilai

Jika metode ini berhasil, metode ini mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT.

Komentar

Metode ini akan kembali tanpa kesalahan, tetapi tugas tidak akan berjalan jika properti AllowDemandStart ITaskSettings diatur ke false untuk tugas.

Jika IRegisteredTask::RunEx dipanggil dari tugas yang dinonaktifkan, itu akan mengembalikan S_OK, tetapi tugas tidak akan dijalankan.

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Platform Target Windows
Header taskschd.h
Pustaka Taskschd.lib
DLL Taskschd.dll

Lihat juga

IRegisteredTask

Penjadwal Tugas