Need your help one more time

Community Forums/Showcase/Need your help one more time

jfk EO-11110(Posted 2007) [#1]
I'm still working on this screensaver. Now this time it's using an Innosetup installer. This seems to work flawlessy.

I wonder if there is still a MAV if the screensaver will become active when you're logged in as a non-admin on XP, as it happened before. If so then it has something to do with the SCR file. I really hope it's gonna work this time.

Here's the file
http://www.melog.ch/sd/Install_SD_Bildschirm-Schoner.exe

Uninstall it using the System Settings "software > remove" tool.

Thanks a lot!


b32(Posted 2007) [#2]
The previous version gave the administrator error. But now it works, I have xp home edition. Nice, is that for some political party ? One bug: at the end of the installer, it complains about 'c:\windows\rundll32.exe'. I looked for it, and rundll32 is in my \system32 folder. However it ran anyway. The movement could be a bit more relaxed, now it moves a bit too enthousiastic to the end. Still, looks good.


CopperCircle(Posted 2007) [#3]
I get the same as "b32", works but looks for Windows\rundll32 which is the wrong location.


jfk EO-11110(Posted 2007) [#4]
Thank you! So you say after the rundll32 error there was no screensaver dialog pop up? It seems rundll32.exe is not always in the same folder: on my system it's {win} yours is {sys}. I have no idea how to set this in the innosetup script, anyone?

Yes the movement is a little jerky, probably because the vsync does not fit with the per frame-recorded motion very well. It is however not a calculated bezier curved ath or so, but recorded human flight controls.

I wouldn't say they are representative for my views, but yes, it's a political party.


b32(Posted 2007) [#5]
No, it wasn't jerky at all, it looks real nice. I would just say the movement could be a bit slower, now it seems to rush a bit. My suggestion is to decrease the speed with 5 or 10% or so. But it is not a big deal though.
About rundll, I found this:
http://www.northcode.com/forums/showthread.php?t=5830


TomToad(Posted 2007) [#6]
Nice screensaver. A little jerky on my laptop, but not too bad. As for the Rundll32.exe error, this is the inno setup script for a screensaver I wrote. Maybe it'll help you figure out what's wrong.
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

[Setup]
AppName=SpinIt
AppVerName=SpinIt v0.1b
AppPublisher=TomToad
CreateAppDir=no
OutputDir=C:\projects\ScreenSaver Framework
OutputBaseFilename=SpinItsetup
Compression=lzma
SolidCompression=yes

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"

[Files]
Source: "C:\projects\ScreenSaver Framework\spinit.scr"; DestDir: "{sys}"; Flags: ignoreversion confirmoverwrite
; NOTE: Don't use "Flags: ignoreversion" on any shared system files

[Run]
Filename: "{sys}\rundll32.exe"; Parameters: "desk.cpl,InstallScreenSaver {sys}\SpinIt.scr"



jfk EO-11110(Posted 2007) [#7]
Hi, thanks a lot. Your call of the runndll32.exe is the same as I used in the first place, but then it failed on my Win98se. It turned out the file was located in {win} and not in {sys}.

So now I needed some kind of conditional execution, depending on the existence of the file. I simply could use the Flag "skipifdoesntexist" and then call it in both path. This will suppress an error message if it doesn't exist. Hopefully the user has not a copy of the file in both folders. Even then it would only open the screensaver settings dialog twice (I guess this would be suppressed by a mutex function anyway).

So everybody should use this instead:

[Run]
Filename: "{sys}\rundll32.exe"; Parameters: "desk.cpl,InstallScreenSaver {sys}\SpinIt.scr"; Flags: "skipifdoesntexist"
Filename: "{win}\rundll32.exe"; Parameters: "desk.cpl,InstallScreenSaver {sys}\SpinIt.scr"; Flags: "skipifdoesntexist"



b32(Posted 2007) [#8]
In the link, they were using the Minversion tag:
Filename: "{sys}\rundll32.exe"; Parameters: "desk.cpl,InstallScreenSaver {sys}\GarSaver_Clock.scr"; MinVersion: 0, 1
Filename: "{win}\rundll32.exe"; Parameters: "desk.cpl,InstallScreenSaver {sys}\GarSaver_Clock.scr"; MinVersion: 1, 0

It came from the FAQ from innosetup.


jfk EO-11110(Posted 2007) [#9]
I don't get this, the number are version number and build number of the oS, eg: 4.1 for win98. So why do you use 0,1 and 1,0? I just used to read this faq section too, but I still don't get it :o)

Anyway, both works. Tanks a lot!


TomToad(Posted 2007) [#10]
jfk: the parameters are MinVersion: Win9xver, WinNTver.
You use 0 to indicate never install, and 1 to indicate install on everything.
So MinVersion: 0, 1 says to not install on any Win9x platform, but install on all WinNT platforms.
MonVersion: 1, 0 says to install on all Win9x platforms, but not any WinNT platforms.


jfk EO-11110(Posted 2007) [#11]
Thanks for clearing this, I was confused by the description in the HLP file, there they say the windows version number should be used as parameters of Minversion, eg: 4.2. Tho, I better follow the guide of the FAQ, and yours off course.


TomToad(Posted 2007) [#12]
Your information is correct, just not complete. You would normally put the minimum version, but if you use 0 then it would mean never install regardless of version. Using a low version number, such as 1 will insure that it will install on all versions. Examples:
MinVersion: 4.1,1 Install on minimum windows 9x v4.1, install on all NT versions
MinVersion: 0,3.2 Do not install on Windows 9x, minimum 3.2 of NT
MinVersion: 0,0 Do not install on anything. :)


jfk EO-11110(Posted 2007) [#13]
ok, I see, thanks. So I may set th emin requirement version 1.0, even of there was no version 1.0 (other than maybe windows 1.0 :o) )