tardo0807
27th June 2003 15:03 UTC
System::Int64Op usage Error
Hi all,
I am trying to get a handle on using the system.dll to perform the following math operation. The script will compile with no problems when the following lines are active:
System::Int64Op 30*86400 ;30 day limit in secs
Pop $2
MessageBox MB_OK "$2"
but I get a windows error when I try to test the installer. If anyone has seen this and knows of something I forgot to do ( like add a reference ) please let me know.
Thanks,
JP
kichik
27th June 2003 15:23 UTC
There are spaces in the usage line in the readme between the two argument and the operator. It should be in your line too. The line should be:
System::Int64Op 30 * 86400
That number fits well into a normal integer btw.
Vytautas
27th June 2003 15:28 UTC
[edit] kichik solved part of you problem just a sec quicker ;) [/edit]
To get rid of the error message add this line before the system call "Push $2". I tried this and no error was produced.
Vytautas
kichik
27th June 2003 15:38 UTC
The Windows error message was probably caused because there were missing arguments and System.dll either didn't check for it or got them from some other variables that were pushed before. Your additional Push must have given System.dll anoter argument and somehow caused the crash but it is not a solution because the syntax is still wrong.
tardo0807
27th June 2003 15:58 UTC
Thanks again kichik ( and Vytautas ),
Your fix worked. I also went with the regular int value as you suggested. I appreciate the feedback, it's been quite helpful as i try to learn this stuff on the fly...