Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-04-2005
picospunk picospunk is offline
Registrado
 
Registrado: abr 2005
Posts: 1
Poder: 0
picospunk Va por buen camino
puerto paralelo en WINXP mandando a llamar dll

Hola soy nuevo en delphi y en el manejo de dll, Tengo un problema que por mi novatez no he podido resolver. Resulta que necesito enviar datos al puerto paralelo por medio de un programita en delphi, ya he leido los hilos anteriores acerca de como hacerlo mediante codigo ensamblador usando:

asm
push dx
mov dx, 888 //888 es la direccion del puerto paralelo
mov al, 255
out dx, al
pop dx
end;

pero el problema es que esto no funciona para windowsNT,2000 ni XP, porque estos no permiten el acceso directo a los puertos. Encontré la solución y lo que tengo que hacer es mandar a llamar una dll desde el programa que habilita el acceso a los puertos en WINXP, seguí un tutorial donde te explican paso a paso que hacer http://sheepdogguides.com/dt4j.htm pero me encuentro con un problema, no me compila el código que alli viene en el tutorial, el procedimiento que puse es el siguiente:

procedure TForm1.ScrollBar1Change(Sender: TObject);
var bWriteMe, bErr:byte;
function Out32(wAddr:word;bOut:byte):byte; stdcall; external 'inpout32.dll';
begin
bWriteMe:=ScrollBar1.position;
Label1.caption:=inttostr(bWriteMe);
bErr:=(Out32($378,bWriteMe)); // en donde $378 es la direccion del puerto
end;

Al tratar de compilarlo me marca el siguiente error:

[Error]inpout.pas(29); Invalid compiler directive: 'EXTERNAL'
[Fatal Error] Projetinpout.dpr(5);Could not compile used unit 'inpout.pas'

No se porque marca este error porque incluso ya intente con otro programa mandar a llamar a una libreria de la misma forma:

function pcDLLVersion:string; stdcall external 'DD50demo.dll';

Y NO HAY NINGUN PROBLEMA, EL PROGRAMA FUNCIONA A LA PERFECCION, haciendo notar que usa el mismo external que me marca error en el inpout.pas

NECESITO AYUDA URGENTE PORFAVOR, ya he checado segun yo los mas comunes posibles errores, ya comprobe que la inpout32.dll se encuentre en la misma carpeta donde tengo mi programa, etc.

ALGUNA SUGERENCIA?????

espero su respuesta con ansias porque me urge terminar este proyecto

de antemano MUCHAS GRACIAS

Picospunk
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 14:31:00.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi