Bagikan melalui


IRunnableObject::Run method (objidl.h)

Memaksa objek untuk dijalankan.

Sintaks

HRESULT Run(
  [in] LPBINDCTX pbc
);

Parameter

[in] pbc

Penunjuk ke konteks pengikatan operasi eksekusi. Lihat IBindCtx. Parameter ini bisa NULL.

Nilai kembali

Metode ini dapat mengembalikan nilai pengembalian standar E_INVALIDARG, E_UNEXPECTED, dan S_OK.

Keterangan

Kontainer memanggil IRunnableObject::Run untuk memaksa objek mereka memasuki status berjalan. Jika objek belum berjalan, memanggil Jalankan bisa menjadi operasi yang mahal, pada urutan banyak detik. Jika objek sudah berjalan, maka metode ini tidak berpengaruh pada objek .

Catatan untuk Penelepon

Ketika dipanggil pada objek tertaut yang telah dikonversi ke kelas baru sejak tautan terakhir diaktifkan, IRunnableObject::Run dapat mengembalikan OLE_E_CLASSDIFF. Dalam hal ini, klien harus memanggil IOleLink::BindToSource.

OleRun adalah fungsi pembantu yang dengan mudah mengemas ulang fungsionalitas yang ditawarkan oleh IRunnableObject::Run. Dengan rilis OLE 2.01, implementasi OleRun diubah sehingga memanggil QueryInterface, meminta IRunnableObject, dan kemudian memanggil IRunnableObject::Run. Dengan kata lain, Anda dapat menggunakan antarmuka dan fungsi pembantu secara bergantian.

Catatan untuk Pelaksana

Objek harus mendaftar dalam tabel objek yang sedang berjalan jika memiliki moniker yang ditetapkan. Objek tidak boleh memegang kunci yang kuat pada dirinya sendiri; sebaliknya, seharusnya tetap dalam keadaan tidak stabil dan tidak terkunci. Objek harus dikunci ketika koneksi eksternal pertama dibuat ke objek.

Objek yang disematkan harus menahan kunci pada kontainer penyematannya saat berada dalam status berjalan. Handler default yang disediakan oleh OLE 2 mengurus penguncian kontainer penyematan atas nama objek yang diterapkan oleh aplikasi objek EXE. Objek yang diimplementasikan oleh aplikasi objek DLL harus secara eksplisit mengunci kontainer penyematannya, yang mereka lakukan dengan terlebih dahulu memanggil IOleClientSite::GetContainer untuk mendapatkan pointer ke kontainer, lalu memanggil IOleContainer::LockContainer untuk benar-benar menempatkan kunci. Kunci ini harus dilepaskan ketika IOleObject::Close dipanggil.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header objidl.h

Lihat juga

IRunnableObject

OleRun