Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Fungsi
Aplikasi yang ditulis untuk Windows 2000, Windows Server 2003 dan Windows XP harus menggunakan StgCreateStorageEx daripada StgCreateDocfile untuk memanfaatkan fitur Windows 2000 dan Windows XP Structured Storage yang ditingkatkan.
Sintaksis
HRESULT StgCreateStorageEx(
[in] const WCHAR *pwcsName,
[in] DWORD grfMode,
[in] DWORD stgfmt,
[in] DWORD grfAttrs,
[in] STGOPTIONS *pStgOptions,
[in] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in] REFIID riid,
[out] void **ppObjectOpen
);
Parameter
[in] pwcsName
Penunjuk ke jalur file yang akan dibuat. Ini diteruskan tanpa diinterpretasikan ke sistem file. Ini bisa menjadi nama relatif atau NULL. Jika NULL, file sementara dialokasikan dengan nama unik. Jika non-NULL, ukuran string tidak boleh melebihi karakter MAX_PATH.
[in] grfMode
Nilai yang menentukan mode akses yang akan digunakan saat membuka objek penyimpanan baru. Untuk informasi selengkapnya, lihat Konstanta STGM. Jika penelepon menentukan mode yang ditransaksikan bersama dengan STGM_CREATE atau STGM_CONVERT, penimpaan atau konversi terjadi saat operasi penerapan dipanggil untuk penyimpanan akar. Jika IStorage::Commit tidak dipanggil untuk objek penyimpanan akar, konten file sebelumnya akan dipulihkan. STGM_CREATE dan STGM_CONVERT tidak dapat dikombinasikan dengan bendera STGM_NOSNAPSHOT, karena salinan rekam jepret diperlukan saat file ditimpa atau dikonversi dalam mode yang ditransaksikan.
[in] stgfmt
Nilai yang menentukan format file penyimpanan. Untuk informasi selengkapnya, lihat enumerasi STGFMT
[in] grfAttrs
Nilai yang bergantung pada nilai parameter stgfmt
| Nilai Parameter | Arti |
|---|---|
|
0, atau FILE_FLAG_NO_BUFFERING. Untuk informasi selengkapnya, lihat CreateFile. Jika ukuran sektor file, yang ditentukan dalam pStgOptions, bukan kelipatan bilangan bulat dari ukuran sektor fisik disk yang mendasar, operasi ini akan gagal. |
|
Harus 0. |
[in] pStgOptions
Parameter
[in] pSecurityDescriptor
Memungkinkan ACL diatur saat file dibuat. Jika tidak null, perlu menjadi penunjuk ke struktur SECURITY_ATTRIBUTES. Lihat CreateFile untuk informasi tentang cara mengatur ACL pada file.
Windows Server 2003, Windows 2000 Server, Windows XP dan Windows 2000 Professional: nilai harus NULL.
[in] riid
Nilai yang menentukan pengidentifikasi antarmuka (IID) penunjuk antarmuka yang akan dikembalikan. IID ini mungkin untuk antarmuka IStorage
[out] ppObjectOpen
Penunjuk ke variabel penunjuk antarmuka yang menerima pointer untuk antarmuka pada objek penyimpanan baru; berisi NULL
Mengembalikan nilai
Fungsi ini juga dapat mengembalikan kesalahan sistem file atau kesalahan sistem yang dibungkus dalam HRESULT. Untuk informasi selengkapnya, lihat Strategi Penanganan Kesalahan dan Menangani Kesalahan yang Tidak Diketahui.
Komentar
Ketika aplikasi memodifikasi filenya, aplikasi biasanya membuat salinan aslinya. Fungsi StgCreateStorageEx adalah salah satu cara untuk membuat salinan. Fungsi ini bekerja secara tidak langsung dengan API duplikasi Encrypting File System (EFS). Ketika Anda menggunakan fungsi ini, Anda harus mengatur opsi untuk penyimpanan file dalam struktur STGOPTIONS
Fungsi StgCreateStorageEx membuat objek penyimpanan baru menggunakan salah satu implementasi penyimpanan terstruktur yang disediakan sistem. Fungsi ini dapat digunakan untuk mendapatkan
implementasi file majemuk IStorage, implementasi file majemuk IPropertySetStorage, atau untuk mendapatkan implementasi IPropertySetStorage NTFS .
Saat file baru dibuat, implementasi penyimpanan yang digunakan bergantung pada bendera yang Anda tentukan dan pada jenis drive tempat file disimpan. Untuk informasi selengkapnya, lihat enumerasi STGFMT
StgCreateStorageEx membuat file jika tidak ada. Jika memang ada, penggunaan bendera STGM_CREATE, STGM_CONVERT, dan STGM_FAILIFTHERE dalam parameter
Anda dapat menggunakan fungsi
Ketika file dibuat dengan fungsi ini untuk mengakses implementasi kumpulan properti NTFS, aturan berbagi khusus berlaku. Untuk informasi selengkapnya, lihatImplementasi
Jika file majemuk dibuat dalam mode yang ditransaksikan (dengan menentukan STGM_TRANSACTED) dan mode baca-saja (dengan menentukan STGM_READ), dimungkinkan untuk membuat perubahan pada objek penyimpanan yang dikembalikan. Misalnya, dimungkinkan untuk memanggil IStorage::CreateStream. Namun, tidak mungkin untuk menerapkan perubahan tersebut dengan memanggil IStorage::Commit. Oleh karena itu, perubahan tersebut akan hilang.
Menentukan STGM_SIMPLE menyediakan implementasi objek file mampul yang jauh lebih cepat dalam kasus yang terbatas, tetapi sering digunakan yang melibatkan aplikasi yang memerlukan implementasi file gabungan dengan beberapa aliran dan tanpa penyimpanan. Untuk informasi selengkapnya, lihat Konstanta STGM. Tidak valid untuk menentukan bahwa STGM_TRANSACTED jika STGM_SIMPLE ditentukan.
Mode sederhana tidak mendukung semua metode pada IStorage. Secara khusus, dalam mode sederhana, metode IStorage
Jika parameter
Anda juga dapat menggunakan
Persyaratan
| Syarat | Nilai |
|---|---|
| klien minimum yang didukung | Windows 2000 Professional [aplikasi desktop | Aplikasi UWP] |
| server minimum yang didukung |
Windows 2000 Server [aplikasi desktop | Aplikasi UWP] |
| Platform Target |
Windows |
| Header |
coml2api.h (termasuk Objbase.h) |
| Pustaka |
Ole32.lib |
| DLL |
Ole32.dll |
Lihat juga
STGFMT
Konstanta STGM
STGOPTIONS