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

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

Аватара для kotkovets

Ветеран


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

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


wolkow70,
А справка для чего? где это вы видели, чтобы макрокоманды в секции прописывались, если уж вытянули чужой макрос - вера, что ли не позволяет посмотреть скрипт, где и в каком месте макросы нарисованы и как они работают? и для чего они нужны то?
Примерно можно упрощенно сделать вот так:
Код: Выделить весь код
!include "FileFunc.nsh"

!define Register "!insertmacro RegisterExtension"
!macro RegisterExtension extenstion ClassName DefaultIcon OpenCommand
  WriteRegStr HKLM "SOFTWARE\Classes\${extenstion}" "" "${ClassName}"
  WriteRegStr HKLM "SOFTWARE\Classes\${ClassName}\DefaultIcon" "" "${DefaultIcon}"
  WriteRegStr HKLM "SOFTWARE\Classes\${ClassName}\shell\open\command" "" "${OpenCommand}"
!macroend

Section Main
 SetOutPath "$INSTDIR\XnView" #помещает путь распаковки в $OUTDIR
${Register} ".bmp" "XnView.bmp" "$OUTDIR\XnView.exe,2" "$\"$OUTDIR\XnView.exe$\" $\"%1$\""
#---#
${RefreshShellIcons}
SectionEnd
/*
  получается в макросе вот такая запись структуры:
  WriteRegStr HKLM "SOFTWARE\Classes\.bmp" "" "XnView.bmp"
  WriteRegStr HKLM "SOFTWARE\Classes\XnView.bmp\DefaultIcon" "" "$OUTDIR\XnView.exe,2"
  WriteRegStr HKLM "SOFTWARE\Classes\.bmp\shell\open\command" "" "$\"$OUTDIR\XnView.exe$\" $\"%1$\""
*/

-------
Спасибо ВСЕМ за то, что тратите свое время, что бы ПОМОЧЬ МНЕ.

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:48, 05-04-2011 | #1026