Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
VFPCompression.fll using Callback
Message
From
27/08/2012 08:32:03
 
 
To
26/08/2012 20:19:16
General information
Forum:
Visual FoxPro
Category:
Third party products
Environment versions
Visual FoxPro:
VFP 9 SP2
OS:
Windows Server 2008
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Desktop
Miscellaneous
Thread ID:
01551296
Message ID:
01551494
Views:
75
Store the number and the SIGN() into two variables nZipped and nSign
Then
nZipped= m.nZipped + BITAND(m.nZipBytes,0X7FFFFFFF) + IIF(m.nSign=SIGN(m.nZipBytes),0,0x8000000)
nSign= SIGN(m.nZipBytes)
If VFPCompression process < 2GB between two callback this count is correct.

>You are right, with smaller files < 2GB I don't see that problem.
>
>I could detect if the file is larger than 2GB, and I can try to find a way to work around it. Unfortunately the larger the file, the more important the correct progress bar would be.
>
>I have the feeling that where it starts with a negative number, it actually jumps to 4 GB and displays the difference to the currently processed bytes. In fact the file I tested was aroudn 3.7 GB .So I need to reformat the calculation each 2GB.
>
>>I don't think it was designed to handle files bigger than 2GB. Do you have problem with files less than 2GB?
>>
>>>I have trouble getting the callback to work properly in VFPCompression.fll, I hope somebody has an insight into this:
>>>
>>>When I run a zip or unzip, the callback function checks the value of the variable nZipBytes (which contains the value of bytes read). However the strange thing is that nZipBytes does not behave as expected, it starts at 96,217,088 (I expected it to start somewhere around 0) and increases until 2,027,771,904, and then becomes a negative number and increases again until -460,322,816, and at that time the zip is ready.
>>>
>>>The file size to be zipped is 3,857,231,360 , so I thought I can just use nZipBytes to calculate the current process to give a progress bar.
>>>
>>>Here are the values of nZipByes every 5 seconds:
>>>
>>>24/08/2012 08:59: 96217088
>>>24/08/2012 08:59: 230113280
>>>24/08/2012 08:59: 357859328
>>>24/08/2012 08:59: 497006592
>>>24/08/2012 08:59: 622266368
>>>24/08/2012 08:59: 785668096
>>>24/08/2012 09:00: 900902912
>>>24/08/2012 09:00: 1025189888
>>>24/08/2012 09:00: 1139968000
>>>24/08/2012 09:00: 1224110080
>>>24/08/2012 09:00: 1324113920
>>>24/08/2012 09:00: 1451603968
>>>24/08/2012 09:00: 1595136000
>>>24/08/2012 09:00: 1730465792
>>>24/08/2012 09:00: 1892943872
>>>24/08/2012 09:00: 2027771904
>>>24/08/2012 09:01: -2124484608
>>>24/08/2012 09:01: -1975384064
>>>24/08/2012 09:01: -1836021760
>>>24/08/2012 09:01: -1675395072
>>>24/08/2012 09:01: -1533710336
>>>24/08/2012 09:01: -1375301632
>>>24/08/2012 09:01: -1236893696
>>>24/08/2012 09:01: -1091803136
>>>24/08/2012 09:01: -929214464
>>>24/08/2012 09:01: -775956480
>>>24/08/2012 09:02: -609548288
>>>24/08/2012 09:02: -460322816
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform