Bagikan melalui


Kelas CSharedFile

Kelas turunan CMemFile yang mendukung file memori bersama.

Sintaks

class CSharedFile : public CMemFile

Anggota

Konstruktor Publik

Nama Deskripsi
CSharedFile::CSharedFile Membuat CSharedFile objek.

Metode Publik

Nama Deskripsi
CSharedFile::D etach Menutup file memori bersama dan mengembalikan handel blok memorinya.
CSharedFile::SetHandle Melampirkan file memori bersama ke blok memori.

Keterangan

File memori berulah seperti file disk. Perbedaannya adalah, file memori disimpan dalam RAM daripada pada disk. File memori berguna untuk penyimpanan sementara yang cepat, atau untuk mentransfer byte mentah atau objek berseri antara proses independen.

File memori bersama berbeda dari file memori lain dalam memori tersebut untuk file tersebut dialokasikan dengan fungsi Windows GlobalAlloc . Kelas CSharedFile menyimpan data dalam blok memori yang dialokasikan secara global (dibuat menggunakan GlobalAlloc), dan blok memori ini dapat dibagikan menggunakan DDE, Clipboard, atau operasi transfer data seragam OLE/COM lainnya, misalnya, menggunakan IDataObject.

GlobalAlloc mengembalikan handel HGLOBAL daripada pointer ke memori, seperti pointer yang dikembalikan oleh malloc. Handel HGLOBAL diperlukan dalam aplikasi tertentu. Misalnya, untuk menempatkan data di Clipboard, Anda memerlukan handel HGLOBAL.

CSharedFile tidak menggunakan file yang dipetakan memori, dan data tidak dapat dibagikan secara langsung di antara proses.

CSharedFile objek dapat secara otomatis mengalokasikan memori mereka sendiri. Atau, Anda dapat melampirkan blok memori Anda sendiri ke CSharedFile objek dengan memanggil CSharedFile::SetHandle. Dalam kedua kasus, memori untuk menumbuhkan file memori secara otomatis dialokasikan dalam nGrowByteskenaikan berukuran -jika nGrowBytes bukan nol.

Untuk informasi selengkapnya, lihat artikel File di MFC dan Penanganan File di Referensi Pustaka Run-Time.

Hierarki Warisan

CObject

CFile

CMemFile

CSharedFile

Persyaratan

Header: afxadv.h

CSharedFile::CSharedFile

Membuat CSharedFile objek dan mengalokasikan memori untuk objek tersebut.

CSharedFile(
    UINT nAllocFlags = GMEM_DDESHARE | GMEM_MOVEABLE,
    UINT nGrowBytes = 4096);

Parameter

nAllocFlags
Bendera yang menunjukkan bagaimana memori akan dialokasikan. Lihat GlobalAlloc untuk daftar nilai bendera yang valid.

nGrowBytes
Kenaikan alokasi memori dalam byte.

CSharedFile::D etach

Panggil fungsi ini untuk menutup file memori dan melepaskannya dari blok memori.

HGLOBAL Detach();

Tampilkan Nilai

Handel blok memori yang berisi isi file memori.

Keterangan

Anda dapat membukanya kembali dengan memanggil SetHandle, menggunakan handel yang dikembalikan oleh Lepaskan.

CSharedFile::SetHandle

Panggil fungsi ini untuk melampirkan blok memori global ke CSharedFile objek.

void SetHandle(
    HGLOBAL hGlobalMemory,
    BOOL bAllowGrow = TRUE);

Parameter

hGlobalMemory
Tangani ke memori global yang akan dilampirkan ke CSharedFile.

bAllowGrow
Menentukan apakah blok memori diizinkan untuk tumbuh.

Keterangan

Jika bAllowGrow bukan nol, ukuran blok memori ditingkatkan seperlunya, misalnya, jika Anda mencoba menulis lebih banyak byte ke file daripada ukuran blok memori.

Lihat juga

Kelas CMemFile
Bagan Hierarki
Kelas CMemFile