mirror of
https://git.lyx.org/repos/lyx.git
synced 2025-01-05 08:57:35 +00:00
more installer infrastructure changes:
- hide LyX's console window - update source code Readmes - get rid of abi_util_fileassoc.nsh - small uninstaller cleanup - fix all known Update installer bugs git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18152 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
66e8215289
commit
09cd4da93f
@ -1,11 +1,14 @@
|
|||||||
Version LyX 1.5svn-02-05-2007
|
Version LyX 1.5svn-02-05-2007
|
||||||
- LyX 1.5svn from 02-05-2007
|
- LyX 1.5svn from 02-05-2007
|
||||||
|
|
||||||
|
- LyX's console window is now hidden -> updated source code Readmes
|
||||||
- fix bug that file associations were set also when the user has chosen
|
- fix bug that file associations were set also when the user has chosen
|
||||||
to leave them untouched
|
to leave them untouched
|
||||||
- Update installer: new option to choose wheter the file associations
|
- Update installer: new option to choose wheter the file associations
|
||||||
should be updated or not
|
should be updated or not
|
||||||
- Update installer: fix uninstalling
|
- Update installer: fix uninstalling
|
||||||
|
- Update installer: fix that a subfolder of the old install folder
|
||||||
|
remained after the new install folder has been set
|
||||||
|
|
||||||
|
|
||||||
Version LyX 1.5beta2-21-04-2007
|
Version LyX 1.5beta2-21-04-2007
|
||||||
@ -50,7 +53,7 @@ Version LyX 1.5svn-09-04-2007
|
|||||||
- new layout and template files for the g-brief2 letter class and the
|
- new layout and template files for the g-brief2 letter class and the
|
||||||
moderncv and europecv curriculum vitae classes
|
moderncv and europecv curriculum vitae classes
|
||||||
- reworked BibTeX file parser
|
- reworked BibTeX file parser
|
||||||
- reworked graphics, nomenclature, and math delimiter dialog
|
- reworked graphics, glossary, and math delimiter dialog
|
||||||
- new Spanish translation of the Extended manual
|
- new Spanish translation of the Extended manual
|
||||||
- many other bugfixes
|
- many other bugfixes
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ Function ConfigureLyX
|
|||||||
FileWrite $R1 '@echo off$\r$\n\
|
FileWrite $R1 '@echo off$\r$\n\
|
||||||
SET LANG=$LangCode$\r$\n\
|
SET LANG=$LangCode$\r$\n\
|
||||||
SET AIK_DATA_DIR=${AiksaurusDir}$\r$\n\
|
SET AIK_DATA_DIR=${AiksaurusDir}$\r$\n\
|
||||||
start "LyX" "lyx.exe" %*$\r$\n'
|
start "${PRODUCT_NAME}" "${LAUNCHER_NAME}" %*$\r$\n'
|
||||||
FileClose $R1
|
FileClose $R1
|
||||||
IfErrors 0 +2
|
IfErrors 0 +2
|
||||||
MessageBox MB_OK|MB_ICONEXCLAMATION "$(CreateCmdFilesFailed)"
|
MessageBox MB_OK|MB_ICONEXCLAMATION "$(CreateCmdFilesFailed)"
|
||||||
@ -73,18 +73,18 @@ Function ConfigureLyX
|
|||||||
${if} $CreateFileAssociations == "true"
|
${if} $CreateFileAssociations == "true"
|
||||||
WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "${PRODUCT_EXE}"
|
WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "${PRODUCT_EXE}"
|
||||||
${endif}
|
${endif}
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "RootKey" "$ProductRootKey"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "RootKey" "$ProductRootKey"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "${PRODUCT_UNINSTALL_EXE}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" "${PRODUCT_UNINSTALL_EXE}"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "${PRODUCT_EXE}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "${PRODUCT_EXE}"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "StartMenu" "$SMPROGRAMS\$StartmenuFolder"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "StartMenu" "$SMPROGRAMS\$StartmenuFolder"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLUpdateInfo" "${PRODUCT_INFO_URL}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "URLUpdateInfo" "${PRODUCT_INFO_URL}"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_ABOUT_URL}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_ABOUT_URL}"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "LyX Team"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "Publisher" "LyX Team"
|
||||||
WriteRegStr ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "HelpLink" "${PRODUCT_HELP_LINK}"
|
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "HelpLink" "${PRODUCT_HELP_LINK}"
|
||||||
WriteRegDWORD ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "NoModify" 0x00000001
|
WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoModify" 0x00000001
|
||||||
WriteRegDWORD ${PRODUCT_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "NoRepair" 0x00000001
|
WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoRepair" 0x00000001
|
||||||
|
|
||||||
; create start menu entry
|
; create start menu entry
|
||||||
SetOutPath "$INSTDIR\bin"
|
SetOutPath "$INSTDIR\bin"
|
||||||
@ -101,8 +101,15 @@ Function ConfigureLyX
|
|||||||
|
|
||||||
; register the extension .lyx
|
; register the extension .lyx
|
||||||
${if} $CreateFileAssociations == "true"
|
${if} $CreateFileAssociations == "true"
|
||||||
${CreateApplicationAssociation} "${PRODUCT_NAME}" "${PRODUCT_NAME}" "$(FileTypeTitle)" "${PRODUCT_EXE}" "${PRODUCT_BAT}"
|
; write informations about file type
|
||||||
${CreateFileAssociation} "${PRODUCT_EXT}" "${PRODUCT_NAME}" "${PRODUCT_MIME_TYPE}"
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_REGNAME}" "" "${PRODUCT_NAME} Document"
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_REGNAME}\DefaultIcon" "" "${PRODUCT_EXE}"
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_REGNAME}\Shell\open\command" "" '"${LAUNCHER_EXE}" "%1"'
|
||||||
|
; write informations about file extensions
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_EXT}" "" "${PRODUCT_REGNAME}"
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_EXT}" "Content Type" "${PRODUCT_MIME_TYPE}"
|
||||||
|
; refresh shell
|
||||||
|
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) (${SHCNE_ASSOCCHANGED}, ${SHCNF_IDLIST}, 0, 0)'
|
||||||
${endif}
|
${endif}
|
||||||
|
|
||||||
; create the LyX Application Data folder for all users
|
; create the LyX Application Data folder for all users
|
||||||
|
@ -10,6 +10,10 @@ Section "-Installation actions" SecInstallation
|
|||||||
StrCpy $LangName ""
|
StrCpy $LangName ""
|
||||||
StrCpy $LangNameSys ""
|
StrCpy $LangNameSys ""
|
||||||
|
|
||||||
|
; init, this variable is later only set to a value in function InstDirChange
|
||||||
|
; when the $INSTDIR is changed
|
||||||
|
StrCpy $INSTDIR_OLD ""
|
||||||
|
|
||||||
; extract modified files
|
; extract modified files
|
||||||
Call UpdateModifiedFiles ; macro from Updated.nsh
|
Call UpdateModifiedFiles ; macro from Updated.nsh
|
||||||
|
|
||||||
@ -28,8 +32,12 @@ Section "-Installation actions" SecInstallation
|
|||||||
; delete old registry entries
|
; delete old registry entries
|
||||||
${if} $CreateFileAssociations == "true"
|
${if} $CreateFileAssociations == "true"
|
||||||
DeleteRegKey SHCTX "${PRODUCT_DIR_REGKEY}"
|
DeleteRegKey SHCTX "${PRODUCT_DIR_REGKEY}"
|
||||||
; remove extension .lyx
|
; remove file extension .lyx
|
||||||
${RemoveFileAssociation} "${PRODUCT_EXT}" "${PRODUCT_NAME}"
|
ReadRegStr $R0 SHCTX "Software\Classes\${PRODUCT_EXT}" ""
|
||||||
|
${if} $R0 == "${PRODUCT_REGNAME}"
|
||||||
|
DeleteRegKey SHCTX "Software\Classes\${PRODUCT_EXT}"
|
||||||
|
DeleteRegKey SHCTX "Software\Classes\${PRODUCT_REGNAME}"
|
||||||
|
${endif}
|
||||||
${endif}
|
${endif}
|
||||||
DeleteRegKey SHCTX "${PRODUCT_UNINST_KEY_OLD}"
|
DeleteRegKey SHCTX "${PRODUCT_UNINST_KEY_OLD}"
|
||||||
DeleteRegKey HKCR "Applications\lyx.bat"
|
DeleteRegKey HKCR "Applications\lyx.bat"
|
||||||
@ -43,6 +51,19 @@ Section "-Installation actions" SecInstallation
|
|||||||
; Refresh registry setings for the uninstaller
|
; Refresh registry setings for the uninstaller
|
||||||
Call RefreshRegUninst
|
Call RefreshRegUninst
|
||||||
|
|
||||||
|
; Create a batch file to start LyX with the environment variables set
|
||||||
|
; !only needed in this version! remove it for the next release
|
||||||
|
ClearErrors
|
||||||
|
Delete "${PRODUCT_BAT}"
|
||||||
|
FileOpen $R1 "${PRODUCT_BAT}" w
|
||||||
|
FileWrite $R1 '@echo off$\r$\n\
|
||||||
|
SET LANG=$LangCode$\r$\n\
|
||||||
|
SET AIK_DATA_DIR=${AiksaurusDir}$\r$\n\
|
||||||
|
start "${PRODUCT_NAME}" "${LAUNCHER_NAME}" %*$\r$\n'
|
||||||
|
FileClose $R1
|
||||||
|
IfErrors 0 +2
|
||||||
|
MessageBox MB_OK|MB_ICONEXCLAMATION "$(CreateCmdFilesFailed)"
|
||||||
|
|
||||||
; register LyX
|
; register LyX
|
||||||
${if} $CreateFileAssociations == "true"
|
${if} $CreateFileAssociations == "true"
|
||||||
WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" "" "${PRODUCT_EXE}"
|
WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" "" "${PRODUCT_EXE}"
|
||||||
@ -75,8 +96,15 @@ Section "-Installation actions" SecInstallation
|
|||||||
|
|
||||||
; register the extension .lyx
|
; register the extension .lyx
|
||||||
${if} $CreateFileAssociations == "true"
|
${if} $CreateFileAssociations == "true"
|
||||||
${CreateApplicationAssociation} "${PRODUCT_NAME}" "${PRODUCT_NAME}" "$(FileTypeTitle)" "${PRODUCT_EXE}" "${PRODUCT_BAT}"
|
; write informations about file type
|
||||||
${CreateFileAssociation} "${PRODUCT_EXT}" "${PRODUCT_NAME}" "${PRODUCT_MIME_TYPE}"
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_REGNAME}" "" "${PRODUCT_NAME} Document"
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_REGNAME}\DefaultIcon" "" "${PRODUCT_EXE}"
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_REGNAME}\Shell\open\command" "" '"${LAUNCHER_EXE}" "%1"'
|
||||||
|
; write informations about file extensions
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_EXT}" "" "${PRODUCT_REGNAME}"
|
||||||
|
WriteRegStr SHCTX "Software\Classes\${PRODUCT_EXT}" "Content Type" "${PRODUCT_MIME_TYPE}"
|
||||||
|
; refresh shell
|
||||||
|
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) (${SHCNE_ASSOCCHANGED}, ${SHCNF_IDLIST}, 0, 0)'
|
||||||
${endif}
|
${endif}
|
||||||
|
|
||||||
; create Uninstaller
|
; create Uninstaller
|
||||||
@ -109,6 +137,13 @@ Section "-Installation actions" SecInstallation
|
|||||||
ExecWait '"$INSTDIR\Resources\configLyX.bat"'
|
ExecWait '"$INSTDIR\Resources\configLyX.bat"'
|
||||||
Delete "$INSTDIR\Resources\configLyX.bat"
|
Delete "$INSTDIR\Resources\configLyX.bat"
|
||||||
|
|
||||||
|
; for some unknown odd reason the folder $INSTDIR_OLD\Resources\ui
|
||||||
|
; is not deleted in function InstDirChange, so the deletion has to be called
|
||||||
|
; again to make it work
|
||||||
|
${if} $INSTDIR_OLD != ""
|
||||||
|
RMDir /r $INSTDIR_OLD
|
||||||
|
${endif}
|
||||||
|
|
||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
; -------------------------------------------
|
; -------------------------------------------
|
||||||
@ -132,6 +167,7 @@ Function InstDirChange
|
|||||||
CopyFiles "$INSTDIR\*.*" "$INSTDIR_NEW"
|
CopyFiles "$INSTDIR\*.*" "$INSTDIR_NEW"
|
||||||
; delete the old folder
|
; delete the old folder
|
||||||
RMDir /r $INSTDIR
|
RMDir /r $INSTDIR
|
||||||
|
StrCpy $INSTDIR_OLD $INSTDIR
|
||||||
StrCpy $INSTDIR $INSTDIR_NEW
|
StrCpy $INSTDIR $INSTDIR_NEW
|
||||||
|
|
||||||
; set new PATH_PREFIX in the file lyxrc.dist
|
; set new PATH_PREFIX in the file lyxrc.dist
|
||||||
|
@ -0,0 +1,45 @@
|
|||||||
|
# LyX for Windows Launcher
|
||||||
|
# Author: Joost Verburg and Uwe Stöhr
|
||||||
|
#
|
||||||
|
# This application will start LyX without the console.
|
||||||
|
|
||||||
|
!include "FileFunc.nsh"
|
||||||
|
!insertmacro GetParameters
|
||||||
|
|
||||||
|
Var Parameters
|
||||||
|
|
||||||
|
OutFile LyXLauncher.exe
|
||||||
|
|
||||||
|
Icon "icons\lyx_32x32.ico"
|
||||||
|
LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf"
|
||||||
|
|
||||||
|
#--------------------------------
|
||||||
|
#Version information
|
||||||
|
|
||||||
|
VIProductVersion "1.0.0.0"
|
||||||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "LyXLauncher"
|
||||||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "Launcher for LyX - The Document Processor"
|
||||||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "1.0"
|
||||||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "LyX is Copyright 1995-2007 by the LyX Team"
|
||||||
|
|
||||||
|
#--------------------------------
|
||||||
|
#Main application
|
||||||
|
|
||||||
|
Section -Launch
|
||||||
|
|
||||||
|
# hide the application window as only the window of the startet lyx.exe
|
||||||
|
# should be visible
|
||||||
|
HideWindow
|
||||||
|
|
||||||
|
# get the parameters LyX is called with: LyX-document to be opened etc.
|
||||||
|
${GetParameters} $Parameters # macro from FileFunc.nsh
|
||||||
|
|
||||||
|
# start LyX and hide the command line window
|
||||||
|
Push '"$EXEDIR\lyx.exe" $Parameters'
|
||||||
|
CallInstDLL "$EXEDIR\Console.dll" ExecToLog
|
||||||
|
|
||||||
|
# quit the application when LyX was closed by the user
|
||||||
|
Quit
|
||||||
|
|
||||||
|
SectionEnd
|
||||||
|
|
@ -111,11 +111,6 @@ Var UserName
|
|||||||
; and LyX's menu language
|
; and LyX's menu language
|
||||||
!include "LanguageSettings.nsh"
|
!include "LanguageSettings.nsh"
|
||||||
|
|
||||||
; Use the Abiword macros to help set up associations with the file extension in the Registry.
|
|
||||||
; Grabbed from
|
|
||||||
; http://abiword.pchasm.org/source/cvs/abiword-cvs/abi/src/pkg/win/setup/NSISv2/abi_util_fileassoc.nsh
|
|
||||||
!include "abi_util_fileassoc.nsh"
|
|
||||||
|
|
||||||
; Function to configure LyX
|
; Function to configure LyX
|
||||||
!include "ConfigLyX.nsh"
|
!include "ConfigLyX.nsh"
|
||||||
|
|
||||||
|
@ -112,11 +112,6 @@ Var UserName
|
|||||||
; and LyX's menu language
|
; and LyX's menu language
|
||||||
!include "LanguageSettings.nsh"
|
!include "LanguageSettings.nsh"
|
||||||
|
|
||||||
; Use the Abiword macros to help set up associations with the file extension in the Registry.
|
|
||||||
; Grabbed from
|
|
||||||
; http://abiword.pchasm.org/source/cvs/abiword-cvs/abi/src/pkg/win/setup/NSISv2/abi_util_fileassoc.nsh
|
|
||||||
!include "abi_util_fileassoc.nsh"
|
|
||||||
|
|
||||||
; Function to configure LyX
|
; Function to configure LyX
|
||||||
!include "ConfigLyX.nsh"
|
!include "ConfigLyX.nsh"
|
||||||
|
|
||||||
|
@ -35,6 +35,7 @@ SetCompressor lzma
|
|||||||
; variables only used in this installer version
|
; variables only used in this installer version
|
||||||
|
|
||||||
Var INSTDIR_NEW
|
Var INSTDIR_NEW
|
||||||
|
Var INSTDIR_OLD
|
||||||
; Variables used by all installer versions
|
; Variables used by all installer versions
|
||||||
Var AspellInstallYes
|
Var AspellInstallYes
|
||||||
Var AspellBaseReg
|
Var AspellBaseReg
|
||||||
@ -84,11 +85,6 @@ Var UserName
|
|||||||
; Set of various macros and functions
|
; Set of various macros and functions
|
||||||
!include "LyXUtils.nsh"
|
!include "LyXUtils.nsh"
|
||||||
|
|
||||||
; Use the Abiword macros to help set up associations with the file extension in the Registry.
|
|
||||||
; Grabbed from
|
|
||||||
; http://abiword.pchasm.org/source/cvs/abiword-cvs/abi/src/pkg/win/setup/NSISv2/abi_util_fileassoc.nsh
|
|
||||||
!include "abi_util_fileassoc.nsh"
|
|
||||||
|
|
||||||
; list with modified files
|
; list with modified files
|
||||||
!include "Updated.nsh"
|
!include "Updated.nsh"
|
||||||
|
|
||||||
|
@ -8,11 +8,21 @@ http://developer.berlios.de/projects/lyxwininstall/
|
|||||||
|
|
||||||
---
|
---
|
||||||
General
|
General
|
||||||
|
|
||||||
To compile the installer scripts you need at least NSIS version 2.25.
|
To compile the installer scripts you need at least NSIS version 2.25.
|
||||||
|
|
||||||
The installer scripts needs the plugins "FindProc" and "InetLoad".
|
The installer scripts needs the plugins "FindProc" and "InetLoad".
|
||||||
To use them copy the files "FindProcDLL.dll" and "InetLoad.dll" from the
|
To use them, copy the files "FindProcDLL.dll" and "InetLoad.dll" from the
|
||||||
"LyXPackage" folder to NSIS'"Plugins" directory.
|
"LyXPackage" folder to NSIS'"Plugins" directory.
|
||||||
|
|
||||||
|
Only when you have built your own file tree:
|
||||||
|
- Copy the files "preferencesxxx", "Aspellxxx.txt", and "session" from the
|
||||||
|
specials folder to the \Resources folder
|
||||||
|
- Copy the files "Console.dll" and "LyXLauncher.exe" from the specials folder
|
||||||
|
to the \bin folder where also the "lyx.exe" is.
|
||||||
|
- Copy all "*.exe" files from the specials\PDFViewWin folder to the \bin
|
||||||
|
folder where also the "lyx.exe" is.
|
||||||
|
|
||||||
---
|
---
|
||||||
Internationalization
|
Internationalization
|
||||||
|
|
||||||
|
@ -8,11 +8,21 @@ http://developer.berlios.de/projects/lyxwininstall/
|
|||||||
|
|
||||||
---
|
---
|
||||||
General
|
General
|
||||||
|
|
||||||
To compile the installer scripts you need at least NSIS version 2.25.
|
To compile the installer scripts you need at least NSIS version 2.25.
|
||||||
|
|
||||||
The installer scripts needs the plugins "FindProc" and "InetLoad".
|
The installer scripts needs the plugins "FindProc" and "InetLoad".
|
||||||
To use them copy the files "FindProcDLL.dll" and "InetLoad.dll" from the
|
To use them copy the files "FindProcDLL.dll" and "InetLoad.dll" from the
|
||||||
"LyXPackage" folder to NSIS'"Plugins" directory.
|
"LyXPackage" folder to NSIS'"Plugins" directory.
|
||||||
|
|
||||||
|
Only when you have built your own file tree:
|
||||||
|
- Copy the files "preferencesxxx", "Aspellxxx.txt", and "session" from the
|
||||||
|
specials folder to the \Resources folder
|
||||||
|
- Copy the files "Console.dll" and "LyXLauncher.exe" from the specials folder
|
||||||
|
to the \bin folder where also the "lyx.exe" is.
|
||||||
|
- Copy all "*.exe" files from the specials\PDFViewWin folder to the \bin
|
||||||
|
folder where also the "lyx.exe" is.
|
||||||
|
|
||||||
---
|
---
|
||||||
Internationalization
|
Internationalization
|
||||||
|
|
||||||
|
@ -11,11 +11,14 @@
|
|||||||
!define PRODUCT_EXE "$INSTDIR\bin\lyx.exe"
|
!define PRODUCT_EXE "$INSTDIR\bin\lyx.exe"
|
||||||
!define PRODUCT_BAT "$INSTDIR\bin\lyx.bat"
|
!define PRODUCT_BAT "$INSTDIR\bin\lyx.bat"
|
||||||
!define PRODUCT_EXT ".lyx"
|
!define PRODUCT_EXT ".lyx"
|
||||||
|
!define PRODUCT_REGNAME "LyX.Document"
|
||||||
!define PRODUCT_MIME_TYPE "application/lyx"
|
!define PRODUCT_MIME_TYPE "application/lyx"
|
||||||
!define PRODUCT_UNINSTALL_EXE "$INSTDIR\LyXWinUninstall.exe"
|
!define PRODUCT_UNINSTALL_EXE "$INSTDIR\LyXWinUninstall.exe"
|
||||||
!define PRODUCT_HELP_LINK "http://www.lyx.org/internet/mailing.php"
|
!define PRODUCT_HELP_LINK "http://www.lyx.org/internet/mailing.php"
|
||||||
!define PRODUCT_ABOUT_URL "http://www.lyx.org/about/"
|
!define PRODUCT_ABOUT_URL "http://www.lyx.org/about/"
|
||||||
!define PRODUCT_INFO_URL "http://www.lyx.org/"
|
!define PRODUCT_INFO_URL "http://www.lyx.org/"
|
||||||
|
!define LAUNCHER_NAME "LyXLauncher.exe"
|
||||||
|
!define LAUNCHER_EXE "$INSTDIR\bin\LyXLauncher.exe"
|
||||||
|
|
||||||
BrandingText "LyXWinInstaller v3.14 - ${INSTALLER_VERSION}"
|
BrandingText "LyXWinInstaller v3.14 - ${INSTALLER_VERSION}"
|
||||||
|
|
||||||
@ -28,6 +31,9 @@ BrandingText "LyXWinInstaller v3.14 - ${INSTALLER_VERSION}"
|
|||||||
; Replaced by HKLM or HKCU depending on SetShellVarContext.
|
; Replaced by HKLM or HKCU depending on SetShellVarContext.
|
||||||
!define PRODUCT_ROOT_KEY "SHCTX"
|
!define PRODUCT_ROOT_KEY "SHCTX"
|
||||||
|
|
||||||
|
; registry preparations
|
||||||
|
!define SHCNE_ASSOCCHANGED 0x08000000
|
||||||
|
!define SHCNF_IDLIST 0
|
||||||
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\lyx.exe"
|
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\lyx.exe"
|
||||||
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\LyX${PRODUCT_VERSION_SHORT}"
|
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\LyX${PRODUCT_VERSION_SHORT}"
|
||||||
|
|
||||||
|
@ -132,6 +132,13 @@ Section "un.LyX" un.SecUnProgramFiles
|
|||||||
DeleteRegKey SHCTX "SOFTWARE\Aiksaurus"
|
DeleteRegKey SHCTX "SOFTWARE\Aiksaurus"
|
||||||
${endif}
|
${endif}
|
||||||
|
|
||||||
|
; remove file extension .lyx
|
||||||
|
ReadRegStr $R0 SHCTX "Software\Classes\${PRODUCT_EXT}" ""
|
||||||
|
${if} $R0 == "${PRODUCT_REGNAME}"
|
||||||
|
DeleteRegKey SHCTX "Software\Classes\${PRODUCT_EXT}"
|
||||||
|
DeleteRegKey SHCTX "Software\Classes\${PRODUCT_REGNAME}"
|
||||||
|
${endif}
|
||||||
|
|
||||||
; the following can only be done with admin permissions
|
; the following can only be done with admin permissions
|
||||||
${if} $Answer == "yes" ; if admin
|
${if} $Answer == "yes" ; if admin
|
||||||
|
|
||||||
@ -164,10 +171,6 @@ Section "un.LyX" un.SecUnProgramFiles
|
|||||||
DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "MIKTEX_AUTOINSTALL"
|
DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "MIKTEX_AUTOINSTALL"
|
||||||
DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "MIKTEX_REPOSITORY"
|
DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "MIKTEX_REPOSITORY"
|
||||||
|
|
||||||
; remove extension .lyx
|
|
||||||
${RemoveFileAssociation} "${PRODUCT_EXT}" "${PRODUCT_NAME}"
|
|
||||||
DeleteRegKey HKCR "${PRODUCT_NAME}"
|
|
||||||
|
|
||||||
${endif} ; end if Answer (if admin)
|
${endif} ; end if Answer (if admin)
|
||||||
|
|
||||||
SetAutoClose true
|
SetAutoClose true
|
||||||
|
@ -2,7 +2,9 @@ Function UpdateModifiedFiles
|
|||||||
|
|
||||||
; list with modified files for LyX 1.5svn 30-04-2007
|
; list with modified files for LyX 1.5svn 30-04-2007
|
||||||
SetOutPath "$INSTDIR\bin"
|
SetOutPath "$INSTDIR\bin"
|
||||||
|
File "${PRODUCT_SOURCEDIR}\bin\Console.dll"
|
||||||
File "${PRODUCT_SOURCEDIR}\bin\lyx.exe" ; always here
|
File "${PRODUCT_SOURCEDIR}\bin\lyx.exe" ; always here
|
||||||
|
File "${PRODUCT_SOURCEDIR}\bin\LyXLauncher.exe"
|
||||||
File "${PRODUCT_SOURCEDIR}\bin\tex2lyx.exe" ; always here
|
File "${PRODUCT_SOURCEDIR}\bin\tex2lyx.exe" ; always here
|
||||||
SetOutPath "$INSTDIR\Resources"
|
SetOutPath "$INSTDIR\Resources"
|
||||||
File "${PRODUCT_SOURCEDIR}\Resources\unicodesymbols"
|
File "${PRODUCT_SOURCEDIR}\Resources\unicodesymbols"
|
||||||
@ -33,7 +35,7 @@ Function UpdateModifiedFiles
|
|||||||
File "${PRODUCT_SOURCEDIR}\Resources\examples\modernCV.lyx"
|
File "${PRODUCT_SOURCEDIR}\Resources\examples\modernCV.lyx"
|
||||||
File "${PRODUCT_SOURCEDIR}\Resources\examples\simplecv.lyx"
|
File "${PRODUCT_SOURCEDIR}\Resources\examples\simplecv.lyx"
|
||||||
SetOutPath "$INSTDIR\Resources\examples\de"
|
SetOutPath "$INSTDIR\Resources\examples\de"
|
||||||
File "$INSTDIR\Resources\examples\de\Dezimal.lyx"
|
File "${PRODUCT_SOURCEDIR}\Resources\examples\de\Dezimal.lyx"
|
||||||
SetOutPath "$INSTDIR\Resources\images"
|
SetOutPath "$INSTDIR\Resources\images"
|
||||||
File "${PRODUCT_SOURCEDIR}\Resources\images\math-superscript.xpm"
|
File "${PRODUCT_SOURCEDIR}\Resources\images\math-superscript.xpm"
|
||||||
File "${PRODUCT_SOURCEDIR}\Resources\images\tabular-feature_set-rotate-cell.xpm"
|
File "${PRODUCT_SOURCEDIR}\Resources\images\tabular-feature_set-rotate-cell.xpm"
|
||||||
|
@ -1,109 +0,0 @@
|
|||||||
;Title AbiWord for Windows, NSIS v2 series installer script
|
|
||||||
;FileDesc Utility functions to set and save/restore file extension to application associations
|
|
||||||
|
|
||||||
|
|
||||||
!ifndef _ABI_UTIL_FILEASSOC_NSH_
|
|
||||||
!define _ABI_UTIL_FILEASSOC_NSH_
|
|
||||||
|
|
||||||
|
|
||||||
!ifdef HAVE_SYSTEM_PLUGIN
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
;; RefreshShellIcons based on
|
|
||||||
;; http://nsis.sourceforge.net/archive/nsisweb.php?page=236&instances=0
|
|
||||||
;; by jerome tremblay - april 2003
|
|
||||||
|
|
||||||
!define SHCNE_ASSOCCHANGED 0x08000000
|
|
||||||
!define SHCNF_IDLIST 0
|
|
||||||
|
|
||||||
Function RefreshShellIcons
|
|
||||||
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v \
|
|
||||||
(${SHCNE_ASSOCCHANGED}, ${SHCNF_IDLIST}, 0, 0)'
|
|
||||||
FunctionEnd
|
|
||||||
|
|
||||||
!define RefreshShellIcons "call RefreshShellIcons"
|
|
||||||
!else
|
|
||||||
!define RefreshShellIcons
|
|
||||||
!endif ; HAVE_SYSTEM_PLUGIN
|
|
||||||
|
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
;; parts from http://nsis.sourceforge.net/archive/viewpage.php?pageid=282 by Vytautas
|
|
||||||
;; Will add the registry entries to associate the given file extension with the
|
|
||||||
;; previously set (see CreateApplicationAssociation) appType. I.e. indicate to
|
|
||||||
;; open documents with this extension using the application specified by appType
|
|
||||||
;; registry entry. If the extension is currently associated with a different
|
|
||||||
;; appType, it will store the current association in the "prior_appType" key.
|
|
||||||
|
|
||||||
!macro CreateFileAssociation extension appType contentType
|
|
||||||
!define skipBackupLbl "skipBackup_${__LINE__}"
|
|
||||||
push $0
|
|
||||||
|
|
||||||
; back up old value of extension (.ext) if it exists
|
|
||||||
ReadRegStr $0 HKCR "${extension}" "" ; read current value
|
|
||||||
StrCmp $0 "" "${skipBackupLbl}" ; nothing, then skip storing old value
|
|
||||||
StrCmp $0 "${appType}" "${skipBackupLbl}" ; only store if old is different than current
|
|
||||||
WriteRegStr HKCR "${extension}" "prior_value" "$0" ; actually store the old association
|
|
||||||
|
|
||||||
"${skipBackupLbl}:"
|
|
||||||
; Write File Associations
|
|
||||||
WriteRegStr HKCR "${extension}" "" "${appType}"
|
|
||||||
WriteRegStr HKCR "${extension}" "Content Type" "${contentType}"
|
|
||||||
; Force shell refresh (so icons updated as needed)
|
|
||||||
${RefreshShellIcons}
|
|
||||||
|
|
||||||
pop $0
|
|
||||||
!undef skipBackupLbl
|
|
||||||
!macroend
|
|
||||||
!define CreateFileAssociation "!insertmacro CreateFileAssociation"
|
|
||||||
|
|
||||||
|
|
||||||
!macro CreateApplicationAssociation appType appName appDesc defIcon exeCmd
|
|
||||||
WriteRegStr HKCR "${appType}" "" "${appDesc}"
|
|
||||||
WriteRegStr HKCR "${appType}\shell" "" "open"
|
|
||||||
WriteRegStr HKCR "${appType}\DefaultIcon" "" "${defIcon}"
|
|
||||||
|
|
||||||
; Basic command to open the file (pass filename as argv[1] to program executable)
|
|
||||||
WriteRegStr HKCR "${appType}\shell\open\command" "" '"${exeCmd}" "%1"'
|
|
||||||
|
|
||||||
; To open file via DDE (OLE, ie via already active instance) instead of in a new process
|
|
||||||
; Here for those who want to locally enable, not normally used as having each document
|
|
||||||
; open in a new process while more resource intensive means a crash with one document
|
|
||||||
; won't cause loss of work with other open documents.
|
|
||||||
; WriteRegStr HKCR "${appType}\shell\open\command" "" "${exeCmd}"
|
|
||||||
; WriteRegStr HKCR "${appType}\shell\open\ddeexec" "" '[Open("%1")]'
|
|
||||||
; WriteRegStr HKCR "${appType}\shell\open\ddeexec\application" "" "${appName}"
|
|
||||||
; WriteRegStr HKCR "${appType}\shell\open\ddeexec\topic" "" "System"
|
|
||||||
|
|
||||||
; If editing file is a different action than simply opening file
|
|
||||||
; WriteRegStr HKCR "${appType}\shell\edit" "" "Edit Options File"
|
|
||||||
; WriteRegStr HKCR "${appType}\shell\edit\command" "" '"${exeCmd}" "%1"'
|
|
||||||
|
|
||||||
!macroend
|
|
||||||
!define CreateApplicationAssociation "!insertmacro CreateApplicationAssociation"
|
|
||||||
|
|
||||||
|
|
||||||
; check if a file extension is associated with us and if so delete it
|
|
||||||
!macro RemoveFileAssociation extension appType
|
|
||||||
push $0
|
|
||||||
push $1
|
|
||||||
|
|
||||||
ReadRegStr $0 HKCR "${extension}" ""
|
|
||||||
StrCmp "$0" "${appType}" 0 Skip_Del_File_Assoc.${extension}
|
|
||||||
ReadRegStr $0 HKCR "${extension}" "prior_value"
|
|
||||||
StrCmp "$0" "" "DeleteFA.${extension}" 0 ; if "prior_value" is not empty
|
|
||||||
ReadRegStr $1 HKCR "$0" "" ; restore previous association
|
|
||||||
StrCmp "$1" "" DeleteFA.${extension} ; only if it is still valid (has something defined)
|
|
||||||
WriteRegStr HKCR "${extension}" "" $0 ; actually restore prior association
|
|
||||||
DeleteRegValue HKCR "${extension}" "prior_value" ; and remove stored value
|
|
||||||
Goto Skip_Del_File_Assoc.${extension}
|
|
||||||
DeleteFA.${extension}: ; else delete file association key
|
|
||||||
DeleteRegKey HKCR "${extension}" ; actually remove file assoications
|
|
||||||
|
|
||||||
Skip_Del_File_Assoc.${extension}:
|
|
||||||
pop $1
|
|
||||||
pop $0
|
|
||||||
!macroend
|
|
||||||
!define RemoveFileAssociation "!insertmacro RemoveFileAssociation"
|
|
||||||
|
|
||||||
|
|
||||||
!endif ; _ABI_UTIL_FILEASSOC_NSH_
|
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user