Search code examples
emacselisp

Programmatically distinguishing system-type -- Windos XP v. Windows 7


I'm looking for some assistance, please, to programmatically distinguish between system-type Windows XP versus Windows 7 -- using the same Emacs version.

Emacs Version: GNU Emacs 24.3.94.1 (i686-pc-mingw32) of 2014-10-02 on LEG570

I would like to do something like:

(cond
  ((eq system-type 'darwin)
     . . .)
  ((and
      (eq system-type 'windows-nt)
      (eq ... Windows XP)) ;; pseudocode
     . . .)
  ((and
      (eq system-type 'windows-nt)
      (eq ... Windows 7)) ;; pseudocode
     . . .) )

Solution

  • Try M-:x (w32-version) RET on those two systems. The result should be different. Then use it in something like:

    (cond ((equal (w32-version) '...) ...)