Voltar à lista
Windows Win32Arquivos & E/Skernel32.dll

WriteFile

Escreve dados em um arquivo ou dispositivo referenciado por um HANDLE, de forma síncrona ou assíncrona.

Descrição

Contraparte de escrita de ReadFile, com o mesmo suporte a I/O overlapped assíncrono.

Header: fileapi.hDLL: kernel32.dllNative API: NtWriteFile

Assinatura

BOOL WriteFile(
    HANDLE hFile,
    LPCVOID lpBuffer,
    DWORD nNumberOfBytesToWrite,
    LPDWORD lpNumberOfBytesWritten,
    LPOVERLAPPED lpOverlapped
);

Parâmetros

ParâmetroTipoDescrição
hFileHANDLEHandle do arquivo/dispositivo, aberto com acesso de escrita.
lpBufferLPCVOIDBuffer de origem.
nNumberOfBytesToWriteDWORDNúmero de bytes a escrever.
lpNumberOfBytesWrittenLPDWORDRecebe o número de bytes efetivamente escritos.
lpOverlappedLPOVERLAPPEDEstrutura para I/O assíncrono, ou NULL para I/O síncrono.

Valor de retorno

Diferente de zero em sucesso; 0 em erro (consulte GetLastError).

Códigos de erro (GetLastError)

ERROR_IO_PENDING(997)
A operação de E/S sobreposta (overlapped) foi enfileirada e será concluída de forma assíncrona.
ERROR_INVALID_HANDLE(6)
O identificador (handle) informado é inválido.
ERROR_DISK_FULL(112)
Não há espaço suficiente no disco.
ERROR_BROKEN_PIPE(109)
O pipe foi encerrado (broken pipe).

Relacionadas