Que error tiene este codigo?
Publicado por Reinedhel (11 intervenciones) el 29/03/2002 23:05:58
resulta que compila bien, estando este codigo como una dll, no funciona llamandola de otro lenguaje, pero este mismo codigo estando en un form anda perfecto.. hay alguna incompatibilidad por el hecho de ser una dll ?????, porfavor ayudenme.
----------------------------------------------------------------------
codigo que sirve para saber el tamaño en bytes de un archivo, en varTabla envio la ruta del archivo, y en respuesta de la dll, me manda el tamaño.
----------------------------------------------------------------------
library dllSize;
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
function fuFileSize(varFile: string): string;
var
Handle: THandle;
Stream: TFileStream;
i64: record
LoDWord: LongWord;
HiDWord: LongWord;
end;
begin
Stream := nil;
try
Stream := TFileStream.Create(varFile, fmOpenRead or fmShareDenyNone);
Handle := Stream.Handle;
i64.LoDWord := GetFileSize(Handle, @i64.HiDWord);
if (i64.LoDWord = MAXDWORD) and (GetLastError <> 0) then
Result := '0'
else
Result := IntToStr(PInt64(@i64)^);
finally
Stream.Free;
end;
end;
exports
fuFileSize;
begin
end.
----------------------------------------------------------------------
codigo que sirve para saber el tamaño en bytes de un archivo, en varTabla envio la ruta del archivo, y en respuesta de la dll, me manda el tamaño.
----------------------------------------------------------------------
library dllSize;
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
function fuFileSize(varFile: string): string;
var
Handle: THandle;
Stream: TFileStream;
i64: record
LoDWord: LongWord;
HiDWord: LongWord;
end;
begin
Stream := nil;
try
Stream := TFileStream.Create(varFile, fmOpenRead or fmShareDenyNone);
Handle := Stream.Handle;
i64.LoDWord := GetFileSize(Handle, @i64.HiDWord);
if (i64.LoDWord = MAXDWORD) and (GetLastError <> 0) then
Result := '0'
else
Result := IntToStr(PInt64(@i64)^);
finally
Stream.Free;
end;
end;
exports
fuFileSize;
begin
end.
Valora esta pregunta


0