Página 1 de 1

Erro de sintaxe ao usar DLL Daruma

Enviado: 06 Dez 2009 23:01
por ricardo-barros
Qual erro de sintaxe há nestas linhas compiladas com:

Buildh Cupom3

cupom3(684) Syntax error E0030

A linha 684 é esta:

DLL32 FUNCTION Daruma_Registry_ControlePorta( ControlePorta AS STRING ) AS LONG PASCAL;
FROM "Daruma_Registry_ControlePorta" LIB 'Daruma32.dll'

O programa emite cupons fiscais e está num único prg que segue em anexo.

Re: Erro de sintaxe ao usar DLL Daruma

Enviado: 16 Dez 2009 02:03
por rochinha
Amiguinho,

Eu geralmente faço da seguinte forma:

No inicio do programa defino uma variavel que irá manter o nome de minha .DLL:

Código: Selecionar todos

#include "fivewin.ch"
#include "dll.ch"

#define DarumaDLL "Daruma32.dll"

function main(pCOM)
...
Uso desta forma porque muitas vezes ao chamar diretamente no comando DLL32 FUNCTION a .DLL eu obtinha erro.

Quanto as chamadas as funções da .DLL não use mais LONG e sim _INT assim:

Código: Selecionar todos

DLL32 FUNCTION Daruma_Registry_ControlePorta( ControlePorta AS STRING ) AS    _INT     PASCAL;
FROM "Daruma_Registry_ControlePorta" LIB DarumaDLL
Veja que fiz a chamada à DarumaDLL e isto pode ou não fazer efeito sobre os problemas.

Portanto altere somente o LONG por _INT e refaça a compilação