Bagikan melalui


Implementasi File IPropertySetStorage-Compound

Implementasi objek penyimpanan file gabungan COM mencakup implementasi IPropertyStorage, antarmuka yang mengelola satu set properti persisten, dan IPropertySetStorage, antarmuka yang mengelola grup set properti persisten.

Untuk mendapatkan penunjuk ke implementasi file majemuk IPropertySetStorage, tentukan nama yang ditentukan header untuk pengidentifikasi IID_IStorage sebagai parameter riid , atau gunakan fungsi StgCreateStorageEx atau StgOpenStorageEx . Dalam kedua kasus, tentukan STGFMT_STORAGE sebagai parameter stgfmt . (STGFMT_ANY dapat ditentukan secara alternatif dalam kasus StgOpenStorageEx.) Selain itu, tentukan nama yang ditentukan header untuk pengidentifikasi antarmuka (IID) IID_IPropertySetStorage sebagai parameter riid . Kedua fungsi menyediakan pointer ke antarmuka IPropertySetStorage objek.

Cara lain untuk mendapatkan penunjuk ke implementasi file gabungan adalah dengan menentukan nama yang ditentukan header untuk pengidentifikasi IID_IStorage sebagai parameter riid , atau untuk menggunakan fungsi StgCreateDocfile atau StgOpenStorage . Ini akan menyediakan pointer ke antarmuka IStorage objek. Saat Anda ingin berurusan dengan set properti persisten, panggil IStorage::QueryInterface untuk antarmuka IPropertySetStorage .

Kapan Menggunakan IPropertySetStorage

Panggil metode IPropertySetStorage untuk membuat, membuka, atau menghapus kumpulan properti di penyimpanan set properti file majemuk saat ini. Ada juga metode, IPropertySetStorage::Enum, yang memasok penunjuk ke enumerator yang dapat digunakan untuk menghitung set properti dalam penyimpanan.

Metode

IPropertySetStorage::Create

Membuat properti baru yang diatur dalam penyimpanan file majemuk saat ini dan, saat kembali, memasok penunjuk antarmuka ke implementasi file majemuk IPropertyStorage . Dalam implementasi ini, set properti dapat ditransaksikan hanya jika PROPSETFLAG_NONSIMPLE ditentukan. Metode ini mengharuskan mode berbagi yang ditentukan dalam parameter grfMode STGM_SHARE_EXCLUSIVE, dan bahwa mode akses STGM_READ atau STGM_READWRITE (mode STGM_WRITE tidak didukung).

IPropertySetStorage::Open

Membuka properti yang sudah ada yang diatur dalam penyimpanan properti saat ini. Sebagai gantinya, ia memasok penunjuk antarmuka ke implementasi file majemuk IPropertyStorage. Metode ini mengharuskan mode berbagi yang ditentukan dalam parameter grfMode STGM_SHARE_EXCLUSIVE, dan bahwa mode akses STGM_READ atau STGM_READWRITE (STGM_WRITE tidak didukung).

IPropertySetStorage::D elete

Menghapus properti yang diatur dalam penyimpanan properti ini.

IPropertySetStorage::Enum

Membuat objek yang digunakan untuk menghitung struktur STATPROPSETSTG . Setiap struktur STATPROPSETSTG menyediakan data tentang satu set properti.

Keterangan

Dimulai dengan Windows 2000, implementasi file majemuk IPropertySetStorage mendukung mode sederhana. Mode sederhana ditunjukkan dengan menentukan bendera STGM_SIMPLE untuk fungsi StgCreateStorageEx dan StgOpenStorageEx . Jika file majemuk dibuka dalam mode sederhana, implementasi IPropertySetStorage terkait dibatasi sebagai berikut:

Set properti sederhana tidak dapat ditransaksikan. Anda tidak dapat menentukan STGM_TRANSACTED dalam parameter grfmode dari metode Buat dan Buka kecuali Anda juga menentukan PROPSETFLAG_NONSIMPLE dalam parameter grfFlags . Ketahuilah bahwa set properti sederhana dan tidak sederhana tidak terkait dengan set properti mode sederhana yang dijelaskan di atas. Untuk informasi selengkapnya tentang set properti sederhana dan nonsimple, lihat Penyimpanan dan Objek Aliran untuk Kumpulan Properti.

Catatan

Kumpulan properti DocumentSummaryInformation dan UserDefined unik karena mungkin memiliki dua bagian set properti. Untuk informasi selengkapnya, lihat Kumpulan Properti DocumentSummaryInformation dan UserDefined.

 

IPropertyStorage - Implementasi File Majemuk

IPropertySetStorage

IPropertyStorage

IStorage::Enumelements

Konstanta PROPSETFLAG

STATPROPSETSTG