Fungsi ReleaseStgMedium (ole2.h)
Membebaskan media penyimpanan yang ditentukan.
Sintaks
void ReleaseStgMedium(
LPSTGMEDIUM unnamedParam1
);
Parameter
unnamedParam1
Nilai kembali
Tidak ada
Keterangan
Fungsi ReleaseStgMedium memanggil metode atau fungsi yang sesuai untuk merilis media penyimpanan yang ditentukan. Gunakan fungsi ini selama operasi transfer data di mana struktur medium penyimpanan adalah parameter, seperti IDataObject::GetData atau IDataObject::SetData. Selain mengidentifikasi jenis media penyimpanan, struktur ini menentukan metode Rilis yang sesuai untuk merilis media penyimpanan saat tidak lagi diperlukan.
Adalah umum untuk meneruskan STGMEDIUM dari satu isi kode ke isi kode lainnya, seperti di IDataObject::GetData, di mana yang dipanggil dapat mengalokasikan media dan mengembalikannya ke pemanggil. ReleaseStgMedium memungkinkan fleksibilitas apakah badan penerima kode memiliki media, atau apakah penyedia asli media masih memilikinya, dalam hal ini kode penerima perlu memberi tahu penyedia bahwa kode tersebut dapat membebaskan media.
Ketika penyedia asli media bertanggung jawab untuk membebaskan media, penyedia memanggil ReleaseStgMedium, menentukan pointer IUnknown yang sesuai sebagai anggota struktur punkForRelease . Bergantung pada jenis media penyimpanan yang dibebaskan, salah satu tindakan berikut diambil, diikuti dengan panggilan ke metode IUnknown::Release pada pointer IUnknown yang ditentukan.
Medium | Tindakan ReleaseStgMedium |
---|---|
TYMED_HGLOBAL | Tidak ada. |
TYMED_GDI | Tidak ada. |
TYMED_ENHMF | Tidak ada. |
TYMED_MFPICT | Tidak ada. |
TYMED_FILE | Membebaskan string nama file menggunakan mekanisme manajemen memori standar. |
TYMED_ISTREAM | Memanggil IStream::Release. |
TYMED_ISTORAGE | Memanggil IStorage::Release. |
Penyedia menunjukkan bahwa penerima media bertanggung jawab untuk membebaskan media dengan menentukan NULL untuk anggota struktur punkForRelease . Kemudian penerima memanggil ReleaseStgMedium, yang melakukan panggilan seperti yang dijelaskan dalam tabel berikut tergantung pada jenis media penyimpanan yang dibebaskan.
Medium | Tindakan ReleaseStgMedium |
---|---|
TYMED_HGLOBAL | Memanggil fungsi GlobalFree pada handel. |
TYMED_GDI | Memanggil fungsi DeleteObject pada handel. |
TYMED_ENHMF | Menghapus metafile yang ditingkatkan. |
TYMED_MFPICT | HMF yang dikandungnya dihapus dengan fungsi DeleteMetaFile ; kemudian handel itu sendiri diteruskan ke GlobalFree. |
TYMED_FILE | Membebaskan file disk dengan menghapusnya. Membebaskan string nama file dengan menggunakan mekanisme manajemen memori standar. |
TYMED_ISTREAM | Memanggil IStream::Release. |
TYMED_ISTORAGE | Memanggil IStorage::Release. |
Dalam kedua kasus, setelah panggilan ke ReleaseStgMedium, media penyimpanan yang ditentukan tidak valid dan tidak dapat digunakan lagi.
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 | ole2.h |
Pustaka | Ole32.lib |
DLL | Ole32.dll |
Set API | ext-ms-win-com-ole32-l1-1-3 (diperkenalkan dalam Windows 10, versi 10.0.10240) |