Procedure.s StrDouble(lowLONG.l, hiLONG.l)
Protected buffer1.s, buffer2.s, buffer3.s, pos1.l, pos2.l, pos3.l, calc1.l, calc2.l
buffer3 = StrU(lowLONG,#LONG)
For pos1 = Len(StrU(hiLONG,#LONG)) To 1 Step -1
For pos2 = Len(StrU(-1,#LONG)) To 1 Step -1
calc1 = Val(Mid(StrU(hiLONG,#LONG),pos1,1)) * Val(Mid(StrU(-1,#LONG),pos2,1))
calc2 = (Len(StrU(hiLONG,#LONG))-pos1)+(Len(StrU(-1,#LONG))-pos2)
buffer1 = Str(calc1) + Left("00000000000000000000",calc2)
buffer2 = buffer3
buffer3 = ""
calc1 = 0
If Len(buffer1) > Len(buffer2)
buffer2 = Right("00000000000000000000"+buffer2,Len(buffer1))
Else
buffer1 = Right("00000000000000000000"+buffer1,Len(buffer2))
EndIf
For pos3 = Len(buffer1) To 1 Step -1
calc1 + Val(Mid(buffer1,pos3,1)) + Val(Mid(buffer2,pos3,1))
buffer3 = Right(Str(calc1),1)+buffer3
calc1/10
Next pos3
If calc1 > 0: buffer3 = Str(calc1)+buffer3: EndIf
Next pos2
Next pos1
While Left(buffer3,1)="0"
buffer3 = Right(buffer3, Len(buffer3)-1)
Wend
ProcedureReturn buffer3
EndProcedure
drive.s = "D:\"
Structure Quad
L1.l
L2.l
EndStructure
GetDiskFreeSpaceEx_(@drive, FB.Quad, TB.Quad, TFB.Quad)
MessageRequester("Drive Size: ",StrDouble(TB\L1,TB\L2)+ " Bytes",0)
End
FileName.s = OpenFileRequester("","C:\*.*","*.*|All Files",1)
If OpenFile(0, Filename)
lowLONG.l = GetFileSize_(UseFile(0), @hiLONG.l)
MessageRequester("Filesize:",StrDouble(lowLONG,hiLONG) + " Bytes",0)
CloseFile(0)
EndIf
End