|
|
#1 | |
|
Senior Member
Join Date: Apr 2006
Posts: 113
|
InetLoad Broken
I'm having a problem with InetLoad.
And I'll accept help from Afrow to saivert. I am thinking intetload is busted when requesting https. When it is inside my main program, it totally fails to write an outfile. When implemented here, it writes the outfile, but crashes, not getting to the messagebox afterwards. And before you ask, I've done it with /SILENT and I've done it with /END and I've done it with /RESUME and every combination thereof. Quote:
Last edited by torpark; 4th November 2006 at 01:11. |
|
|
|
|
|
|
#2 |
|
Major Dude
Join Date: Feb 2004
Location: Moscow, Russia
Posts: 1,220
|
I received single-byte file both using InetLoad and Inetc ("0").
code: The problem is that both plug-ins work correct on all my comps and I cannot reproduce your problem, but independant testers reported that Inetc was stable in all modes. Below are http headers from inetc: HTTP/1.1 200 OK Date: Sat, 04 Nov 2006 12:02:36 GMT Server: Apache/1.3.26 (Unix) Debian GNU/Linux mod_ssl/2.8.9 OpenSSL/0.9.6g PHP/4.3.6 X-Powered-By: PHP/4.3.6 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Content-Type: text/html; charset=iso-8859-1 |
|
|
|
|
|
#3 |
|
Major Dude
Join Date: Feb 2004
Location: Moscow, Russia
Posts: 1,220
|
Also: in the silent mode you can use /popup option - InetLoad in all tests was stable both in /popup or /banner modes.
|
|
|
|
|
|
#4 |
|
Senior Member
Join Date: Apr 2006
Posts: 113
|
Hmmm. Strange indeed.
|
|
|
|
|
|
#5 |
|
Major Dude
Join Date: Feb 2004
Location: Moscow, Russia
Posts: 1,220
|
I added InetLoad internal switch to /popup for silent mode - no difference for user if installer and plug-in windowa are hidden. The same was done for Inetc earlier (it could not add NSISdl style child control to installer window if parent not exists).
|
|
|
|
|
|
#6 |
|
Senior Member
Join Date: Apr 2006
Posts: 113
|
Okay. Now I am sure the problem is with InetLoad.
It is not correctly understanding strings. If you directly substitute the value of $AUTHSTRING instead of using $AUTHSTRING, then it works and correclty returns "1" instead of "0". code: Which will return a "0" versus: code: which will return "1" |
|
|
|
|
|
#7 |
|
Major Dude
Join Date: Feb 2004
Location: Moscow, Russia
Posts: 1,220
|
[/RESUME RETRY_QUESTION]
If you want use default resume question value, please set /resume "" In your command line plug-in threats URL as resume text and cannot get correct URL, so script above could not work (with last versions). Plug-in exit code (see included samples) may help to understand what really happened. Using Pop after plug-in call also helps to keep stack clean - otherwise next plug-in call may get garbage as parameters. InetLoad not interprets parameters, it downloads basing on the strings coming from stack only - NSIS pushes command line parameters there, so this is not InetLoad problem. You can use Push instructions instead of command lin, beginning with last parameter. This should work, but you can use Push+Pop and compare strings to check stack correctness. And for silent mode resume always internally switched to 'false'. |
|
|
|
|
|
#8 | |
|
Senior Member
Join Date: Apr 2006
Posts: 113
|
Then why does it still not return "1" when:
code: Quote:
code: |
|
|
|
|
|
|
#9 |
|
Major Dude
Join Date: Feb 2004
Location: Moscow, Russia
Posts: 1,220
|
How it works
![]() NSIS takes parameters beginning the last one and pushes them to installer's stack - this way it transfers parameters to plug-in. No difference for plug-in what form of stack filling was used orcode: code: first form is shorter and so used more often, but second form shows what really happens. I used short form for samples. Just return $_REQUEST['md5'] string from check.php and compare with string sent
|
|
|
|
|
|
#10 |
|
Senior Member
Join Date: Apr 2006
Posts: 113
|
Takhir, your answer is absolute bullshit. It works using the characters, it stops working when using a variable. If you just don't know the answer admit that Inetload is broken or that nsis isn't properly passing variables.
Once again: This one works, and the next code example does not. This has zero to do with parameters or the stack or anything else. It is a direct substitution that is not syntax related. The one that works: code: And now the one that doesn't, which is a direct substitution using a string instead of text: code: As you notice, the first code produces "1", and the second code produces "0". 1, from the server, means that the website address exists, and 0 means it does not. So that direct substitution which is entirely equivalent, should result in a "1" instead of a "0". There is no reason that the first way should succeed and the second way shouldn't, if InetLoad or NSIS didn't have errors. I seriously am waiting for an explanation about how these are both just fine and now it is some other issue. |
|
|
|
|
|
#11 |
|
M.I.A.
[NSIS Dev, Mod] Join Date: Oct 2001
Location: Israel
Posts: 11,337
|
Nice way of saying thank you, torpark.
You have an extra set of quotes there. NSIS FAQ | NSIS Home Page | Donate $ "I hear and I forget. I see and I remember. I do and I understand." -- Confucius |
|
|
|
|
|
#12 |
|
Senior Member
Join Date: Apr 2006
Posts: 113
|
Kichik, you are brilliant. That is exactly the right answer. No wonder I wasn't seeing the issue.
|
|
|
|
![]() |
|
|||||||
| Thread Tools | Search this Thread |
| Display Modes | |
|
|