HBOle - Cobrebemx

Fórum sobre ferramentas de apoio à programação (Clipper/[x]Harbour)

Moderador: Moderadores

jelias
Usuário Nível 3
Usuário Nível 3
Mensagens: 260
Registrado em: 27 Ago 2008 11:32
Localização: Minas Gerais

HBOle - Cobrebemx

Mensagem por jelias »

Amigos,

Estou implantando a emissão de boletos bancários com envio de remessa e retornos em meu sistema usando a solução da Cobrebem, o cobrebemx.dll.
No site da empresa orienta baixar este arquivo http://www.cobrebem.com/downloads/cbx/hbole.zip
Pelo que pude entender a partir dos exemplos do mesmo é que preciso gerar um arquivo HBOLE.LIB para compilar junto com a aplicação.
Estou usando xHarbour 1.2.1 Intl. (Simplex) (rev. 9421) / Borland 5.8.2 (32 bit)

Sendo assim, tentei gerar a lib criando um makefile.bc e tive este erro:

Código: Selecionar todos

Borland C++ 5.82 for Win32 Copyright (c) 1993, 2005 Borland
ole2.c:
Error E2209 ole2.c 93: Unable to open include file 'hbapicls.h'
Warning W8075 ole2.c 228: Suspicious pointer conversion in function GetParams
Warning W8075 ole2.c 602: Suspicious pointer conversion in function HB_FUN_GETOLEOBJECT
Warning W8075 ole2.c 619: Suspicious pointer conversion in function HB_FUN_GETOLEOBJECT
*** 1 errors in Compile ***
Tentei outra solução que foi compilar os arquivos abaixo junto com a minha aplicação e obtive o mesmo erro acima.
Ole2.c
oleauto.prg

Alguém usa esta solução da cobrebem e poderia me dar uma luz?

Sds,

Júlio.
xHarbour 1.2.1 (simplex) + BCC 5.8.2 + Hwgui + SQLRDD
Clipper 5.2e / Blinker 7
Júlio Cézar Elias
e-mail: jelias@tpnet.psi.br
Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

HBOle - Cobrebemx

Mensagem por binho_fasa »

Linke o arquivo oleauto.prg que esta no hbole.zip junto com o seu projeto.
Você deve baixar o instalador do Cobrebemx (http://cobrebemx.com.br/downloads/cbx/I ... reBemX.zip), colocar em uma pasta, ex: C:\COBREBEMX, rodar o instala.bat para instalar as dependências ACTIVEX para poder funcionar depois.

[]´s
Fabio Souza
jelias
Usuário Nível 3
Usuário Nível 3
Mensagens: 260
Registrado em: 27 Ago 2008 11:32
Localização: Minas Gerais

HBOle - Cobrebemx

Mensagem por jelias »

Amigo Fábio,

Muito obrigado pela ajuda.
Eu fiz exatamente como escrito acima, entretanto obtive outro erro.

-Executei o instala.bat.
- Acrescentei o arquivo oleouto.prg no momento em que compilo meu projeto!

Erro.

Código: Selecionar todos

xHarbour Compiler build 1.2.1 (SimpLex) (Rev. 9421)
Copyright 1999-2011, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'OLEAUTO.PRG'...

OLEAUTO.PRG(80) Error E0008  Redefinition of predefined function THROW: 'THROW'

1 error
Sds,

Júlio.
xHarbour 1.2.1 (simplex) + BCC 5.8.2 + Hwgui + SQLRDD
Clipper 5.2e / Blinker 7
Júlio Cézar Elias
e-mail: jelias@tpnet.psi.br
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

HBOle - Cobrebemx

Mensagem por rochinha »

Amiguinho,

Redefinition - Uma mesma função aparece em dois pontos de sua aplicação, ou seja, voce tem uma função duplicada ou duas funções diferentes mas com o mesmo nome.

Solução:

Colocar uma delas como STATIC para que seja vista somente no .PRG na qual está.

Mas se for de uso geral, devendo ser vista por toda aplicação, voce terá de encontrá-la e eliminar.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
Duda 'Sgluber'
Usuário Nível 3
Usuário Nível 3
Mensagens: 148
Registrado em: 11 Mar 2013 21:57
Localização: Interior de São Paulo

HBOle - Cobrebemx

Mensagem por Duda 'Sgluber' »

"Ressuscitando" o tópico: estou começando a utilizar o CobreBemX e minha dúvida é parecida com a postada pelo Júlio, na abertura deste tópico:
jelias escreveu:Amigos,

Estou implantando a emissão de boletos bancários com envio de remessa e retornos em meu sistema usando a solução da Cobrebem, o cobrebemx.dll.
No site da empresa orienta baixar este arquivo http://www.cobrebem.com/downloads/cbx/hbole.zip
Pelo que pude entender a partir dos exemplos do mesmo é que preciso gerar um arquivo HBOLE.LIB para compilar junto com a aplicação.
...
Eu uso o Harbour 3.0, o que eu fiz:

Código: Selecionar todos

hbmk2 -hblib oleauto.prg ole2.c
Resultado:

Código: Selecionar todos

Harbour 3.0.0 (Rev. 16951)
Copyright (c) 1999-2011, http://harbour-project.org/
Compiling 'oleauto.prg'...
Lines 1236, Functions/Procedures 12
Generating C source output to 'C:\Users\Duda\AppData\Local\Temp\hbmk_519ejy.dir\oleauto.c'... Done.

ole2.c: In function 'GetParams':
ole2.c:228:16: warning: passing argument 1 of 'DateToDbl' discards qualifiers from pointer target type
ole2.c:103:15: note: expected 'LPSTR' but argument is of type 'const char *'
ole2.c: In function 'HB_FUN_GETOLEOBJECT':
ole2.c:602:22: warning: initialization discards qualifiers from pointer target type
ole2.c:619:20: warning: initialization discards qualifiers from pointer target type
Como se vê, são emitidos alguns alertas durante a compilação do arquivo ole2.c, mas a liboleauto.a é criada e, ao ser utilizada posteriormente na compilação com meu sistema, não apresenta nenhum problema.

Mas fiquei "com a pulga atrás da orelha" e, antes de pesquisar pelos alertas, decidi postar aqui e contar com a ajuda e a experiência de vocês: afinal, é isso mesmo?

Aproveitando a mensagem, se alguém que já passou por isso puder anexar a liboleauto.a (gostaria de comparar com esta que eu criei), agradeço muito! Imagem
Comecei pra valer nos tempos do MSX e nunca mais parei... grande caminhada! :-)
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

HBOle - Cobrebemx

Mensagem por rochinha »

Amiguinho,

Verifique os parametros sendo passados, parece que alguma função está recebendo um valor com tipo diferente do definido para a variável de captura.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
jelias
Usuário Nível 3
Usuário Nível 3
Mensagens: 260
Registrado em: 27 Ago 2008 11:32
Localização: Minas Gerais

HBOle - Cobrebemx

Mensagem por jelias »

Amigo Duda;

Quando iniciei o uso do CobreBemX estava tentando compilar o arquivo oleauto.prg junto com minha aplicação, todavia depois de observar com mais atenção percebi que não era necessário compilar este arquivo e sim acrescentar esta função abaixo.
Aproveitando, postei o código que usei em meus testes, se precisar está na mão.
https://pctoledo.org/forum/viewto ... 39&t=14459

Código: Selecionar todos

#pragma BEGINDUMP
	        #include <hbapi.h>
	        #include <windows.h>
	        typedef LONG ( * PDLLREGISTERSERVER ) ( void );
	        HB_FUNC( REGISTERSERVER )
	        {
	        HMODULE hDll = LoadLibrary( hb_parc( 1 ) );
	        LONG lReturn = 0;
	        if( hDll )
	                {
	                FARPROC pRegisterServer = GetProcAddress( hDll, "DllRegisterServer" );
	                if( pRegisterServer )
	                   lReturn = ( ( PDLLREGISTERSERVER ) pRegisterServer )();
	                   FreeLibrary( hDll );
                      }
	              hb_retnl( lReturn );
	           }       
#pragma ENDDUMP
Sds,

Júlio.
xHarbour 1.2.1 (simplex) + BCC 5.8.2 + Hwgui + SQLRDD
Clipper 5.2e / Blinker 7
Júlio Cézar Elias
e-mail: jelias@tpnet.psi.br
Avatar do usuário
Duda 'Sgluber'
Usuário Nível 3
Usuário Nível 3
Mensagens: 148
Registrado em: 11 Mar 2013 21:57
Localização: Interior de São Paulo

HBOle - Cobrebemx

Mensagem por Duda 'Sgluber' »

Valeu, rochinha!
E Júlio: matou a pau, PERFEITO! Imagem

Funcionou no primeiro teste! E que fique registrado: para testar eu fiz questão de nomear a rotina que você mandou na mensagem anterior de julio.prg! Imagem

Aproveitando o assunto... gostaria de contar com a opinião/ajuda de vocês sobre um problema que constatei em seguida: CobreBemX - geração de boletos fora do padrão
Comecei pra valer nos tempos do MSX e nunca mais parei... grande caminhada! :-)
Responder