invalid handle used
Esta ocorrência é disparada por funções de acesso direto a arquivo, como por exemplo fSeek(), fRead() e/ou fWrite(), quando o parâmetro informado como Handler de arquivo não for válido.
Exemplo da Ocorrência :
/*-------------------------------------------------------
/*-------------------------------------------------------
ERRO THREAD ([1872], user_, SRVTESTE) 16/02/2011 10:17:42
Stack :
invalid handle used in file C:\AdvTec9_101202a\lib_base\diskman.cpp at line 167
on GERAARQ(EXPSMB.PRW) 16/02/2011 10:15:18 line : 58
[build: 7.00.101202A-20110106]
[environment: ENVTESTE]
[thread: 1872]
[dbthread: 5060]
[rpodb: Top]
[localfiles: CTREE]
[remark: Executando: U_ExpSmB]
[threadtype: JobThread]
Called from U_EXPSMB(EXPSMB.PRW) 16/02/2011 10:15:18 line : 22
Called from WFLAUNCHER(WF.PRW) 16/09/2008 09:04:16 line : 348
-------------------------------------------------------*/
Causas prováveis :
Na maioria dos casos, uma ocorrência desta natureza é reproduzida com um código fonte Advpl que não verificou se a operação que retornou o handler de arquivo ( fCreate e/uo fOpen ) foram realizadas com sucesso. Em caso de falha em uma destas funções, o handler de arquivo retornado é -1 ( menos um ). Caso este handler seja utilizado nas funções fSeek, fRead, fWrite e funções correlatas, a aplicação será finalizada com a ocorrência de erro acima.
Ações corretivas :
O código fonte Advpl da função em questão deve tratar a condição de falha de abertura de arquivo, verificando se o handler de arquivo retornado pelas funções fCreate e/ou fOpen é um handler válido, informando maiores detalhes da falha obtendo um códugo de razão de falha utilizando a função fError(), e não permitindo a continuação do programa e/ou a chamada das funções subsequentes de manutenção de arquivo informando um handler inválido.
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas