Archive: 3DNA installer


3DNA installer
  If you're interested try out the download on www.3dna.net. I built the installer in NSIS using a custom built tool that would generate an install script which could be built by NSIS. I would be happy to answer any questions anyone has about how I've made the installer.
Perhaps the most unique page in the installer is a hardware check which checks to see if your system is capable of running our software.

Thanks to all the NSIS developers and community who took the time to answer my many questions.


Maybe you can post some screenshots so people don't have to download these huge files :)


Indeed I can, here's one


And here's another,


Can you post the detection function for CPU, RAM, VRAM etc. in the NSIS Archive: http://nsis.sourceforge.net/archive/nsisweb.php

I'm sure they can be useful for others.


Is it just me or are both of the screenshots identical???

Vytautas


That sure is a great screenshot, becaus eit shows how NSIS code can do practically anything!

T'is amazing stuff!

-Stu


Doh! You're right they are the same screenshot. Here's the other screenshot I meant to post.


Hmmmm... Good Screenshots! NSIS makes more than a simple installer, isn't it?


The hardware info plugin is now up for your enjoyment here in the archives. It is located in the "Plugins" area called "System hardware detection"


Could you post a copy of your registration form script & ini file?

Vytautas


I've attached the ini and an example custom function which I use to fill in the hardware information in the form before it is displayed. I cut out alot of stuff but it does show how you can work with the HwInfo plugin.


Ok it might help to actually attach the file. Let's try that again...


Ok, yes I know I messed up again. I'm going to get it this time for real.


Could you post your hardware check script and ini file?


Originally posted by Pizzadani
Could you post your hardware check script and ini file?
Hey sorry there Pizza, here's the function I use for displaying the hardware comparison window as well as determining the capabilities of the users system. I've got comments sprinkled around so hopefully you can get a fair idea of what's going on. The best thing to do is probably to look through the script and ask me any questions you may have. I didn't really clean it up all that much so there is some stuff in there which is not applicable such as the displaying of the banner window at the beginning of the function.

The basic idea behind the hardware page was too look at each piece of hardware you want to evaluate. Compare it against a set standard which you decide and assign that piece of hardware a score depending on how well it did. Then you add all the scores together to display a message to the user telling them how things are likely to run. Works pretty well. Like I said, ask me any questions you want I'll be happy to answer them.

Okay, can you give me still the ini file?


INI file is in the registration.zip attachment isn't it?

-Stu


Yes it is Afrow. That INI file from the registration.zip should be good to go.


Would it be possible to get the ini file for hwcompare.nsi ? I really like your screen capture of that panel.


It's in the zipfile:
http://forums.winamp.com/showpost.ph...6&postcount=14


The one for registration.jpg is in the zip file, but the one for hardwarecheck.jpg is not. I want to display a panel like hardwarecheck.jpg. I guess I could spend some time and recreate one from scratch. The source code to fill in hardwarecheck panel is included in one of the zip files, but not the ini.


You should try to use nsDialogs anyway.

Stu


Here is an INI file that works with the hwcompare.nsi file and a screenshot showing the result.


Hi,
Doeas this plugin get correctly RAM if it is more then 4GB?
Ps: I also recommand nsdialogs.
-Pawel


Sorry, I don't know if it can detect more than 4 GB. My computer has 4 GB and that gets reported as 4096 MB.

The plugin does not seem to detect video RAM correctly: my graphics card has 512 MB but the plugin reports only 256 MB.

I used the HwInfo plugin from the wiki: http://nsis.sourceforge.net/HwInfo_plug-in


I made quick test.
For me this plugin correctly returns CPU speed and VRAM (but it seems I have only 256MB, so I dont know what if it is more installed).
RAM function failes. It shows only 4GB. I guess you should use GlobalMemoryStatusEx() instead of GlobalMemoryStatus (if you use it :p)

http://meggamusic.co.uk/shup/1272558851/hw_test.png
-Pawel


Thank you. The attached ini file worked perfectly. The only thing that would make this dialog look better is if the first control was displayed with the first field not highlighted. Being in focus is ok, but the highlighted field changes the coloring.


You can set the focus to another control on the page to avoid this problem.

Near the end of hwcompare.nsi change

!insertmacro MUI_INSTALLOPTIONS_SHOW
to
; Set focus to the "Next" button to avoid having the cursor in the RAM size text box
GetDlgItem $R1 $HWNDPARENT 1
SendMessage $HWNDPARENT ${WM_NEXTDLGCTL} $R1 1
!insertmacro MUI_INSTALLOPTIONS_SHOW
Although I used the "Next" button here, you can change this code to set the focus to another control.

Originally posted by pengyou
You can set the focus to another control on the page to avoid this problem.
Not entirely sure about this specific case, but you could also set focus to the inner dialog;


SendMessage $dialog ${WM_SETFOCUS} $HWNDPARENT 0 

>
where $dialog is the hwnd for the inner dialog (as Pop'd from NSDialogs, for example)

That way no specific control has focus, but you can still use keyboard shortcuts (if using any).