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


0