Archive: Yet another OS Version Detection question


Yet another OS Version Detection question
I have looked through the posts regarding OS version detection, and have a few queries:

1. This thread shows a very usable method, but has to be built into NSIS. Has this been implemented? Could it be made into a DLL? I like this method since it give all possible Windows versions and service packs in an easily usable format, with very little script code.

2. This thread contains just such a DLL, but not delivering the same flexibility (I think).

3. Functions.htm describes a function to do the detection, but not to the extent of number 1 above, or even number 2.

Number 1 would be the preference since it has maximum flexibility with very little overhead. Can anyone explain (if it is not implemented somewhere) how I could implement it without having to recompile NSIS (don't know how to do that).

Has anyone come up with a better method recently?

Hope someone can help...I need to be really specific about the OS version.


The dll I (#2) wrote returns the exact version string(major and minor) of the windows distribution. Is there a more exact way? Also, it doesnt require any nsis modification.


Yet another OS Version Detection question
Does that include service packs?


Would GetDLLVersion help?
Just an idea: check version of kernel32.dll in system directory using GetDLLVersion. If I am correct, it returns major version number, minor version number, and build number. This method doesn't require to use any external DLL or use customized NSIS.

Another idea: check registry values. Unfortunately I forgot exact key names. Hopefully somebody will post them here. I remember it was easy to find them with regedit.

Sorry for vagueness :o --- I used such tricks long time ago and don't use them now.


Re: Yet another OS Version Detection question

Originally posted by simham_uk
Does that include service packs?
Check out this new thread re: a dll that does report service packs [ http://forums.winamp.com/showthread....threadid=90878 ]

THANKS!!!!!!!!!!!!!!!!!
WOW!!!!!

These tools are great dude, just what I needed!!

I don't suppose you know how to invoke an Internet connection? or have a DLL for it :-)


Nope not yet, but if I can find out/work out the proper way to do it I'll see what I can do. Do you just want to cause a dial up connection to be initiated (whatever the default one is) or do you want to initiate a socket connection to a particular place? I could probably make a basic socket client in a dll quite easily.


Sunjammer, it's OK, Kichik is having a look at a solution. When I get it done, I'll let you know!

Thanks for the offer!