diff options
Diffstat (limited to 'distribution/win32/nsis/install.nsh')
-rw-r--r-- | distribution/win32/nsis/install.nsh | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/distribution/win32/nsis/install.nsh b/distribution/win32/nsis/install.nsh index dc4ed80..0fc948d 100644 --- a/distribution/win32/nsis/install.nsh +++ b/distribution/win32/nsis/install.nsh @@ -5,9 +5,9 @@ CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\XTrackCAD Help.lnk" "$INSTDIR\share\xtrkcad\xtrkcad.chm" "" "" 0 CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\XTrackCAD ReadMe.lnk" "notepad.exe" "$INSTDIR\share\xtrkcad\ReadMe.txt" CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\XTrackCAD CHANGELOG.lnk" "notepad.exe" "$INSTDIR\share\xtrkcad\CHANGELOG.txt" - - -; + + +; ; create file association ; ; back up old value of .xtc @@ -17,14 +17,23 @@ CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\XTrackCAD CHANGELOG.lnk" "notepad. StrCmp $1 "XTrackCAD.Design" "${Index}-NoBackup" WriteRegStr HKCR ".xtc" "backup_val" $1 "${Index}-NoBackup:" - -; create the new association + + ; back up old value of .xtce + !define /redef Index "Line${__LINE__}" + ReadRegStr $1 HKCR ".xtce" "" + StrCmp $1 "" "${Index}-NoBackup" + StrCmp $1 "XTrackCAD.Design" "${Index}-NoBackup" + WriteRegStr HKCR ".xtce" "backup_xtce" $1 + "${Index}-NoBackup:" + +; create the new association WriteRegStr HKCR ".xtc" "" "XTrackCAD.Design" + WriteRegStr HKCR ".xtce" "" "XTrackCAD.Design" WriteRegStr HKCR "XTrackCAD.Design" "" "XTrackCAD Layout Design" WriteRegStr HKCR "XTrackCAD.Design\shell" "" "open" - WriteRegStr HKCR "XTrackCAD.Design\DefaultIcon" "" "$INSTDIR\bin\xtrkcad.exe,0" + WriteRegStr HKCR "XTrackCAD.Design\DefaultIcon" "" '$INSTDIR\bin\xtrkcad.exe,0' WriteRegStr HKCR "XTrackCAD.Design\shell\open\command" "" '$INSTDIR\bin\xtrkcad.exe "%1"' - + System::Call 'Shell32::SHChangeNotify(i 0x8000000, i 0, i 0, i 0)' - - !undef Index
\ No newline at end of file + + !undef Index |