Página 1 de 1

Clipper52e -> xHarbour

Enviado: 08 Jun 2007 21:34
por Eolo
Consegui compilar um sistema Clipper52e no xHarbour 0.99.70 com um mínimo de alterações nos fontes, mas pintou dúvidas:
- sob o xHarbour, some o limite de 255 arquivos do Clipper (acho que o Leonardo comentou algo a respeito aqui no Forum)?
- como desabilitar o mouse no xHarbour?
- como incluir uma LIB externa (do PageScript, por ex) no HBMake?
- o xHarbour não entope a CPU como o Clipper, então não é mais necessário funções do tipo OL_AutoYield()?

Obrigado de antemão!

Enviado: 08 Jun 2007 21:53
por sygecom
Consegui compilar um sistema Clipper52e no xHarbour 0.99.70 com um mínimo de alterações nos fontes, mas pintou dúvidas:
Perto de muitos aqui...sou meio Novato nesse mundo...mas quero deixar aqui registrado que pode contar comigo.....
- sob o xHarbour, some o limite de 255 arquivos do Clipper (acho que o Leonardo comentou algo a respeito aqui no Forum)?
Some de Vez...o limite passa a ser a memoria do micro....e isso vai longe....
- como desabilitar o mouse no xHarbour?
De uma olhada no link abaixo:
https://pctoledo.org/forum/viewto ... ight=mouse
- como incluir uma LIB externa (do PageScript, por ex) no HBMake?
Tche até onde eu sei não tem ainda a PAGESCRIPT para xharbour...e para vc linkar alguma lib de terceiro que funcione no xharbour....primeiro vc soh pode usar LIBS compilada para a versão do xharbour que vc estiver usando....e se vc tiver com essa LIB dentro da pasta LIB do xharbour....ele vai aparecer na LISTA de LIBS do HBMAKE....
- o xHarbour não entope a CPU como o Clipper, então não é mais necessário funções do tipo OL_AutoYield()
Não é mais nescessario......eu soh tive e tenho um problema nos DBEDIT() em REDE com micros Win-98..fica devagar...mas me parece que na CVS jah tem a correção disso...

Abraços
Leonardo Machado

Enviado: 08 Jun 2007 22:51
por Eolo
...Eu estava testando com WVW e nao "esconde" o ponteiro do mouse. Criei entao as funcoes :

HB_FUNC ( SEM_MOUSE )
{
ShowCursor(0);
}

HB_FUNC ( COM_MOUSE )
{
ShowCursor(1);
}

e basta chamar Sem_Mouse() / Com_Mouse() para "esconder" / "mostrar" o ponteiro do mouse da janela atual.

[]s Manoel Angeiras
Leonardo,

Não entendi direito como compilar essas funções... Inclui elas em um dos PRG e dá pau na compilação, acho que to comendo bola em alguma coisa...

Ah, obrigado pelas outras dicas!

Enviado: 08 Jun 2007 23:10
por sygecom
Não entendi direito como compilar essas funções... Inclui elas em um dos PRG e dá pau na compilação, acho que to comendo bola em alguma coisa...
Tche,Coloque no começo do seu .PRG principal

Código: Selecionar todos

ShowCursor(0);
Obs: O exemplo que o colega Manoel fez...foi soh para criar um tipo de função... para ser chamado em outras parte do sistema.....mas pelo o que eu entendi...vc quer somente desabilitar....se quiser habilitar coloque (1)....

Mandei pro seu email uns exemplos...

Abraços
Leonardo Machado

Enviado: 09 Jun 2007 09:00
por Eolo
Leonardo,

Incluí o ShowCursor(0) mas dá pau na hora de compilar: "unresolved external _HB_FUN_SHOIWCURSOR". Alguma LIB que tá faltando?

Valeu pelo e-mail. Só não chegou aqui ainda.

Enviado: 09 Jun 2007 09:48
por sygecom
Incluí o ShowCursor(0) mas dá pau na hora de compilar: "unresolved external _HB_FUN_SHOIWCURSOR". Alguma LIB que tá faltando?
Tche, se vc deu uma olhada no exemplo que te mandei vc vai ver no arquivo .BC que eu linkei a WHAT32.LIB que vem na CONTRIB....linka essa WHAT32.......e corre pro abraço........

Qualquer coisa prende o grito...

Abraços
Leonardo Machado

Enviado: 09 Jun 2007 10:53
por vagucs
Vc pode descompilar a pagescript e compilar ela em xharbour e se não me engano o xharbour ja tem uma pagescript propria, quanto ao mouse coloque no inicio do seu oprograma

HB_NOMOUSE()

O limite de arquivos existe, não tem haver com a memoria do micro, mas no windows e linux este limite é bem grande, no XP e 2000 sei que é bem alto, não precisa nem se preocupar com isto.

Re: Clipper52e -> xHarbour

Enviado: 09 Jun 2007 10:57
por janio
Eolo escreveu: - como desabilitar o mouse no xHarbour?
Tente:

Código: Selecionar todos


#pragma begindump
#include "windows.h"
#include "winable.h"
#include "hbapi.h"

HB_FUNC ( SEM_MOUSE ) 
{ 
    ShowCursor(0); 
} 

HB_FUNC ( COM_MOUSE ) 
{ 
    ShowCursor(1); 
} 

#pragma enddump

Eolo escreveu: - como incluir uma LIB externa (do PageScript, por ex) no HBMake?
Além do que o Leonardo falou, marque a opção 'USA LIBS EXTERNAS?' no hbmake.

Jânio [/code]

Enviado: 09 Jun 2007 11:07
por janio
Eolo escreveu:Leonardo,

Incluí o ShowCursor(0) mas dá pau na hora de compilar: "unresolved external _HB_FUN_SHOIWCURSOR". Alguma LIB que tá faltando?
Veja também que vc DIGITOU errado o nome da função. Vc escreveu 'SHOIWCURSOR' (acrescentou o 'i'), quando na realidade deve ser SHOWCURSOR.

Jânio

Enviado: 09 Jun 2007 12:36
por Eolo
Bão, to mais perdido (por enquanto) que cego em tiroteio no bataclan, mas vamos lá... Resposta geral:

Jânio: o nome tá certo no PRG, o "I" a mais só entrou no post...

Vagucs: funcionou! Só que tanto HB_NOMOUSE() quanto REQUEST HB_NOMOUSE (como alguém me indicou) dá o mesmo resultado. Uai, num intendi. ???

Vagucs II: "...se não me engano o xharbour ja tem uma pagescript propria...". Eu queria mesmo era um arquivo NG com o que o XH tem pra usar... Isso existe?

Leonardo: pois é essa tár de WHAT32.LIB que deve estar faltando por aqui... O que são as LIBs CONTRIB? Tem elas em algum lugar pra baixar?

Obrigado a todos.

Enviado: 09 Jun 2007 12:52
por sygecom
Buenas...
Eu queria mesmo era um arquivo NG com o que o XH tem pra usar... Isso existe?
De uma olhada no link abaixo...vc vai ter a NG on-line....é fraca mais dah pro gasto...
http://www.xharbour.com/xhdn/referenceg ... page=guide
pois é essa tár de WHAT32.LIB que deve estar faltando por aqui... O que são as LIBs CONTRIB? Tem elas em algum lugar pra baixar?
Tche, baixa a a CONTRIB no link abaixo......a contrib é as LIB das CONTIBUIÇÕES......para se usar no xharbour...
http://sourceforge.net/project/download ... irror=ufpr

Obs: Vc tem que compilar as LIB da CONTRIB...ou seja vc baixa os codigo fonte delas e compilas elas para usar no xharbour....

Abraços
Leonardo Machado

Enviado: 09 Jun 2007 13:21
por vagucs
Eolo,

O comando REQUEST apenas indica ao compilador para incluir determinada rotina no seu fonte, era muito usado quando se faz referencia a uma rotina em uma macro por exemplo, se compilar o linkador nao ira incluir a rotina no EXE pois a chamada dela está numa macro e não diretamente no codigo, assim o comando request informa que tal rotina deve ser incluida no EXE final.

Assim sendo, se você usar

REQUEST HB_NOMOUSE ou simples HB_NOMOUSE() ela será incluida no seu EXE, da forma que passei ele faz uma chamada a rotina e ela é incluida no EXE final, ela estando no EXE final, ela simples anula o funcionamento do mouse no seu programa.

Habilitar / Desabilitar Mouse

Enviado: 10 Jun 2007 16:13
por janio
Eolo,

Vc compilou a função que o Leonardo indicou com as modificações que sugeri, ou seja:

Código: Selecionar todos

#pragma begindump 
#include "windows.h" 
#include "winable.h" 
#include "hbapi.h" 

HB_FUNC ( SEM_MOUSE ) 
{ 
    ShowCursor(0); 
} 

HB_FUNC ( COM_MOUSE ) 
{ 
    ShowCursor(1); 
} 

#pragma enddump 
Funcionou???

Jânio

Enviado: 10 Jun 2007 16:29
por sygecom
Vô Eolo, se quiser te mando um exemplo dah função funcionando.....

Abraços
Leonardo Machado