CPUDesc plug-in

From NSIS Wiki
Revision as of 23:14, 29 April 2005 by ConversionBot (talk | contribs) (Updated author links.)
Jump to navigationJump to search
Author: menakkis (talk, contrib)


Links

cpudesc.zip (12 KB)

Description

It's a plugin with one function: tell(). It returns a string giving some information about the CPU on the computer where your setup program's being run. This info string always has the same fields in exactly the same place, so it's easy to pull it apart. The info string looks like this:

 INTELP=d AMD=add PPRO=b MMX=d SSE=b SSE2=b 3DNOW=d ARCH=dd LEVEL=dd NCPU=dd

"d" means a decimal digit (0..9), "a" means a letter (A..Z), and "b" means a boolean digit (0 or 1).

Usage

(e.g. in your Install section):

; ...
  cpudesc::tell
  Pop $0                     ;full identification string in $0
 
  StrCpy $1 $0 1, 22         ;pull out one character after PPRO=
  IntFmt $2 "%u" $1          ; and turn it into a number
  IntCmpU $2 1 +1 +3 +3      ;pick a BLOG dep on PPro compatibility
  File /oname=blog.exe "blog_source_directory\blog_gen.exe"
  Goto +2
  File /oname=blog.exe "blog_source_directory\blog_pro.exe"
; ... the rest of your Install section

See cpudesc.txt for more info.