Ik ben al een tijdje aan het zoeken achter een manier om een download te resumen via het wininet.dll gebeuren.
Het downloaden lukt via het volgende:
Tot zover alles goed, maar nu de mogelijkheid tot resumen. Nu is er een functie als deze: http://msdn.microsoft.com...nternetsetfilepointer.asp
Ik krijg echter steeds -1 terug, waarbij ik begrijp dat de server zulke resume niet ondersteunt. Maar als ik dan probeer dezelfde file te downloaden & resumen met bijvoorbeeld Opera dan werkt het wel.
Nu vraag ik me dus af of ik niet iets over het hoofd zie. Heeft iemand een werkend voorbeeldje van de internetsetfilepointer functie?
Het downloaden lukt via het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| Private Declare Function InternetOpen Lib "wininet.dll" _
Alias "InternetOpenA" (ByVal sAgent As String, _
ByVal lAccessType As Long, ByVal sProxyName As String, _
ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Private Declare Function InternetOpenUrl Lib "wininet.dll" _
Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, _
ByVal sUrl As String, ByVal sHeaders As String, _
ByVal lHeadersLength As Long, ByVal lFlags As Long, _
ByVal lContext As Long) As Long
Private Declare Function InternetReadFile Lib "wininet.dll" _
(ByVal hFile As Long, ByVal sBuffer As String, _
ByVal lNumberOfBytesToRead As Long, _
lNumberOfBytesRead As Long) As Integer
...
hInternetSession = InternetOpen("My VB App!", _
INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)
hUrlFile = InternetOpenUrl(hInternetSession, _
"http://bla...", vbNullString, 0, INTERNET_FLAG_RELOAD, 0)
...
bDoLoop = InternetReadFile(hUrlFile, sReadBuffer, _
Len(sReadBuffer), lNumberOfBytesRead)
... |
Tot zover alles goed, maar nu de mogelijkheid tot resumen. Nu is er een functie als deze: http://msdn.microsoft.com...nternetsetfilepointer.asp
code:
1
2
3
4
5
6
7
| Declare Function InternetSetFilePointer Lib "wininet.dll" _ (ByRef hFile As Long, ByVal lDistanceToMove As Long, pReserved As Any, _ ByVal dwMoveMethod As Long, ByVal dwContext As Long) _ As Long ... InternetSetFilePointer hUrlFile, sizevanmijnbestandje, vbNullString, FILE_BEGIN, 0 |
Ik krijg echter steeds -1 terug, waarbij ik begrijp dat de server zulke resume niet ondersteunt. Maar als ik dan probeer dezelfde file te downloaden & resumen met bijvoorbeeld Opera dan werkt het wel.
Nu vraag ik me dus af of ik niet iets over het hoofd zie. Heeft iemand een werkend voorbeeldje van de internetsetfilepointer functie?