Bagikan melalui


Metode ISharedPropertyGroupManager::CreatePropertyGroup (comsvcs.h)

Membuat grup properti bersama baru. Jika grup properti dengan nama yang ditentukan sudah ada, CreatePropertyGroup mengembalikan referensi ke grup yang sudah ada.

Sintaks

HRESULT CreatePropertyGroup(
  [in]      BSTR                 Name,
  [in, out] LONG                 *dwIsoMode,
  [in, out] LONG                 *dwRelMode,
  [out]     VARIANT_BOOL         *fExists,
  [out]     ISharedPropertyGroup **ppGroup
);

Parameter

[in] Name

Nama grup properti bersama yang akan dibuat.

[in, out] dwIsoMode

Mode isolasi untuk properti di grup properti bersama baru. Lihat tabel konstanta dalam Keterangan di bawah ini. Jika nilai parameter fExists diatur ke VARIANT_TRUE saat dikembalikan dari metode ini, nilai input diabaikan dan nilai yang dikembalikan dalam parameter ini adalah mode isolasi yang ditetapkan saat grup properti dibuat.

[in, out] dwRelMode

Mode rilis untuk properti di grup properti bersama baru. Lihat tabel konstanta dalam Keterangan di bawah ini. Jika nilai parameter fExists diatur ke VARIANT_TRUE saat dikembalikan dari metode ini, nilai input diabaikan dan nilai yang dikembalikan dalam parameter ini adalah mode rilis yang ditetapkan saat grup properti dibuat.

[out] fExists

VARIANT_TRUE saat kembali dari metode ini jika grup properti bersama yang ditentukan dalam parameter nama ada sebelum panggilan ini, dan VARIANT_FALSE jika grup properti dibuat oleh panggilan ini.

[out] ppGroup

Referensi ke ISharedPropertyGroup, yang merupakan grup properti bersama yang diidentifikasi oleh parameter Nama , atau NULL jika terjadi kesalahan.

Mengembalikan nilai

Metode ini dapat mengembalikan nilai pengembalian standar E_OUTOFMEMORY, E_UNEXPECTED, dan E_FAIL, serta nilai berikut.

Menampilkan kode Deskripsi
S_OK
Referensi ke grup properti bersama yang ditentukan dalam parameter Nama dikembalikan dalam parameter ppGroup .
CONTEXT_E_NOCONTEXT
Pemanggil tidak dijalankan di bawah COM+. Penelepon harus mengeksekusi di bawah COM+ untuk menggunakan Pengelola Properti Bersama.
E_INVALIDARG
Setidaknya salah satu parameter tidak valid, atau objek yang sama mencoba membuat grup properti yang sama lebih dari sekali.

Keterangan

Konstanta berikut digunakan untuk menentukan mode isolasi yang efektif untuk grup properti bersama.

Terus-menerus Nilai Deskripsi
LockSetGet 0 Nilai default. Ini memastikan bahwa setiap operasi dapatkan atau atur pada properti bersama bersifat atomik dengan mengunci properti selama panggilan. Ini memastikan bahwa dua klien tidak dapat membaca atau menulis ke properti yang sama pada saat yang sama, tetapi tidak mencegah klien lain mengakses properti lain secara bersamaan dalam grup yang sama.
LockMethod 1 Nilai ini mengunci semua properti dalam grup properti bersama untuk penggunaan eksklusif oleh pemanggil selama metode pemanggil saat ini dijalankan. Ini adalah mode yang sesuai untuk digunakan ketika ada saling ketergantungan di antara properti, atau dalam kasus di mana klien mungkin harus memperbarui properti segera setelah membacanya sebelum dapat diakses lagi.
 
Catatan Saat Anda mengatur mode isolasi ke LockMethod, Pengelola Properti Bersama memerlukan akses ke konteks objek panggilan. Anda tidak dapat menggunakan mode isolasi ini untuk membuat grup properti bersama dari dalam konstruktor objek atau dari objek non-COM+ karena konteks objek tidak tersedia selama konstruksi objek dan klien dasar tidak memiliki konteks objek.
 
Konstanta berikut digunakan untuk menentukan mode rilis efektif untuk grup properti bersama.
Terus-menerus Nilai Deskripsi
Standard 0 Nilai default. Ketika semua klien telah merilis referensi mereka pada grup properti, grup properti secara otomatis dihancurkan.
Proses 1 Grup properti tidak dihancurkan sampai proses pembuatannya dihentikan. Objek yang menyimpan referensi pada grup properti masih harus memanggil Rilis pada referensinya.
 
Catatan Objek tidak boleh mencoba meneruskan referensi grup properti bersama ke objek lain. Jika referensi diteruskan di luar objek yang memperolehnya, referensi tersebut tidak lagi menjadi referensi yang valid.
 

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 comsvcs.h

Lihat juga

ISharedPropertyGroupManager