Erros de Compilação
Moderador: Moderadores
Erros de Compilação
Srs, boa tarde!
Estou tentando converter um antigo sistema Clipper para Harbour, mas estou encontrando algumas dificuldades na compilação. Li todas as instruções passadas o colega Maurício Elias no tópico "Preciso migrar para o xHarbour" (viewtopic.php?f=4&t=14977#p87878) criei o arquivo HBP com todos os PRGs... acrescentei a funcção MAIN() ao PRG principal, retirei as poucas chamadas que haviam usando o "DO", mas ainda está apresentando algumas mensagens de erro na compilação que não estou conseguindo entender...Alguém poderia me ajudar por favor?!...
Abaixo segue linhas apresentadas quando tento compilar os prgs:
C:\Meus_Arq\clip52e\Harbour\SGC_HA~1>hbmk2 sgchb
hbmk2: Processando opções do ambiente: -comp=mingw
Harbour 3.2.0dev (r1405201749)
Copyright (c) 1999-2014, http://harbour-project.org/
Compiling 'SGC.PRG'...
Lines 1739, Functions/Procedures 5
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\SGC.c'... Done.
Compiling 'BOOK.PRG'...
Lines 2111, Functions/Procedures 41
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\BOOK.c'... Done.
Compiling 'GCBOOK.prg'...
Lines 2458, Functions/Procedures 28
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GCBOOK.c'... Done.
Compiling 'GCTABE.prg'...
Lines 2549, Functions/Procedures 29
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GCTABE.c'... Done.
Compiling 'GCOPEN.prg'...
Lines 1510, Functions/Procedures 81
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GCOPEN.c'... Done.
Compiling 'GC0001.prg'...
Lines 1745, Functions/Procedures 13
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GC0001.c'... Done.
Cannot open #.prg, assumed external
No code generated.
hbmk2[sgchb]: Erro: Executando o compilador Harbour (interno): 1
C:\Meus_Arq\clip52e\Harbour\SGC_HA~1>
Grato,
Joaquim
Estou tentando converter um antigo sistema Clipper para Harbour, mas estou encontrando algumas dificuldades na compilação. Li todas as instruções passadas o colega Maurício Elias no tópico "Preciso migrar para o xHarbour" (viewtopic.php?f=4&t=14977#p87878) criei o arquivo HBP com todos os PRGs... acrescentei a funcção MAIN() ao PRG principal, retirei as poucas chamadas que haviam usando o "DO", mas ainda está apresentando algumas mensagens de erro na compilação que não estou conseguindo entender...Alguém poderia me ajudar por favor?!...
Abaixo segue linhas apresentadas quando tento compilar os prgs:
C:\Meus_Arq\clip52e\Harbour\SGC_HA~1>hbmk2 sgchb
hbmk2: Processando opções do ambiente: -comp=mingw
Harbour 3.2.0dev (r1405201749)
Copyright (c) 1999-2014, http://harbour-project.org/
Compiling 'SGC.PRG'...
Lines 1739, Functions/Procedures 5
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\SGC.c'... Done.
Compiling 'BOOK.PRG'...
Lines 2111, Functions/Procedures 41
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\BOOK.c'... Done.
Compiling 'GCBOOK.prg'...
Lines 2458, Functions/Procedures 28
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GCBOOK.c'... Done.
Compiling 'GCTABE.prg'...
Lines 2549, Functions/Procedures 29
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GCTABE.c'... Done.
Compiling 'GCOPEN.prg'...
Lines 1510, Functions/Procedures 81
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GCOPEN.c'... Done.
Compiling 'GC0001.prg'...
Lines 1745, Functions/Procedures 13
Generating C source output to 'C:\Users\JOAQUI~1.ARA\AppData\Local\Temp\hbmk_wg3
h80.dir\GC0001.c'... Done.
Cannot open #.prg, assumed external
No code generated.
hbmk2[sgchb]: Erro: Executando o compilador Harbour (interno): 1
C:\Meus_Arq\clip52e\Harbour\SGC_HA~1>
Grato,
Joaquim
-
Maurício Elias
- Usuário Nível 3

- Mensagens: 304
- Registrado em: 12 Mai 2005 08:48
Erros de Compilação
Olá Joaquim, boa tarde.
Se eu aprendi direito, vou tentar ajudar.
Eu confundi tb, todas essas linha com final ...Done. foram compiladas corretamente.
Até o GC0001.PRG foi tudo bem, mas parece q ele abortou pq vc colocou lá no seu .HBP um #.prg
Tenta rever isso...
Se eu aprendi direito, vou tentar ajudar.
Eu confundi tb, todas essas linha com final ...Done. foram compiladas corretamente.
Até o GC0001.PRG foi tudo bem, mas parece q ele abortou pq vc colocou lá no seu .HBP um #.prg
Tenta rever isso...
Abraços.
_______
Maurício
_______
Maurício
- Nascimento
- Usuário Nível 4

- Mensagens: 763
- Registrado em: 19 Jul 2008 12:11
- Localização: OLINDA-PE
Erros de Compilação
isso provavelmente no arquivo .hbp tem a chamada desse #.prg por isso esta abortando a compilaçao
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina
clipper 5.3 /harbour/minigui
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Erros de Compilação
Olá!
Estranho isso pois # é indicativo de comentário nos arquivos .Hbp.
O ideal seria postar os teus arquivos de compilação para análise. Inclua os conteúdos entre as tags code na tool bar da janela "Postar uma resposta".
Estranho isso pois # é indicativo de comentário nos arquivos .Hbp.
O ideal seria postar os teus arquivos de compilação para análise. Inclua os conteúdos entre as tags code na tool bar da janela "Postar uma resposta".
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
Erros de Compilação
Maurício Elias escreveu:Olá Joaquim, boa tarde.
Se eu aprendi direito, vou tentar ajudar.
Eu confundi tb, todas essas linha com final ...Done. foram compiladas corretamente.
Até o GC0001.PRG foi tudo bem, mas parece q ele abortou pq vc colocou lá no seu .HBP um #.prg
Tenta rever isso...
Josivan Nascimento escreveu:isso provavelmente no arquivo .hbp tem a chamada desse #.prg por isso esta abortando a compilaçao
Srs, antes de mais nada, muito obrigado pelo retorno de vocês!...alxsts escreveu:Olá!
Estranho isso pois # é indicativo de comentário nos arquivos .Hbp.
O ideal seria postar os teus arquivos de compilação para análise. Inclua os conteúdos entre as tags code na tool bar da janela "Postar uma resposta".
De fato havia colocado "#" como comentários ao lado dos prgs, preservando o que já tinha nos arquivos de compilação antigos, pois fica mais fácil saber o que cada prg significa!.. Removi o "#" e consegui compilar, mas agora estou com outro problema: uso algumas funções do blinker e elas não estão sendo reconhecidas pelo Harbour... tem como acrescentar as libs do blinker?!...
Abaixo segue detalhe da compilação:
C:\Meus_Arq\clip52e\Harbour\SGC_Harbour>hbmk2 sgchb
hbmk2: Processando opções do ambiente: -comp=mingw
.hbmk/win/mingw/SGC.o:SGC.c:(.data+0xc28): undefined reference to `HB_FUN_SWPRUN
CMD'
.hbmk/win/mingw/GCBOOK.o:GCBOOK.c:(.data+0x5f8): undefined reference to `HB_FUN_
SWPRUNCMD'
.hbmk/win/mingw/GCBOOK.o:GCBOOK.c:(.data+0xb78): undefined reference to `HB_FUN_
RESTSCREENN'
.hbmk/win/mingw/GCBOOK.o:GCBOOK.c:(.data+0xba8): undefined reference to `HB_FUN_
FLOPPYTYPE'
.hbmk/win/mingw/GCBOOK.o:GCBOOK.c:(.data+0xbd8): undefined reference to `HB_FUN_
DISKREADY'
.hbmk/win/mingw/GCBOOK.o:GCBOOK.c:(.data+0xc18): undefined reference to `HB_FUN_
DISKFREE'
.hbmk/win/mingw/GCBOOK.o:GCBOOK.c:(.data+0xc58): undefined reference to `HB_FUN_
FT_ONTICK'
.hbmk/win/mingw/GC0020.o:GC0020.c:(.data+0x1568): undefined reference to `HB_FUN
_SWPRUNCMD'
.hbmk/win/mingw/GC0018.o:GC0018.c:(.data+0xcf8): undefined reference to `HB_FUN_
SWPRUNCMD'
.hbmk/win/mingw/GC0015.o:GC0015.c:(.data+0x16c8): undefined reference to `HB_FUN
_SWPRUNCMD'
collect2: ld returned 1 exit status
hbmk2[sgchb]: Erro: Executando linkeditor. 1
C:\Meus_Arq\clip52e\Harbour\SGC_Harbour>
-
Maurício Elias
- Usuário Nível 3

- Mensagens: 304
- Registrado em: 12 Mai 2005 08:48
Erros de Compilação
Olá grande, não desanime não, como eu fiz da primeira vez. Depois q funciona é muito bom.
Tem esse detalhe, vc não aproveita nada de OBJ e LIB, tem q reescrever ou pegar pronto. Eu peguei Extenso(), CGC(), CPF(), e assim vai. Lá aonde vc estudou minha migração tem um monte de uploads do Toledo.
Esse comandos do Blinker, esquece.
SWPRUNCMD substitua pelo RUN
RESTSCREENN está com 2 NN
FLOPPYTYPE e demais substitua por outro tipo de comando, ou desativa do fonte.
Tenta lá... O importante é conseguir a primeira compilação.
Tem esse detalhe, vc não aproveita nada de OBJ e LIB, tem q reescrever ou pegar pronto. Eu peguei Extenso(), CGC(), CPF(), e assim vai. Lá aonde vc estudou minha migração tem um monte de uploads do Toledo.
Esse comandos do Blinker, esquece.
SWPRUNCMD substitua pelo RUN
RESTSCREENN está com 2 NN
FLOPPYTYPE e demais substitua por outro tipo de comando, ou desativa do fonte.
Tenta lá... O importante é conseguir a primeira compilação.
Abraços.
_______
Maurício
_______
Maurício
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Erros de Compilação
Oi,
Veja os comandos do Blinker que estão no harbour.
Dentro da pasta /contrib/hbblink tem esse arquivo:
Acrescente no seu arquivo;
hbmk2 xyz.hbp -hbblink.hbc
Saudações,
Itamar M. Lins Jr.
Veja os comandos do Blinker que estão no harbour.
Código: Selecionar todos
hbblink.hbc (instalado):
BliCpuRel()
BliDbgHan()
BliDemDte()
BliDemDteBas()
BliDemMin()
BliDisFrg()
BliErrNum()
BliErrPrm()
BliErrPrmBas()
BliFunCal()
BliFunHan()
BliLibFre()
BliLibLib()
BliLibOvr()
BliLstFrg()
BliMemAvl()
BliMemBlk()
BliMemPak()
BliMemSiz()
BliMemUse()
BliMgrSts()
BliOvlClr()
BliOvlOps()
BliOvlRes()
BliOvlSiz()
BliOvlSus()
BliPtrDec()
BliPtrInc()
BliSerNum()
BliSerNumBas()
BliStrFrg()
BliVerNum()
hb_BliDemDte()
hb_BliDemMin()
hb_BliVerNum()
Código: Selecionar todos
/*
* Harbour Project source code:
* Blinker compatibility functions.
*
* Copyright 2010 Viktor Szakats (vszakats.net/harbour)
* www - http://harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this software; see the file COPYING.txt. If not, write to
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
* Boston, MA 02111-1307 USA (or visit the web site https://www.gnu.org/).
*
* As a special exception, the Harbour Project gives permission for
* additional uses of the text contained in its release of Harbour.
*
* The exception is that, if you link the Harbour libraries with other
* files to produce an executable, this does not by itself cause the
* resulting executable to be covered by the GNU General Public License.
* Your use of that executable is in no way restricted on account of
* linking the Harbour library code into it.
*
* This exception does not however invalidate any other reasons why
* the executable file might be covered by the GNU General Public License.
*
* This exception applies only to the code released by the Harbour
* Project under the name Harbour. If you copy code from other
* Harbour Project or Free Software Foundation releases into a copy of
* Harbour, as the General Public License permits, the exception does
* not apply to the code that you add in this way. To avoid misleading
* anyone as to the status of such modified files, you must delete
* this exception notice from them.
*
* If you write modifications of your own for Harbour, it is your choice
* whether to permit this exception to apply to your modifications.
* If you do not wish that, delete this exception notice.
*
*/
#include "hbhrb.ch"
#include "hbmemory.ch"
#include "hbblink.ch"
STATIC s_cSerialNum := ""
STATIC s_cDemoDate := ""
STATIC s_nDemoMinutes := 0
STATIC s_nError := 0
STATIC s_cErrorParam := ""
STATIC s_lLibOverrides := .F.
THREAD STATIC t_nErrorLevel := 0
THREAD STATIC t_nErrorMaj := 0
THREAD STATIC t_nErrorMin := 0
PROCEDURE hb_BliVerNum( cString )
IF HB_ISSTRING( cString )
s_cSerialNum := cString
ENDIF
RETURN
PROCEDURE hb_BliDemDte( dDate )
IF HB_ISDATE( dDate )
s_cDemoDate := DToS( dDate )
ENDIF
RETURN
PROCEDURE hb_BliDemMin( nValue )
IF HB_ISNUMERIC( nValue )
s_nDemoMinutes := nValue
ENDIF
RETURN
FUNCTION BliDbgHan( nValue )
STATIC s_nDebugHandle := 1
LOCAL nOldValue := s_nDebugHandle
IF HB_ISNUMERIC( nValue )
s_nDebugHandle := nValue
ENDIF
RETURN nOldValue
FUNCTION BliDemDte()
RETURN s_cDemoDate
FUNCTION BliDemDteBas()
RETURN s_cDemoDate
FUNCTION BliDemMin( nValue )
LOCAL nOldValue := s_nDemoMinutes
IF HB_ISNUMERIC( nValue )
s_nDemoMinutes := nValue
ENDIF
RETURN nOldValue
PROCEDURE BliDisFrg( fhnd )
HB_SYMBOL_UNUSED( fhnd )
RETURN
FUNCTION BliErrNum()
RETURN s_nError
FUNCTION BliErrPrm()
RETURN s_cErrorParam
FUNCTION BliErrPrmBas()
RETURN s_cErrorParam
/* INCOMPATIBLE: Will return pointer instead of numeric. */
FUNCTION BliLibLib( cLib )
RETURN iif( s_lLibOverrides, hb_hrbLoad( HB_HRB_BIND_OVERLOAD, cLib ), hb_hrbLoad( cLib ) )
/* INCOMPATIBLE: Will return array instead of numeric. */
FUNCTION BliFunHan( pLib, cFunction )
RETURN hb_hrbGetFunSym( pLib, cFunction )
FUNCTION BliFunCal( ... )
LOCAL aParams := hb_AParams()
LOCAL pFunction
IF Len( aParams ) > 0
pFunction := ATail( aParams )
ASize( aParams, Len( aParams ) - 1 )
RETURN hb_hrbDo( pFunction, hb_ArrayToParams( aParams ) )
ENDIF
RETURN NIL
PROCEDURE BliLibFre( pLib )
hb_hrbUnload( pLib )
RETURN
PROCEDURE BliLibOvr( lValue )
IF HB_ISLOGICAL( lValue )
s_lLibOverrides := lValue
ENDIF
RETURN
PROCEDURE BliLstFrg( fhnd )
HB_SYMBOL_UNUSED( fhnd )
RETURN
FUNCTION BliMemAvl()
RETURN Memory( HB_MEM_CHAR )
FUNCTION BliMemSiz()
RETURN Memory( HB_MEM_CHAR )
FUNCTION BliMemBlk( nBlockSize )
HB_SYMBOL_UNUSED( nBlockSize )
RETURN Memory( HB_MEM_CHAR )
FUNCTION BliMemPak( nValue )
STATIC s_nGCFrequency := 0
LOCAL nOldValue := s_nDemoMinutes
IF HB_ISNUMERIC( nValue )
s_nGCFrequency := nValue
ENDIF
RETURN nOldValue
FUNCTION BliMemUse()
RETURN Memory( HB_MEM_USED )
PROCEDURE BliOvlClr()
RETURN
FUNCTION BliOvlOps()
RETURN Memory( HB_MEM_CHAR )
PROCEDURE BliOvlRes()
RETURN
FUNCTION BliOvlSiz()
RETURN 0
PROCEDURE BliOvlSus( nValue )
HB_SYMBOL_UNUSED( nValue )
RETURN
FUNCTION BliPtrDec( nPointer, nValue )
RETURN nPointer - nValue
FUNCTION BliPtrInc( nPointer, nValue )
RETURN nPointer + nValue
FUNCTION BliSerNum()
RETURN s_cSerialNum
FUNCTION BliSerNumBas()
RETURN s_cSerialNum
FUNCTION BliStrFrg( cString )
HB_SYMBOL_UNUSED( cString )
RETURN ""
FUNCTION BliVerNum()
RETURN 700
FUNCTION BliCpuRel()
RETURN hb_ReleaseCPU()
FUNCTION BliMgrSts( nParam )
SWITCH nParam
CASE BliCacheLoc ; RETURN BliCacheNone
CASE BliCacheSize ; RETURN 0
CASE BliExtMemAvail ; RETURN 0
CASE BliHostMode ; RETURN BliHostNone
CASE BliMachineMode ; RETURN BliMode286Prot
CASE BliOverlayLoc ; RETURN 0
CASE BliOverlaySize ; RETURN Memory( HB_MEM_CHAR )
CASE BliRealMemAvail ; RETURN Memory( HB_MEM_CHAR )
CASE BliVirMemAvail ; RETURN 0
ENDSWITCH
RETURN 0
FUNCTION SwpAddEnv( nBytes )
HB_SYMBOL_UNUSED( nBytes )
RETURN 32768
FUNCTION SwpAddStr( cPID, cString )
HB_SYMBOL_UNUSED( cPID )
HB_SYMBOL_UNUSED( cString )
RETURN 1
FUNCTION SwpAddStrBas( cPID, cString )
HB_SYMBOL_UNUSED( cPID )
HB_SYMBOL_UNUSED( cString )
RETURN 1
FUNCTION SwpCurDir( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .T.
FUNCTION SwpDisMsg( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpEms320( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpErrLev()
RETURN t_nErrorLevel
FUNCTION SwpErrMaj()
RETURN t_nErrorMaj
FUNCTION SwpErrMin()
RETURN t_nErrorMin
FUNCTION SwpFreEms( nLimitKB )
HB_SYMBOL_UNUSED( nLimitKB )
RETURN 0
FUNCTION SwpUseEms( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpFreXms( nLimitKB )
HB_SYMBOL_UNUSED( nLimitKB )
RETURN 0
FUNCTION SwpUseXms( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpUseUmb( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpGetKey( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpGetPid( cIDString )
HB_SYMBOL_UNUSED( cIDString )
RETURN .F.
FUNCTION SwpVidMde( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpGetStr()
RETURN ""
FUNCTION SwpKeyBrd( cKeyString )
HB_SYMBOL_UNUSED( cKeyString )
RETURN 0
FUNCTION SwpKeyBrdBas( cKeyString )
HB_SYMBOL_UNUSED( cKeyString )
RETURN 0
FUNCTION SwpKeyClr( nValue )
HB_SYMBOL_UNUSED( nValue )
RETURN 0
FUNCTION SwpNobOot( lValue )
HB_SYMBOL_UNUSED( lValue )
RETURN .F.
FUNCTION SwpRunCmd( cCommand, nMem, cRunPath, cTempPath )
HB_SYMBOL_UNUSED( nMem )
HB_SYMBOL_UNUSED( cRunPath )
HB_SYMBOL_UNUSED( cTempPath )
IF Empty( cCommand )
#if defined( __PLATFORM__UNIX )
cCommand := GetEnv( "SHELL" )
#else
cCommand := GetEnv( "COMSPEC" )
#endif
ENDIF
t_nErrorLevel := hb_run( cCommand )
RETURN ( t_nErrorLevel != -1 )
FUNCTION SwpSetEnv( cString )
LOCAL cPair
LOCAL tmp
FOR EACH cPair IN hb_ATokens( cString, hb_BChar( 255 ) )
IF ( tmp := At( "=", cPair ) ) > 0
hb_SetEnv( Left( cPair, tmp - 1 ), SubStr( cPair, tmp + 1 ) )
ENDIF
NEXT
RETURN .T.
FUNCTION SwpSetPid( cIDString )
HB_SYMBOL_UNUSED( cIDString )
RETURN .T.
FUNCTION SwpSetPidBas( cIDString )
HB_SYMBOL_UNUSED( cIDString )
RETURN .T.
FUNCTION SwpSetStr( cString )
HB_SYMBOL_UNUSED( cString )
RETURN .T.
FUNCTION SwpSetStrBas( cString )
HB_SYMBOL_UNUSED( cString )
RETURN .T.
hbmk2 xyz.hbp -hbblink.hbc
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Erros de Compilação
Para FT_Ontick use:
hbmk2 xyz.hbp -hbnf.hbc
Dica!
Para saber se a função existe no harbour use:
hbmk2 -find nomedafunção aceita curingas
hbmk2 -find ft_*
Saudações,
Itamar M. Lins Jr.
hbmk2 xyz.hbp -hbnf.hbc
Código: Selecionar todos
/*
* Harbour Project source code:
* ft_OnTick()
*
* Copyright 2011 Viktor Szakats (vszakats.net/harbour)
* www - http://harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this software; see the file COPYING.txt. If not, write to
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
* Boston, MA 02111-1307 USA (or visit the web site https://www.gnu.org/).
*
* As a special exception, the Harbour Project gives permission for
* additional uses of the text contained in its release of Harbour.
*
* The exception is that, if you link the Harbour libraries with other
* files to produce an executable, this does not by itself cause the
* resulting executable to be covered by the GNU General Public License.
* Your use of that executable is in no way restricted on account of
* linking the Harbour library code into it.
*
* This exception does not however invalidate any other reasons why
* the executable file might be covered by the GNU General Public License.
*
* This exception applies only to the code released by the Harbour
* Project under the name Harbour. If you copy code from other
* Harbour Project or Free Software Foundation releases into a copy of
* Harbour, as the General Public License permits, the exception does
* not apply to the code that you add in this way. To avoid misleading
* anyone as to the status of such modified files, you must delete
* this exception notice from them.
*
* If you write modifications of your own for Harbour, it is your choice
* whether to permit this exception to apply to your modifications.
* If you do not wish that, delete this exception notice.
*
*/
THREAD STATIC t_bOnTick
THREAD STATIC t_nTickInterval := 0
THREAD STATIC t_nLastCheck := 0
THREAD STATIC t_hIdle
STATIC PROCEDURE __ft_OnTick()
IF hb_MilliSeconds() >= ( t_nLastCheck + t_nTickInterval )
t_nLastCheck := hb_MilliSeconds()
Eval( t_bOnTick )
ENDIF
RETURN
PROCEDURE ft_OnTick( bOnTick, nTickInterval )
/* Harbour extension: Harbour will also accept function pointers */
IF HB_ISEVALITEM( bOnTick )
t_bOnTick := bOnTick
IF HB_ISNUMERIC( nTickInterval )
t_nTickInterval := ( 1 / 18.20648 ) * nTickInterval * 1000
ENDIF
t_nLastCheck := hb_MilliSeconds()
IF Empty( t_hIdle )
t_hIdle := hb_idleAdd( {|| __ft_OnTick() } )
ENDIF
ELSE
t_bOnTick := NIL
t_nTickInterval := 0
IF ! Empty( t_hIdle )
hb_idleDel( t_hIdle )
t_hIdle := NIL
ENDIF
ENDIF
RETURN
Para saber se a função existe no harbour use:
hbmk2 -find nomedafunção aceita curingas
hbmk2 -find ft_*
Código: Selecionar todos
hbct.hbc (instalado):
com_Soft_R()
com_Soft_S()
hbnf.hbc (instalado):
ft_AAddition()
ft_AAvg()
ft_AcctAdj()
ft_AcctMonth()
ft_AcctQtr()
ft_AcctWeek()
ft_AcctYear()
ft_Adapter()
ft_Adder()
ft_AddWkDy()
ft_ADesSort()
ft_AEMaxLen()
ft_AEMinLen()
ft_Alt()
ft_AMedian()
ft_ANoMatches()
ft_ArEdit()
ft_ASum()
ft_At2()
ft_BitClr()
ft_BitSet()
ft_Blink()
ft_BrwsWhl()
ft_Byt2Bit()
ft_Byt2Hex()
ft_ByteAnd()
ft_ByteNeg()
ft_ByteNot()
ft_ByteOr()
ft_ByteXor()
ft_Calendar()
ft_CapLock()
ft_ChDir()
ft_Civ2Mil()
ft_ClrSel()
ft_CLS()
ft_Color2N()
ft_Ctrl()
ft_D2E()
ft_DateCnfg()
ft_DayOfYr()
ft_DayToBoW()
ft_Dec2Bin()
ft_Default()
ft_Descend()
ft_DFClose()
ft_DFSetup()
ft_DispFile()
ft_DispMsg()
ft_DosVer()
ft_DoY()
ft_DskFree()
ft_DskSize()
ft_E2D()
ft_Easter()
ft_ElapMin()
ft_Elapsed()
ft_ElTime()
ft_EscCode()
ft_FAppend()
ft_FBof()
ft_FDay()
ft_FDelete()
ft_FEof()
ft_FError()
ft_FGoBot()
ft_FGoto()
ft_FGoTop()
ft_Fill()
ft_FindITh()
ft_FInsert()
ft_FLastRe()
ft_FlopTst()
ft_FOffset()
ft_FReadLn()
ft_FRecNo()
ft_FSelect()
ft_FSkip()
ft_FUse()
ft_FWriteL()
ft_FWriteLn()
ft_GCD()
ft_GetE()
ft_GetMode()
ft_GetVCur()
ft_GetVPg()
ft_Hex2Dec()
ft_IAmIdle()
ft_Idle()
ft_inp()
ft_int86()
ft_InvClr()
ft_IsBit()
ft_IsBitOn()
ft_IsPrint()
ft_IsShare()
ft_LastKey()
ft_LDay()
ft_Linked()
ft_MAdd()
ft_MButPrs()
ft_MButRel()
ft_MCOnOff()
ft_MCursor()
ft_MDblClk()
ft_MDefCrs()
ft_Menu1()
ft_Menu2()
ft_MenuTo()
ft_Metaph()
ft_MGetCoord()
ft_MGetPage()
ft_MGetPos()
ft_MGetSens()
ft_MGetX()
ft_MGetY()
ft_MHideCrs()
ft_Mil2Civ()
ft_Mil2Min()
ft_Min2Dhm()
ft_Min2Mil()
ft_MInit()
ft_MInRegion()
ft_MkDir()
ft_MMickeys()
ft_Month()
ft_MReset()
ft_MSetCoord()
ft_MSetPage()
ft_MSetPos()
ft_MSetSens()
ft_MShowCrs()
ft_MVersion()
ft_MXLimit()
ft_MYLimit()
ft_N2Color()
ft_NetPV()
ft_NoOccur()
ft_NToW()
ft_NumLock()
ft_NWLStat()
ft_NWSemClose()
ft_NWSemEx()
ft_NWSemLock()
ft_NWSemOpen()
ft_NWSemSig()
ft_NWSemUnlock()
ft_NWSemWait()
ft_NWUID()
ft_OnTick()
ft_Origin()
ft_outp()
ft_PChr()
ft_Peek()
ft_Pegs()
ft_Pending()
ft_PickDay()
ft_Poke()
ft_PopVid()
ft_Prompt()
ft_Proper()
ft_PrtScr()
ft_PushVid()
ft_PutKey()
ft_Qtr()
ft_Rand1()
ft_RAt2()
ft_Reboot()
ft_RestArr()
ft_RestAtt()
ft_RestSets()
ft_RevAttr()
ft_RevChr()
ft_RgnStack()
ft_RmDir()
ft_Round()
ft_RstRgn()
ft_SaveArr()
ft_SaveAtt()
ft_SaveSets()
ft_SavRgn()
ft_ScanCode()
ft_SetAttr()
ft_SetCentury()
ft_SetDate()
ft_SetKeys()
ft_SetMode()
ft_SetRate()
ft_SetTime()
ft_SetVcur()
ft_SetVpg()
ft_Shadow()
ft_Shift()
ft_SInkey()
ft_Sleep()
ft_Sqzn()
ft_SToD()
ft_Sys2Mil()
ft_SysMem()
ft_TempFil()
ft_Unsqzn()
ft_VidStr()
ft_Week()
ft_Workdays()
ft_WoY()
ft_WrtChr()
ft_XBox()
ft_XToY()
ft_Year()
_ft_DFClos()
_ft_DFInit()
_ft_MSetSensitive()
_ft_NWKStat()
_ft_TempFil()
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Nascimento
- Usuário Nível 4

- Mensagens: 763
- Registrado em: 19 Jul 2008 12:11
- Localização: OLINDA-PE
Erros de Compilação
itamar vendo que o BliSerNum() tem no harbour tambem me surgiu uma duvida, eu usava muito o blisernum() no clipper
como é um exemplo dele usado no harbour ou seja eu colocava no .lnk o que eu queria que aparecesse no .exe no harbour vc coloca no hbp?
como é um exemplo dele usado no harbour ou seja eu colocava no .lnk o que eu queria que aparecesse no .exe no harbour vc coloca no hbp?
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina
clipper 5.3 /harbour/minigui
Erros de Compilação
Prezado Itamar,
Parece estranho, mas nunca é tarde para agradecer!...Passado algum tempo (1 ano), estou retomando este desafio e agradeço pelas dicas dos arquivos -hbblink.hbc e blinker e -hbnf.hbc... vou testá-los e retorno o resultado aqui neste fórum.
Mais uma vez, muito obrigado!..
Parece estranho, mas nunca é tarde para agradecer!...Passado algum tempo (1 ano), estou retomando este desafio e agradeço pelas dicas dos arquivos -hbblink.hbc e blinker e -hbnf.hbc... vou testá-los e retorno o resultado aqui neste fórum.
Mais uma vez, muito obrigado!..
Erros de Compilação
Itamar,
Acrescentei os arquivos -hbblink.hbc e blinker e -hbnf.hbc e agora quando tento compilar ocorre a mensagem abaixo e não gera o executável.
C:\Meus_Arq\clip52e\Harbour\SGChb>hbmk2 SGChb -hbblink.hbc -hbnf.hbc
hbmk2: Processando opções do ambiente: -comp=mingw
Error F0034 Bad command line option 'link.hbc'
hbmk2[SGChb]: Erro: Executando o compilador Harbour (interno): 1
Você poderia me ajudar?!
Acrescentei os arquivos -hbblink.hbc e blinker e -hbnf.hbc e agora quando tento compilar ocorre a mensagem abaixo e não gera o executável.
C:\Meus_Arq\clip52e\Harbour\SGChb>hbmk2 SGChb -hbblink.hbc -hbnf.hbc
hbmk2: Processando opções do ambiente: -comp=mingw
Error F0034 Bad command line option 'link.hbc'
hbmk2[SGChb]: Erro: Executando o compilador Harbour (interno): 1
Você poderia me ajudar?!
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Erros de Compilação
Amigo, se você está usando um arquivo HBP, então tenta incluir as seguintes linhas no início deste seu HBP:Araújo escreveu:criei o arquivo HBP com todos os PRGs
-lhbblink
-lhbnf
Agora nos PRGs onde tem as funções do BLinker, no início do arquivo incluir a seguinte linha:
#include "hbblink.ch"
Depois tente compilar o programa novamente, digite apenas: hbmk2 sgchb.hbp
Atenção: caso ocorra um erro pela falta do arquivo hbblink.ch, copie o arquivo hbblink.ch que está na pasta \HARBOUR\CONTRIB\HBBLINK para a pasta \HARBOUR\INCLUDE.
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Erros de Compilação
Tirar o sinal de (-) menos!
hbmk2 xyz.hbp hbblink.hbc hbnf.hbc
Com o sinal de (-)menos é como o Toledo, explicou.
Saudações,
Itamar M. Lins Jr.
hbmk2 xyz.hbp hbblink.hbc hbnf.hbc
Com o sinal de (-)menos é como o Toledo, explicou.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
Erros de Compilação
Prezados Paulo e Itamar,
Muito obrigado pela ajuda!... finalmente consegui gerar o exec!.. O resultado é surpreendente!... Muito bom!...
Vou seguir com o trabalho de migração... Depois que estabilizar tentarei repaginar o sistema com o visual gráfico e uso de novas funções do Harbour.
A propósito, tem algum link onde possa baixar documentação das funções do Harbour em formato/apresentação semelhante ao NG do clipper?!..
Grato pela ajuda
Muito obrigado pela ajuda!... finalmente consegui gerar o exec!.. O resultado é surpreendente!... Muito bom!...
Vou seguir com o trabalho de migração... Depois que estabilizar tentarei repaginar o sistema com o visual gráfico e uso de novas funções do Harbour.
A propósito, tem algum link onde possa baixar documentação das funções do Harbour em formato/apresentação semelhante ao NG do clipper?!..
Grato pela ajuda
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Erros de Compilação
Veja:
http://harbour.github.io/doc/
http://www.marinas-gui.org/projects/harbour_manual/
http://www.harbourdoc.com.br
http://www.elektrosoft.it/tutorials.asp
http://www.fivetechsoft.com/harbour-docs/harbour.html
https://fivewin-contributions.googlecod ... arbour.pdf
Abraços,
http://harbour.github.io/doc/
http://www.marinas-gui.org/projects/harbour_manual/
http://www.harbourdoc.com.br
http://www.elektrosoft.it/tutorials.asp
http://www.fivetechsoft.com/harbour-docs/harbour.html
https://fivewin-contributions.googlecod ... arbour.pdf
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
