Archive: Problems with inetc - Big bug + Understanding status messages


Problems with inetc - Big bug + Understanding status messages
Hello all,

I haven't really posted on here before, but I do a lot of NSIS work. Thanks for all the great threads that have helped me along the way!

I wanted to report (heads up Tahkir :)) some issues with the inetc plugin which I am struggling with.

First up, we have a couple of installers where we track the whole process of installations using requests to the web (using a combination of NSISdl and inetc). One of the installers has an unusually high fail rate compared to the other. In the tracking I decided to pass the returned inetc error message as an extra parameter, and the result was the following:

SendRequest 631
Cancelled 150
Terminated 93
Transfer 36
File 9
SendRequestError 4
SendRequest Error 4
TransferError 3
/TIMEOUT 2

Most of these are self-explanatory, and I believe that "SendRequestError" means that there is no internet connection? My question is, what does "SendRequest" status error mean, and why do we have so many of them on this particular installer? I've tested it from multiple locations and component is coming from a reliable CDN - any thoughts? (perhaps the CDN is truly less reliable!)

The second issue, perhaps more serious as its a coding bug. I am forced to use NSISdl as well as inetc because NSISdl is able to make a SILENT call onInit to a tracking script.

As it stands, if you use inetc to make a silent request onInit, the installer loads in a minimised state and it is impossible to restore it programmatically! BringToFront, SendMessage, none of these work. I had this confirmed by AfrowUK and he told me to contact Tahkir.

Anyway, any advice on the above would be much appreciated!

Regards,
Ucool


Below is a list of Inetc possible result strings

static TCHAR szStatus[][32] = {
_T("OK"),_T("Connecting"),_T("Downloading"),_T("Cancelled"),_T("Connecting"), //_T("Opening URL")),
_T("Reconnect Pause"),_T("Terminated"),_T("Dialog Error"),_T("Open Internet Error"),
_T("Open URL Error"),_T("Transfer Error"),_T("File Open Error"),_T("File Write Error"),_T("File Read Error"),
_T("Reget Error"),_T("Connection Error"),_T("OpenRequest Error"),_T("SendRequest Error"),
_T("URL Parts Error"),_T("File Not Found (404)"),_T("CreateThread Error"),_T("Proxy Error (407)"),
_T("Access Forbidden (403)"),_T("Not Allowed (405)"),_T("Request Error"),_T("Server Error"),
_T("Unauthorized (401)"),_T("FtpCreateDir failed (550)"),_T("Error FTP path (550)"),_T("Not Modified"),
_T("Redirection")
};
What are numbers near messages in you post? Is this a statistics? For me "/TIMEOUT" looks like wrong command line or a stack content. Plug-in not reads all items or reads wrong items from stack. May be because of wrong URL item you have so many SendRequest Errors. Please note that plug-in may continue reading stack for the next URL/File pair if command line is not limited with /END parameter.