Erro de sintaxe ao usar DLL Daruma

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

ricardo-barros
Usuário Nível 3
Usuário Nível 3
Mensagens: 104
Registrado em: 29 Out 2009 20:12
Localização: Fortaleza

Erro de sintaxe ao usar DLL Daruma

Mensagem 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.
Anexos
CUPOM3.PRG
(47.68 KiB) Baixado 155 vezes
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Re: Erro de sintaxe ao usar DLL Daruma

Mensagem 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
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.
Responder