http://msdn.microsoft.com/en-us/library/bb774096(VS.85).aspx
When using ssfPROGRAMFILESx86 with the value of 0x30, it gives the administrative tools path, while with a value of 0x2A gives Program Files X86.
Can be tested with the following vbscript:
Const PROGRAM_FILES_XEIGHTYSIX = &H2A& Const PROGRAM_FILES_XEIGHTYSIXWRONG = &H30& Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.Namespace(PROGRAM_FILES_XEIGHTYSIXWRONG) Set objFolderItem = objFolder.Self msgbox ("Wrong Path: 0x30 :"+objFolderItem.Path) Set objFolder = objShell.Namespace(PROGRAM_FILES_XEIGHTYSIX) Set objFolderItem = objFolder.Self msgbox ("Correct Path: 0x2A : "+objFolderItem.Path)