Pascal/Turbo Pascal - Librerias dll

   
Vista:

Librerias dll

Publicado por Ramny (1 intervención) el 09/08/2008 17:49:59
Saludos a todos.

Alguien puede ayudarme con un programita para usar una libreria dinamica?
El problema es que no puedo definir la dll externamente, es decir, mi funcion interna que asocio con la de la dll no la enlaza, alguien puede ayudarme con esta inquietud?
Ah, la libreria la compile con visual basic 6.0, hice una funcion sencilla que es la que trato de enlazar con mi programa en pascal.

el codigo que empleo es este

libreria.dll
Function CharToHex(Hex As String) As Byte
Select Case Hex
Case "0"
CharToHex = 0
Case "1"
CharToHex = 1
Case "2"
CharToHex = 2
Case "3"
CharToHex = 3
Case "4"
CharToHex = 4
Case "5"
CharToHex = 5
Case "6"
CharToHex = 6
Case "7"
CharToHex = 7
Case "8"
CharToHex = 8
Case "9"
CharToHex = 9
Case "A"
CharToHex = 10
Case "B"
CharToHex = 11
Case "C"
CharToHex = 12
Case "D"
CharToHex = 13
Case "E"
CharToHex = 14
Case "F"
CharToHex = 15
End Select
End Function

libreria.pas
program lib;
uses
newdelay, crt;
var
caracter : string;
valor : byte;
function car(hex : string) : byte; external name 'libreria.dll' name 'CharToHex';

begin
patchcrt(crt.delay);
clrscr;
write('Escriba un valor hexagesimal = ');
readln(caracter);
valor:=car(caracter);
writeln('El valor de ', caracter,' es ', valor);
readln;
end.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Librerias dll

Publicado por Diego Romero (997 intervenciones) el 11/08/2008 00:50:07
Aparentemente, porque usas "newdelay", estás intentando usar una DLL de 32 bits con Turbo Pascal que es de 16 bits. Me temo que esto no va a funcionar. Turbo Pascal no entiende de DLLs.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar