Compartilhar via


CeSetFilePointer (RAPI)

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função move o ponteiro arquivo de um aberto arquivo em um remoto dispositivo baseado em Windows Embedded CE.

Syntax

DWORD CeSetFilePointer( 
  HANDLE hFile, 
  LONG lDistanceToMove, 
  PLONG lpDistanceToMoveHigh, 
  DWORD dwMoveMethod 
);

Parameters

  • hFile
    [no] Identificador para o arquivo cujo ponteiro arquivo é a ser movido. O identificador de arquivo deve ter sido criado com acessar GENERIC_READ ou GENERIC_WRITE para o arquivo.
  • lDistanceToMove
    Baixo-ordem 32 bits de um valor assinado que especifica o número de bytes para mover o ponteiro arquivo. Se lpDistanceToMoveHigh não é NULL, lpDistanceToMoveHigh e lDistanceToMove forma uma única 64-bit valor assinado que especifica a distância para mover. Se lpDistanceToMoveHigh é NULL, lDistanceToMove é um 32-bit valor assinado. Um valor positivo para lDistanceToMove move o ponteiro arquivo ENC no arquivo, e um valor negativo move o ponteiro arquivo com versões anteriores.
  • lpDistanceToMoveHigh
    [no] Não com suporte; deve ser NULL ou apontar para um valor de 0. .
  • dwMoveMethod
    [no] Especifica a raiz para mover o ponteiro arquivo. Este parâmetro pode ser uma dos seguinte valores.

    Valor Descrição

    FILE_BEGIN

    A raiz é zero ou início do arquivo.

    FILE_CURRENT

    A raiz é o atual valor do ponteiro de arquivo.

    FILE_END

    A raiz é o atual fim - do - arquivo posição.

Return Value

A baixa-ordem DWORD do arquivo novo ponteiro indica êxito e que lpDistanceToMoveHigh é NULL. Se lpDistanceToMoveHigh não é NULL, a função retorna a ordem baixa DWORD do ponteiro de arquivo novo e coloca o alto-ordem DWORD do novo ponteiro arquivo para o EXTENSA apontada por esse parâmetro.

Se a função falha e lpDistanceToMoveHigh é NULL, o valor de retorno é 0xFFFFFFFF. Para informações de erro estendidas get, chamar CeGetLastError e CeRapiGetError.

Se a função falhar, e lpDistanceToMoveHigh não-NULL, o valor de retorno é 0xFFFFFFFF. No entanto, como 0xFFFFFFFF é um válido valor para o baixo-ordem DWORD do ponteiro de arquivo novo, você deve verificar CeGetLastError Para determinar se um erro ocorreu. Se um erro ocorreu, CeGetLastError Retorna um valor Other Than NO_ERROR. Para um exemplo de código que ilustra este apontar, consulte " Comentários ".

Se o novo ponteiro arquivo teria sido um valor negativo, o função falhar, o ponteiro arquivo não é movido e a codificar retornado por CeGetLastError é ERROR_NEGATIVE_SEEK.

Remarks

Não é possível usar o CeSetFilePointer função com um identificador para um non-seeking such as dispositivo de comunicação.

Você pode usar o CeSetFilePointer função para consulta o atual arquivo ponteiro posição. Para fazer isso, especificar um método mover do FILE_CURRENT e a uma distância de zero.

Você deve ser cuidadoso ao configuração o ponteiro arquivo em um aplicativo multi-segmentado. De exemplo, um aplicativo cujo compartilhar segmentos um identificador de arquivo, atualização ponteiro de arquivo e ler a partir de arquivo devem proteger essa seqüência usando um crítico objeto seção ou objeto mutex. Para obter mais informações sobre esses objetos, consulte Trabalhando com processos e segmentos.

Não é um erro para definir o ponteiro arquivo para uma posição além do fim do arquivo. O tamanho do arquivo não aumenta até você chamar o CeSetEndOfFile Ou CeWriteFile função. Um operação de gravação aumenta o tamanho do arquivo para a posição ponteiro arquivo juntamente com o tamanho da reserva gravada, deixando os bytes intermediárias não inicializado.

Requirements

Header rapi.h
Library rapi.lib
Windows Embedded CE Windows CE 3.0 and later
Windows Mobile Pocket PC 2002 and later, Smartphone 2002 and later

See Also

Reference

RAPI Functions
CeReadFile (RAPI)