CMemFile::anexar
telefonar Esta função para anexar um bloco de memória a CMemFile.
void Attach(
BYTE* lpBuffer,
UINT nBufferSize,
UINT nGrowBytes = 0
);
Parâmetros
lpBuffer
Ponteiro para o buffer seja anexada à CMemFile.nBufferSize
Um número inteiro que especifica o dimensionar do buffer em bytes.nGrowBytes
O incremento de alocação de memória em bytes.
Comentários
Isso faz com que CMemFile Para usar o bloco de memória que o arquivo de memória.
If nGrowBytes é 0, CMemFile definirá o tamanho do arquivo como nBufferSize. Isso significa que sistema autônomo dados na memória bloqueada antes de que foi anexado a CMemFile será usado sistema autônomo o arquivo. Arquivos de memória criados dessa maneira não podem ser personalizados.
Desde que o arquivo não pode ser personalizado, tenha cuidado para não causar CMemFile para tentar aumentar o arquivo. Por exemplo, não chamar o CMemFile substituições de CFile:Write para gravar após o participante ou não chamar CFile:SetLength com comprimento maior que nBufferSize.
If nGrowBytes é maior que 0, CMemFile irá ignorar o Sumário do bloco de memória que você tenha anexado. Você precisará gravar o Sumário do arquivo de memória a partir do zero usando o CMemFile substituir do CFile::Write. Se você tentar gravar após o participante do arquivo ou aumentar o arquivo chamando o CMemFile substituir do CFile::SetLength, CMemFile a alocação de memória em incrementos de crescimento nGrowBytes. Aumentando a alocação de memória falhará se o bloco de memória que você passar para Anexar não foi alocado um método compatível com Alocação.Para ser compatível com a implementação padrão de Alloc, você deve alocar a memória com a função de biblioteca de time de execução malloc or calloc.
Requisitos
Cabeçalho: afx.h