Regarding the loading question I'm not sure. would need to debug and update it a bit. Looking at the code it might be better if I deleted the file and texture. In such way it would be always loaded.
As per COM object libraries:
In general they are all available on Windows. If some COM object is not available the CreateObject would return an error. Looking at the code I did not add appropriate error handling on object creation:
On Error Resume Next
obj = CreateObject(" ... ")
If Err.Number 0 Then
' code to output error message: Err.Number Err.Description
End If
FSO = FileSystemObject, contains functions enabling working with files, folders and drives from scripts.
http://msdn.microsoft.com/en-us/library/d6dw7aeh(v=vs.84).aspx
Used to delete files, or to create folders.
MSXML = Microsoft XML Core Services (MSXML) provides a comprehensive set of W3C compliant XML APIs. This is needed if you wish to use some XML-related functions.
Used for parsing some XML node.
ADODB - ActiveX Data Objects (ADO) contains objects with functions to access data sources.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms681025(v=vs.85).aspx
I used the ADODB.Stream object to save the response body as stream to a file.
But other ADO objects can be used for example to connect to a database and retrieve data - ADODB.connection and ADODB.Recordset objects.
#XPression