Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для sawe

Пользователь


Сообщения: 89
Благодарности: 20

Профиль | Отправить PM | Цитировать


Хотел бы посоветоваться с Мэтрами NSIS-а!
Windows 7 и Vista имеет ряд ограничений на папку C:\Program Files.
При установке некоторых программ а так же игр (не имеющий профиля), следует выбирать другую папку установки.
То есть при установки в Windows 7 и Vista предлагать по умолчанию другую папку (к примеру Games\XXX), в других Windows предлагать стандартно C:\Program Files\XXX.
Написал простую логику, но при выборе другой папки или диска терялась \XXX , переписал заново вроде всё работает, но я не уверен полностью.
Прошу проверить!

Код: Выделить весь код
  LoadLanguageFile "${NSISDIR}\Contrib\Language files\Russian.nlf"
  XPStyle on

!include WinVer.nsh

  Var SysDrive
  Var INSTIPE
  Var SETUPDIR

Function .onInit
  Pop $0 
  StrCpy $INSTIPE "$PROGRAMFILES"
  
  ${If} ${IsWinVista} 
    StrCpy $SysDrive $WINDIR 2
    StrCpy $INSTIPE "$SysDrive\Games"
  ${ElseIf} ${IsWin7} 
   StrCpy $SysDrive $WINDIR 2
    StrCpy $INSTIPE "$SysDrive\Games"
  ${EndIf}
  
  StrCpy $INSTDIR "$INSTIPE\XXX"
  StrCpy $SETUPDIR "$INSTDIR"
FunctionEnd

  OutFile "XXX_setup.exe"      
  InstallDir "$SETUPDIR\XXX"
  
Page directory
  
Section -XXX
SectionEnd

Отправлено: 22:15, 06-05-2011 | #1155