PDA

View Full Version : مشکل با نوع داده در تابع



بهروز عباسی
پنج شنبه 28 اردیبهشت 1391, 23:03 عصر
درود به همه
این تایع موقع اجرا خطایی نمیده اما موقع BUILD کردن برنامه خطا میده و خطا هم بخاطر اینکه نوع تابع stringونوع داده اصلی که تابع برمی گردونه یک آرایه از جنس ansiChar لطفاً اگه میشه توضیح بدید باید چکار کنم.

function StrFormatByteSize(dw: Int64; szBuf: pansichar; uiBufSize: UINT): pansichar; stdcall; external 'shlwapi.dll' name 'StrFormatByteSize64A';
function FileSizeToStr(SizeInBytes: int64): string;
var
arrSize: array[0..255] of ansiChar;
begin
StrFormatByteSize(SizeInBytes, arrSize, Length(arrSize)-1);
Result:=arrSize;
end;

بهروز عباسی
پنج شنبه 28 اردیبهشت 1391, 23:40 عصر
مشکل حل شد
function StrFormatByteSize(dw: Int64; szBuf: pansichar; uiBufSize: UINT): pansichar; stdcall; external 'shlwapi.dll' name 'StrFormatByteSize64A';
function FileSizeToStr(SizeInBytes: int64): string;
var
arrSize: array[0..255] of ansiChar;
begin
StrFormatByteSize(SizeInBytes, arrSize, Length(arrSize)-1);
SetString(Result, PAnsiChar(@arrSize[0]), sizeof(arrSize));
end;