2001-04-04 04:50:05 +00:00
;
2006-05-30 13:19:30 +00:00
; wireshark.nsi
2001-04-04 04:50:05 +00:00
;
2004-07-17 20:34:41 +00:00
; $Id$
2004-02-03 01:06:21 +00:00
2007-03-26 04:02:05 +00:00
2005-07-25 07:42:06 +00:00
; Set the compression mechanism first.
2007-03-26 04:02:05 +00:00
; As of NSIS 2.07, solid compression which makes installer about 1MB smaller
2005-07-25 07:42:06 +00:00
; is no longer the default, so use the /SOLID switch.
; This unfortunately is unknown to NSIS prior to 2.07 and creates an error.
; So if you get an error here, please update to at least NSIS 2.07!
2005-07-26 18:17:09 +00:00
SetCompressor /SOLID lzma
2001-04-04 04:50:05 +00:00
2012-06-13 19:06:27 +00:00
!include "common.nsh"
!include 'LogicLib.nsh'
2004-06-10 10:12:30 +00:00
2001-04-04 04:50:05 +00:00
; ============================================================================
; Header configuration
; ============================================================================
2011-03-01 19:40:51 +00:00
2001-04-04 04:50:05 +00:00
; The file to write
2012-10-15 08:03:44 +00:00
!if ${GTK_NAME} == "gtk3"
2012-10-15 06:12:51 +00:00
OutFile "${PROGRAM_NAME}-${WIRESHARK_TARGET_PLATFORM}-gtk3-${VERSION}.exe"
2012-10-15 12:50:20 +00:00
!else
OutFile "${PROGRAM_NAME}-${WIRESHARK_TARGET_PLATFORM}-${VERSION}.exe"
2012-10-15 08:03:44 +00:00
!endif
2012-06-13 19:06:27 +00:00
; Installer icon
2009-02-18 20:27:16 +00:00
Icon "..\..\image\wiresharkinst.ico"
2001-04-04 04:50:05 +00:00
2003-12-26 12:27:47 +00:00
; ============================================================================
; Modern UI
; ============================================================================
; The modern user interface will look much better than the common one.
; However, as the development of the modern UI is still going on, and the script
; syntax changes, you will need exactly that NSIS version, which this script is
; made for. This is the current (December 2003) latest version: V2.0b4
; If you are using a different version, it's not predictable what will happen.
!include "MUI.nsh"
2005-07-23 20:34:43 +00:00
;!addplugindir ".\Plugins"
2003-12-26 12:27:47 +00:00
2009-02-18 20:27:16 +00:00
!define MUI_ICON "..\..\image\wiresharkinst.ico"
2003-12-26 12:27:47 +00:00
!define MUI_COMPONENTSPAGE_SMALLDESC
2004-08-25 03:32:26 +00:00
!define MUI_FINISHPAGE_NOAUTOCLOSE
2012-10-16 08:08:18 +00:00
!define MUI_WELCOMEPAGE_TEXT "This wizard will guide you through the installation of ${PROGRAM_NAME}.\r\n\r\nBefore starting the installation, make sure ${PROGRAM_NAME} is not running.\r\n\r\nClick 'Next' to continue."
2005-07-23 20:34:43 +00:00
;!define MUI_FINISHPAGE_LINK "Install WinPcap to be able to capture packets from a network!"
;!define MUI_FINISHPAGE_LINK_LOCATION "http://www.winpcap.org"
2004-08-25 03:32:26 +00:00
; NSIS shows Readme files by opening the Readme file with the default application for
2007-03-26 04:02:05 +00:00
; the file's extension. "README.win32" won't work in most cases, because extension "win32"
; is usually not associated with an appropriate text editor. We should use extension "txt"
; for a text file or "html" for an html README file.
2004-08-26 22:48:29 +00:00
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\NEWS.txt"
!define MUI_FINISHPAGE_SHOWREADME_TEXT "Show News"
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
2012-10-16 08:08:18 +00:00
!define MUI_FINISHPAGE_RUN "$INSTDIR\${PROGRAM_NAME}.exe"
2005-07-23 20:34:43 +00:00
!define MUI_FINISHPAGE_RUN_NOTCHECKED
2003-12-26 12:27:47 +00:00
2005-02-03 02:35:20 +00:00
!define MUI_PAGE_CUSTOMFUNCTION_SHOW myShowCallback
2003-12-26 12:27:47 +00:00
; ============================================================================
; MUI Pages
; ============================================================================
!insertmacro MUI_PAGE_WELCOME
2004-01-05 15:27:35 +00:00
!insertmacro MUI_PAGE_LICENSE "..\..\COPYING"
2003-12-26 12:27:47 +00:00
!insertmacro MUI_PAGE_COMPONENTS
2005-07-23 20:34:43 +00:00
Page custom DisplayAdditionalTasksPage
2003-12-26 12:27:47 +00:00
!insertmacro MUI_PAGE_DIRECTORY
2005-07-23 20:34:43 +00:00
Page custom DisplayWinPcapPage
2003-12-26 12:27:47 +00:00
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
2007-03-26 04:02:05 +00:00
2003-12-26 12:27:47 +00:00
; ============================================================================
; MUI Languages
; ============================================================================
2007-03-26 04:02:05 +00:00
2003-12-26 12:27:47 +00:00
!insertmacro MUI_LANGUAGE "English"
2005-07-23 20:34:43 +00:00
; ============================================================================
; Reserve Files
; ============================================================================
2007-03-26 04:02:05 +00:00
2005-07-23 20:34:43 +00:00
;Things that need to be extracted on first (keep these lines before any File command!)
;Only useful for BZIP2 compression
2007-03-26 04:02:05 +00:00
2005-07-23 20:34:43 +00:00
ReserveFile "AdditionalTasksPage.ini"
ReserveFile "WinPcapPage.ini"
!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
2004-08-26 22:48:29 +00:00
; ============================================================================
; Section macros
; ============================================================================
!include "Sections.nsh"
; ========= Macro to unselect and disable a section =========
!macro DisableSection SECTION
Push $0
SectionGetFlags "${SECTION}" $0
IntOp $0 $0 & ${SECTION_OFF}
IntOp $0 $0 | ${SF_RO}
SectionSetFlags "${SECTION}" $0
Pop $0
!macroend
; ========= Macro to enable (unreadonly) a section =========
!define SECTION_ENABLE 0xFFFFFFEF
!macro EnableSection SECTION
Push $0
SectionGetFlags "${SECTION}" $0
IntOp $0 $0 & ${SECTION_ENABLE}
SectionSetFlags "${SECTION}" $0
Pop $0
!macroend
2005-09-14 02:07:20 +00:00
; ============================================================================
; Command Line
; ============================================================================
!include "FileFunc.nsh"
!insertmacro GetParameters
!insertmacro GetOptions
2001-04-04 04:50:05 +00:00
; ============================================================================
; License page configuration
; ============================================================================
2006-05-22 08:14:01 +00:00
LicenseText "Wireshark is distributed under the GNU General Public License."
2004-01-05 15:27:35 +00:00
LicenseData "..\..\COPYING"
2001-04-04 04:50:05 +00:00
; ============================================================================
; Component page configuration
; ============================================================================
2001-04-05 05:36:47 +00:00
ComponentText "The following components are available for installation."
2001-04-04 04:50:05 +00:00
; ============================================================================
; Directory selection page configuration
; ============================================================================
; The text to prompt the user to enter a directory
2012-10-16 08:08:18 +00:00
DirText "Choose a directory in which to install ${PROGRAM_NAME}."
2001-04-04 04:50:05 +00:00
; The default installation directory
2009-04-17 22:09:26 +00:00
!if ${WIRESHARK_TARGET_PLATFORM} == "win64"
2012-10-16 08:08:18 +00:00
InstallDir $PROGRAMFILES64\${PROGRAM_NAME}
2009-04-17 22:09:26 +00:00
!else
2012-10-16 08:08:18 +00:00
InstallDir $PROGRAMFILES\${PROGRAM_NAME}
2009-04-17 22:09:26 +00:00
!endif
2001-04-04 04:50:05 +00:00
; See if this is an upgrade; if so, use the old InstallDir as default
2012-10-16 08:08:18 +00:00
InstallDirRegKey HKEY_LOCAL_MACHINE SOFTWARE\${PROGRAM_NAME} "InstallDir"
2001-04-04 04:50:05 +00:00
; ============================================================================
; Install page configuration
; ============================================================================
ShowInstDetails show
2004-06-10 10:12:30 +00:00
; ============================================================================
; Functions and macros
; ============================================================================
2012-06-13 19:06:27 +00:00
Var EXTENSION
2012-06-13 20:11:41 +00:00
; http://msdn.microsoft.com/en-us/library/windows/desktop/cc144148.aspx
2004-06-10 10:12:30 +00:00
Function Associate
2012-06-13 19:06:27 +00:00
Push $R0
!insertmacro PushFileExtensions
Pop $EXTENSION
${DoUntil} $EXTENSION == ${FILE_EXTENSION_MARKER}
ReadRegStr $R0 HKCR $EXTENSION ""
StrCmp $R0 "" Associate.doRegister
Goto Associate.end
2007-03-26 04:02:05 +00:00
2004-06-10 10:12:30 +00:00
Associate.doRegister:
2012-06-13 19:06:27 +00:00
;The extension is not associated to any program, we can do the link
WriteRegStr HKCR $EXTENSION "" ${WIRESHARK_ASSOC}
2012-06-13 20:11:41 +00:00
DetailPrint "Registered file type: $EXTENSION"
2012-06-13 19:06:27 +00:00
2004-06-10 10:12:30 +00:00
Associate.end:
2012-06-13 19:06:27 +00:00
Pop $EXTENSION
${Loop}
2004-06-10 10:12:30 +00:00
2012-06-13 19:06:27 +00:00
Pop $R0
2004-06-10 10:12:30 +00:00
FunctionEnd
2002-08-19 15:48:28 +00:00
2008-10-21 16:44:35 +00:00
Var OLD_UNINSTALLER
2008-11-01 00:24:10 +00:00
Var OLD_INSTDIR
2008-10-21 16:44:35 +00:00
Var OLD_DISPLAYNAME
2008-11-01 00:24:10 +00:00
Var TMP_UNINSTALLER
2008-10-21 16:44:35 +00:00
2009-04-17 22:09:26 +00:00
; ============================================================================
; 64-bit support
; ============================================================================
2009-04-17 17:32:48 +00:00
!include x64.nsh
2005-07-23 20:34:43 +00:00
Function .onInit
2009-04-17 17:32:48 +00:00
!if ${WIRESHARK_TARGET_PLATFORM} == "win64"
; http://forums.winamp.com/printthread.php?s=16ffcdd04a8c8d52bee90c0cae273ac5&threadid=262873
2009-04-17 22:09:26 +00:00
${IfNot} ${RunningX64}
2009-04-17 17:32:48 +00:00
MessageBox MB_OK "This version of Wireshark only runs on x64 machines.\nTry installing the 32-bit version instead."
Abort
${EndIf}
!endif
2008-10-21 16:44:35 +00:00
; Copied from http://nsis.sourceforge.net/Auto-uninstall_old_before_installing_new
ReadRegStr $OLD_UNINSTALLER HKLM \
2012-10-16 08:08:18 +00:00
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${PROGRAM_NAME}" \
2008-11-01 00:24:10 +00:00
"UninstallString"
2008-10-21 16:44:35 +00:00
StrCmp $OLD_UNINSTALLER "" done
2008-11-01 00:24:10 +00:00
ReadRegStr $OLD_INSTDIR HKLM \
2012-10-16 08:08:18 +00:00
"Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME}.exe" \
2008-11-01 00:24:10 +00:00
"Path"
StrCmp $OLD_INSTDIR "" done
2008-10-21 16:44:35 +00:00
ReadRegStr $OLD_DISPLAYNAME HKLM \
2012-10-16 08:08:18 +00:00
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${PROGRAM_NAME}" \
2008-11-01 00:24:10 +00:00
"DisplayName"
2008-10-21 16:44:35 +00:00
StrCmp $OLD_DISPLAYNAME "" done
2008-11-01 00:24:10 +00:00
MessageBox MB_YESNOCANCEL|MB_ICONQUESTION \
"$OLD_DISPLAYNAME is already installed.\
$\n$\nWould you like to uninstall it first?" \
2009-02-18 20:27:16 +00:00
/SD IDYES \
IDYES prep_uninstaller \
2008-11-01 00:24:10 +00:00
IDNO done
2008-10-21 16:44:35 +00:00
Abort
2011-06-23 23:04:03 +00:00
2008-11-01 00:24:10 +00:00
; Copy the uninstaller to $TEMP and run it.
; The uninstaller normally does this by itself, but doesn't wait around
; for the executable to finish, which means ExecWait won't work correctly.
2009-02-18 20:27:16 +00:00
prep_uninstaller:
2008-10-21 16:44:35 +00:00
ClearErrors
2012-10-16 08:08:18 +00:00
StrCpy $TMP_UNINSTALLER "$TEMP\${PROGRAM_NAME}_uninstaller.exe"
2008-11-01 00:24:10 +00:00
; ...because we surround UninstallString in quotes.
StrCpy $0 $OLD_UNINSTALLER -1 1
2012-10-16 08:08:18 +00:00
StrCpy $1 "$TEMP\${PROGRAM_NAME}_uninstaller.exe"
2008-11-01 00:24:10 +00:00
StrCpy $2 1
System::Call 'kernel32::CopyFile(t r0, t r1, b r2) 1'
2009-02-18 20:27:16 +00:00
IfSilent silent_uninstall
2008-11-01 00:24:10 +00:00
ExecWait "$TMP_UNINSTALLER _?=$OLD_INSTDIR"
2009-02-18 20:27:16 +00:00
Goto cleanup
silent_uninstall:
ExecWait "$TMP_UNINSTALLER /S _?=$OLD_INSTDIR"
cleanup:
2008-11-01 00:24:10 +00:00
Delete "$TMP_UNINSTALLER"
2011-06-23 23:04:03 +00:00
2008-10-21 16:44:35 +00:00
done:
2005-07-23 20:34:43 +00:00
;Extract InstallOptions INI files
2007-03-26 04:02:05 +00:00
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "AdditionalTasksPage.ini"
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "WinpcapPage.ini"
2005-07-23 20:34:43 +00:00
FunctionEnd
Function DisplayAdditionalTasksPage
!insertmacro MUI_HEADER_TEXT "Select Additional Tasks" "Which additional tasks should be done?"
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "AdditionalTasksPage.ini"
FunctionEnd
Function DisplayWinPcapPage
!insertmacro MUI_HEADER_TEXT "Install WinPcap?" "WinPcap is required to capture live network data. Should WinPcap be installed?"
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "WinPcapPage.ini"
FunctionEnd
2001-04-04 04:50:05 +00:00
; ============================================================================
; Installation execution commands
; ============================================================================
2005-07-23 20:34:43 +00:00
Var WINPCAP_UNINSTALL ;declare variable for holding the value of a registry key
2006-05-30 13:19:30 +00:00
;Var WIRESHARK_UNINSTALL ;declare variable for holding the value of a registry key
2005-07-23 20:34:43 +00:00
2012-10-19 17:47:34 +00:00
!ifdef VCREDIST_EXE
2012-07-20 17:56:16 +00:00
Var VCREDIST_FLAGS ; silent vs passive, norestart
2012-10-19 17:47:34 +00:00
!endif
2012-07-20 17:56:16 +00:00
2001-04-04 04:50:05 +00:00
Section "-Required"
;-------------------------------------------
2002-08-19 15:48:28 +00:00
;
; Install for every user
;
SetShellVarContext all
2005-07-23 20:34:43 +00:00
2001-04-04 04:50:05 +00:00
SetOutPath $INSTDIR
2012-06-14 18:53:55 +00:00
File "${STAGING_DIR}\${UNINSTALLER_NAME}"
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\wiretap-${WTAP_VERSION}.dll"
2006-05-31 00:23:01 +00:00
!ifdef ENABLE_LIBWIRESHARK
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libwireshark.dll"
2004-05-09 10:03:41 +00:00
!endif
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libwsutil.dll"
File "${STAGING_DIR}\libgio-2.0-0.dll"
File "${STAGING_DIR}\libglib-2.0-0.dll"
File "${STAGING_DIR}\libgobject-2.0-0.dll"
File "${STAGING_DIR}\libgmodule-2.0-0.dll"
File "${STAGING_DIR}\libgthread-2.0-0.dll"
2008-02-15 03:12:52 +00:00
!ifdef ICONV_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\iconv.dll"
2008-02-15 03:12:52 +00:00
!endif
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${INTL_DLL}"
2003-12-22 21:41:40 +00:00
!ifdef ZLIB_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\zlib1.dll"
2003-12-22 21:41:40 +00:00
!endif
2008-08-07 21:41:48 +00:00
!ifdef C_ARES_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libcares-2.dll"
2008-08-07 21:41:48 +00:00
!endif
2003-12-22 21:41:40 +00:00
!ifdef ADNS_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\adns_dll.dll"
2003-12-22 21:41:40 +00:00
!endif
2006-08-05 05:12:09 +00:00
!ifdef KFW_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\comerr32.dll"
File "${STAGING_DIR}\krb5_32.dll"
File "${STAGING_DIR}\k5sprt32.dll"
2006-08-05 05:12:09 +00:00
!endif
2006-08-07 19:52:18 +00:00
!ifdef GNUTLS_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libgcrypt-11.dll"
File "${STAGING_DIR}\libgnutls-26.dll"
File "${STAGING_DIR}\libgpg-error-0.dll"
File "${STAGING_DIR}\libtasn1-3.dll"
2011-04-05 22:38:12 +00:00
StrCmp "${INTL_DLL}" "libintl-8.dll" SkipLibIntl8
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libintl-8.dll"
2011-04-05 22:38:12 +00:00
SkipLibIntl8:
2006-08-07 19:52:18 +00:00
!endif
2006-09-28 00:33:46 +00:00
!ifdef LUA_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\lua5.1.dll"
2006-10-20 20:06:44 +00:00
File "..\..\epan\wslua\init.lua"
File "..\..\epan\wslua\console.lua"
File "..\..\epan\wslua\dtd_gen.lua"
2006-09-28 00:33:46 +00:00
!endif
2007-08-27 06:28:20 +00:00
!ifdef SMI_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libsmi-2.dll"
2007-08-27 06:28:20 +00:00
!endif
2012-05-29 23:31:00 +00:00
!ifdef GEOIP_DIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libGeoIP-1.dll"
2012-05-29 23:31:00 +00:00
!endif
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\COPYING.txt"
File "${STAGING_DIR}\NEWS.txt"
File "${STAGING_DIR}\README.txt"
File "${STAGING_DIR}\README.windows.txt"
2009-06-21 15:47:40 +00:00
File "..\..\doc\AUTHORS-SHORT"
2001-10-11 01:04:19 +00:00
File "..\..\manuf"
2007-08-12 20:54:30 +00:00
File "..\..\services"
2011-05-19 18:10:21 +00:00
File "..\..\pdml2html.xsl"
2008-02-22 20:03:36 +00:00
File "..\..\doc\ws.css"
2006-05-31 19:12:15 +00:00
File "..\..\doc\wireshark.html"
File "..\..\doc\wireshark-filter.html"
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\dumpcap.exe"
2006-02-11 23:58:07 +00:00
File "..\..\doc\dumpcap.html"
2009-02-16 18:27:29 +00:00
File "..\..\ipmap.html"
2002-06-01 22:17:22 +00:00
2007-03-26 04:02:05 +00:00
; C-runtime redistributable
2007-01-13 00:59:39 +00:00
!ifdef VCREDIST_EXE
; vcredist_x86.exe (MSVC V8) - copy and execute the redistributable installer
File "${VCREDIST_EXE}"
2009-09-17 21:54:52 +00:00
; If the user already has the redistributable installed they will see a
; Big Ugly Dialog by default, asking if they want to uninstall or repair.
; Ideally we should add a checkbox for this somewhere. In the meantime,
2012-07-20 17:56:16 +00:00
; just do a "passive+norestart" install for MSVC 2010 and later and a
; "silent" install otherwise.
; http://blogs.msdn.com/b/astebner/archive/2010/10/20/10078468.aspx
2012-07-20 18:04:00 +00:00
; "!if ${MSVC_VER_REQUIRED} >= 1600" doesn't work.
2012-07-20 17:56:16 +00:00
!searchparse /noerrors ${MSVC_VER_REQUIRED} "1400" VCREDIST_OLD_FLAGS "1500" VCREDIST_OLD_FLAGS
!ifdef VCREDIST_OLD_FLAGS
StrCpy $VCREDIST_FLAGS "/q"
!else ; VCREDIST_OLD_FLAGS
StrCpy $VCREDIST_FLAGS "/q /norestart"
!endif ; VCREDIST_OLD_FLAGS
ExecWait '"$INSTDIR\vcredist_${TARGET_MACHINE}.exe" $VCREDIST_FLAGS' $0
DetailPrint "vcredist_${TARGET_MACHINE} returned $0"
IntCmp $0 3010 redistReboot redistNoReboot
redistReboot:
SetRebootFlag true
redistNoReboot:
2007-01-13 00:59:39 +00:00
!else
!ifdef MSVCR_DLL
; msvcr*.dll (MSVC V7 or V7.1) - simply copy the dll file
2008-02-22 23:09:43 +00:00
!echo "IF YOU GET AN ERROR HERE, check the MSVC_VARIANT setting in config.nmake: MSVC2005 vs. MSVC2005EE!"
2007-01-13 00:59:39 +00:00
File "${MSVCR_DLL}"
!else
!if ${MSVC_VARIANT} != "MSVC6"
!error "C-Runtime redistributable for this package not available / not redistributable!"
!endif
!endif ; MSVCR_DLL
!endif ; VCREDIST_EXE
2007-03-26 04:02:05 +00:00
; global config files - don't overwrite if already existing
2005-08-26 00:01:49 +00:00
;IfFileExists cfilters dont_overwrite_cfilters
2005-06-09 07:43:32 +00:00
File "..\..\cfilters"
2005-08-26 00:01:49 +00:00
;dont_overwrite_cfilters:
;IfFileExists colorfilters dont_overwrite_colorfilters
2005-06-09 07:43:32 +00:00
File "..\..\colorfilters"
2005-08-26 00:01:49 +00:00
;dont_overwrite_colorfilters:
;IfFileExists dfilters dont_overwrite_dfilters
2005-06-09 07:43:32 +00:00
File "..\..\dfilters"
2005-08-26 00:01:49 +00:00
;dont_overwrite_dfilters:
2008-10-27 04:38:21 +00:00
;IfFileExists smi_modules dont_overwrite_smi_modules
2007-08-27 22:06:47 +00:00
File "..\..\smi_modules"
;dont_overwrite_smi_modules:
2005-06-09 07:43:32 +00:00
2002-06-01 22:17:22 +00:00
;
; Install the Diameter DTD and XML files in the "diameter" subdirectory
; of the installation directory.
2007-03-26 04:02:05 +00:00
;
2002-06-01 22:17:22 +00:00
SetOutPath $INSTDIR\diameter
2012-09-23 20:12:46 +00:00
File "..\..\diameter\AlcatelLucent.xml"
2005-12-16 20:58:50 +00:00
File "..\..\diameter\chargecontrol.xml"
2012-09-23 20:12:46 +00:00
File "..\..\diameter\Cisco.xml"
2005-09-29 02:20:29 +00:00
File "..\..\diameter\dictionary.dtd"
File "..\..\diameter\dictionary.xml"
2009-06-26 05:48:03 +00:00
File "..\..\diameter\eap.xml"
2008-01-07 22:00:26 +00:00
File "..\..\diameter\Ericsson.xml"
2007-07-10 13:20:37 +00:00
File "..\..\diameter\etsie2e4.xml"
2007-06-12 15:29:23 +00:00
File "..\..\diameter\gqpolicy.xml"
2005-09-29 02:20:29 +00:00
File "..\..\diameter\imscxdx.xml"
File "..\..\diameter\mobileipv4.xml"
2010-03-18 21:29:58 +00:00
File "..\..\diameter\mobileipv6.xml"
2005-09-29 02:20:29 +00:00
File "..\..\diameter\nasreq.xml"
2012-10-08 14:20:34 +00:00
File "..\..\diameter\Nokia.xml"
2012-10-09 14:10:31 +00:00
File "..\..\diameter\NokiaSiemensNetworks.xml"
2006-11-14 06:31:47 +00:00
File "..\..\diameter\sip.xml"
2005-09-29 02:20:29 +00:00
File "..\..\diameter\sunping.xml"
2008-01-31 21:52:47 +00:00
File "..\..\diameter\TGPPGmb.xml"
2008-09-09 03:23:13 +00:00
File "..\..\diameter\TGPPRx.xml"
2012-06-11 13:48:11 +00:00
File "..\..\diameter\TGPPS9.xml"
2005-12-16 20:58:50 +00:00
File "..\..\diameter\TGPPSh.xml"
2011-06-09 06:36:40 +00:00
File "..\..\diameter\Vodafone.xml"
2002-06-01 22:17:22 +00:00
SetOutPath $INSTDIR
2001-04-04 04:50:05 +00:00
2005-07-15 22:36:21 +00:00
;
; Install the RADIUS directory files in the "radius" subdirectory
; of the installation directory.
;
2005-07-15 21:18:32 +00:00
SetOutPath $INSTDIR\radius
2009-07-09 20:31:22 +00:00
File "..\..\radius\README.radius_dictionary"
2013-01-23 12:08:15 +00:00
File "..\..\radius\custom.includes"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary"
File "..\..\radius\dictionary.3com"
File "..\..\radius\dictionary.3gpp"
File "..\..\radius\dictionary.3gpp2"
File "..\..\radius\dictionary.acc"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.acme"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.airespace"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.alcatel"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.alcatel.esam"
File "..\..\radius\dictionary.alcatel.sr"
2012-03-10 18:30:20 +00:00
File "..\..\radius\dictionary.alcatel-lucent.xylan"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.alteon"
File "..\..\radius\dictionary.altiga"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.alvarion"
File "..\..\radius\dictionary.apc"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.aptis"
2008-12-09 13:57:55 +00:00
File "..\..\radius\dictionary.aruba"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.ascend"
File "..\..\radius\dictionary.asn"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.audiocodes"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.avaya"
File "..\..\radius\dictionary.azaire"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.bay"
File "..\..\radius\dictionary.bintec"
File "..\..\radius\dictionary.bristol"
File "..\..\radius\dictionary.cablelabs"
File "..\..\radius\dictionary.cabletron"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.chillispot"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.cisco"
File "..\..\radius\dictionary.cisco.bbsm"
File "..\..\radius\dictionary.cisco.vpn3000"
File "..\..\radius\dictionary.cisco.vpn5000"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.clavister"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.colubris"
File "..\..\radius\dictionary.columbia_university"
File "..\..\radius\dictionary.compat"
File "..\..\radius\dictionary.cosine"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.dhcp"
File "..\..\radius\dictionary.digium"
2010-11-18 09:51:50 +00:00
File "..\..\radius\dictionary.eltex"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.epygi"
2005-09-28 16:39:20 +00:00
File "..\..\radius\dictionary.ericsson"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.erx"
File "..\..\radius\dictionary.extreme"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.fortinet"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.foundry"
File "..\..\radius\dictionary.freeradius"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.freeradius.internal"
File "..\..\radius\dictionary.freeswitch"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.gandalf"
File "..\..\radius\dictionary.garderos"
File "..\..\radius\dictionary.gemtek"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.h3c"
File "..\..\radius\dictionary.hp"
File "..\..\radius\dictionary.huawei"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.iea"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.infonet"
File "..\..\radius\dictionary.ipunplugged"
File "..\..\radius\dictionary.issanni"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.itk"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.jradius"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.juniper"
File "..\..\radius\dictionary.karlnet"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.lancom"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.livingston"
File "..\..\radius\dictionary.localweb"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.lucent"
File "..\..\radius\dictionary.manzara"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.merit"
File "..\..\radius\dictionary.microsoft"
File "..\..\radius\dictionary.mikrotik"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.motorola"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.motorola.wimax"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.navini"
File "..\..\radius\dictionary.netscreen"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.networkphysics"
File "..\..\radius\dictionary.nexans"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.nokia"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.nokia.conflict"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.nomadix"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.nortel"
File "..\..\radius\dictionary.ntua"
File "..\..\radius\dictionary.openser"
File "..\..\radius\dictionary.packeteer"
File "..\..\radius\dictionary.patton"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.propel"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.prosoft"
File "..\..\radius\dictionary.quiconnect"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.quintum"
File "..\..\radius\dictionary.redback"
File "..\..\radius\dictionary.redcreek"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.rfc2865"
File "..\..\radius\dictionary.rfc2866"
File "..\..\radius\dictionary.rfc2867"
File "..\..\radius\dictionary.rfc2868"
File "..\..\radius\dictionary.rfc2869"
File "..\..\radius\dictionary.rfc3162"
File "..\..\radius\dictionary.rfc3576"
File "..\..\radius\dictionary.rfc3580"
File "..\..\radius\dictionary.rfc4072"
File "..\..\radius\dictionary.rfc4372"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.rfc4603"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.rfc4675"
File "..\..\radius\dictionary.rfc4679"
File "..\..\radius\dictionary.rfc4818"
File "..\..\radius\dictionary.rfc4849"
File "..\..\radius\dictionary.rfc5090"
File "..\..\radius\dictionary.rfc5176"
2012-12-23 18:40:40 +00:00
File "..\..\radius\dictionary.rfc5447"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.rfc5580"
File "..\..\radius\dictionary.rfc5607"
File "..\..\radius\dictionary.rfc5904"
2012-12-23 18:40:40 +00:00
File "..\..\radius\dictionary.rfc6519"
File "..\..\radius\dictionary.rfc6572"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.riverstone"
File "..\..\radius\dictionary.roaringpenguin"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.shasta"
File "..\..\radius\dictionary.shiva"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.slipstream"
File "..\..\radius\dictionary.sofaware"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.sonicwall"
File "..\..\radius\dictionary.springtide"
2009-04-02 19:05:52 +00:00
File "..\..\radius\dictionary.starent"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.t_systems_nova"
File "..\..\radius\dictionary.telebit"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.telkom"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.trapeze"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.tropos"
2011-05-25 00:40:35 +00:00
File "..\..\radius\dictionary.ukerna"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.unix"
File "..\..\radius\dictionary.usr"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.utstarcom"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.valemount"
File "..\..\radius\dictionary.versanet"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.vqp"
File "..\..\radius\dictionary.walabi"
File "..\..\radius\dictionary.waverider"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.wichorus"
2009-04-02 19:05:52 +00:00
File "..\..\radius\dictionary.wimax"
2011-05-24 19:13:04 +00:00
File "..\..\radius\dictionary.wimax.wichorus"
2005-07-15 21:18:32 +00:00
File "..\..\radius\dictionary.wispr"
File "..\..\radius\dictionary.xedia"
2009-07-09 20:31:22 +00:00
File "..\..\radius\dictionary.zyxel"
2013-01-23 12:08:15 +00:00
!include "custom_radius_dict.txt"
2005-07-15 21:18:32 +00:00
SetOutPath $INSTDIR
2005-09-17 17:17:42 +00:00
;
; install the dtds in the dtds subdirectory
;
SetOutPath $INSTDIR\dtds
File "..\..\dtds\dc.dtd"
File "..\..\dtds\itunes.dtd"
2006-11-15 17:27:04 +00:00
File "..\..\dtds\mscml.dtd"
2006-06-08 05:56:34 +00:00
File "..\..\dtds\pocsettings.dtd"
File "..\..\dtds\presence.dtd"
2006-06-06 19:30:57 +00:00
File "..\..\dtds\reginfo.dtd"
2006-10-19 17:37:15 +00:00
File "..\..\dtds\rlmi.dtd"
2005-09-17 17:17:42 +00:00
File "..\..\dtds\rss.dtd"
File "..\..\dtds\smil.dtd"
2006-07-19 19:00:36 +00:00
File "..\..\dtds\xcap-caps.dtd"
2007-06-21 11:37:42 +00:00
File "..\..\dtds\xcap-error.dtd"
2006-06-08 05:56:34 +00:00
File "..\..\dtds\watcherinfo.dtd"
2005-09-17 17:17:42 +00:00
SetOutPath $INSTDIR
2007-11-11 13:23:17 +00:00
; Install the TPNCP DAT file in the "tpncp" subdirectory
; of the installation directory.
SetOutPath $INSTDIR\tpncp
File "..\..\tpncp\tpncp.dat"
2007-10-12 10:01:41 +00:00
;
; install the wimaxasncp TLV definitions in the wimaxasncp subdirectory
;
SetOutPath $INSTDIR\wimaxasncp
2007-10-15 12:32:19 +00:00
File "..\..\wimaxasncp\dictionary.xml"
File "..\..\wimaxasncp\dictionary.dtd"
2007-10-12 10:01:41 +00:00
SetOutPath $INSTDIR
2004-02-18 20:45:54 +00:00
SetOutPath $INSTDIR\help
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\help\toc"
File "${STAGING_DIR}\help\overview.txt"
File "${STAGING_DIR}\help\getting_started.txt"
File "${STAGING_DIR}\help\capturing.txt"
File "${STAGING_DIR}\help\capture_filters.txt"
File "${STAGING_DIR}\help\display_filters.txt"
File "${STAGING_DIR}\help\faq.txt"
2004-02-18 20:45:54 +00:00
2001-04-04 04:50:05 +00:00
; Write the uninstall keys for Windows
2012-04-04 00:47:21 +00:00
; http://nsis.sourceforge.net/Add_uninstall_information_to_Add/Remove_Programs
; http://msdn.microsoft.com/en-us/library/ms954376.aspx
; http://msdn.microsoft.com/en-us/library/windows/desktop/aa372105.aspx
!define UNINSTALL_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PROGRAM_NAME}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "Comments" "${DISPLAY_NAME}"
2012-10-16 08:08:18 +00:00
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayIcon" "$INSTDIR\${PROGRAM_NAME}.exe,0"
2012-04-04 00:47:21 +00:00
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayName" "${DISPLAY_NAME}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayVersion" "${VERSION}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "HelpLink" "http://ask.wireshark.org/"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "InstallLocation" "$INSTDIR"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "Publisher" "The Wireshark developer community, http://www.wireshark.org"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "URLInfoAbout" "http://www.wireshark.org"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "URLUpdateInfo" "http://www.wireshark.org/download.html"
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "NoModify" 1
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "NoRepair" 1
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "VersionMajor" ${VERSION_MAJOR}
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "VersionMinor" ${VERSION_MINOR}
2012-06-14 18:53:55 +00:00
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "UninstallString" '"$INSTDIR\${UNINSTALLER_NAME}"'
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "QuietUninstallString" '"$INSTDIR\${UNINSTALLER_NAME}" /S'
2012-04-04 00:47:21 +00:00
2004-10-21 02:06:37 +00:00
; Write an entry for ShellExecute
2012-10-16 08:08:18 +00:00
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME}.exe" "" '$INSTDIR\${PROGRAM_NAME}.exe'
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME}.exe" "Path" '$INSTDIR'
2004-10-21 02:06:37 +00:00
2005-07-23 20:34:43 +00:00
; Create start menu entries (depending on additional tasks page)
ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 2" "State"
StrCmp $0 "0" SecRequired_skip_StartMenu
SetOutPath $PROFILE
2012-10-16 08:08:18 +00:00
;CreateDirectory "$SMPROGRAMS\${PROGRAM_NAME}"
2005-07-23 20:34:43 +00:00
; To qoute "http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwue/html/ch11d.asp":
; "Do not include Readme, Help, or Uninstall entries on the Programs menu."
2012-10-16 08:08:18 +00:00
Delete "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Web Site.lnk"
;WriteINIStr "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Web Site.url" "InternetShortcut" "URL" "http://www.wireshark.org/"
CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}.lnk" "$INSTDIR\${PROGRAM_NAME}.exe" "" "$INSTDIR\${PROGRAM_NAME}.exe" 0 "" "" "The ${PROGRAM_NAME} Network Protocol Analyzer"
;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Manual.lnk" "$INSTDIR\wireshark.html"
;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}\Display Filters Manual.lnk" "$INSTDIR\wireshark-filter.html"
;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Program Directory.lnk" "$INSTDIR"
2005-07-23 20:34:43 +00:00
SecRequired_skip_StartMenu:
2005-09-14 02:07:20 +00:00
; is command line option "/desktopicon" set?
${GetParameters} $R0
${GetOptions} $R0 "/desktopicon=" $R1
StrCmp $R1 "no" SecRequired_skip_DesktopIcon
StrCmp $R1 "yes" SecRequired_install_DesktopIcon
2005-07-23 20:34:43 +00:00
2005-09-14 02:07:20 +00:00
; Create desktop icon (depending on additional tasks page and command line option)
2005-07-23 20:34:43 +00:00
ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 3" "State"
StrCmp $0 "0" SecRequired_skip_DesktopIcon
2005-09-14 02:07:20 +00:00
SecRequired_install_DesktopIcon:
2012-10-16 08:08:18 +00:00
CreateShortCut "$DESKTOP\${PROGRAM_NAME}.lnk" "$INSTDIR\${PROGRAM_NAME}.exe" "" "$INSTDIR\${PROGRAM_NAME}.exe" 0 "" "" "The ${PROGRAM_NAME} Network Protocol Analyzer"
2005-07-23 20:34:43 +00:00
SecRequired_skip_DesktopIcon:
2001-04-04 04:50:05 +00:00
2005-09-14 02:07:20 +00:00
; is command line option "/quicklaunchicon" set?
${GetParameters} $R0
${GetOptions} $R0 "/quicklaunchicon=" $R1
StrCmp $R1 "no" SecRequired_skip_QuickLaunchIcon
StrCmp $R1 "yes" SecRequired_install_QuickLaunchIcon
; Create quick launch icon (depending on additional tasks page and command line option)
2005-07-23 20:34:43 +00:00
ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 4" "State"
StrCmp $0 "0" SecRequired_skip_QuickLaunchIcon
2005-09-14 02:07:20 +00:00
SecRequired_install_QuickLaunchIcon:
2012-10-16 08:08:18 +00:00
CreateShortCut "$QUICKLAUNCH\${PROGRAM_NAME}.lnk" "$INSTDIR\${PROGRAM_NAME}.exe" "" "$INSTDIR\${PROGRAM_NAME}.exe" 0 "" "" "The ${PROGRAM_NAME} Network Protocol Analyzer"
2005-07-23 20:34:43 +00:00
SecRequired_skip_QuickLaunchIcon:
; Create File Extensions (depending on additional tasks page)
ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "State"
StrCmp $0 "0" SecRequired_skip_FileExtensions
2008-08-14 17:54:35 +00:00
WriteRegStr HKCR ${WIRESHARK_ASSOC} "" "Wireshark capture file"
2012-10-16 08:08:18 +00:00
WriteRegStr HKCR "${WIRESHARK_ASSOC}\Shell\open\command" "" '"$INSTDIR\${PROGRAM_NAME}.exe" "%1"'
WriteRegStr HKCR "${WIRESHARK_ASSOC}\DefaultIcon" "" '"$INSTDIR\${PROGRAM_NAME}.exe",1'
2012-06-13 19:06:27 +00:00
Call Associate
2005-07-23 20:34:43 +00:00
; if somethings added here, add it also to the uninstall section and the AdditionalTask page
2012-06-13 19:06:27 +00:00
2005-07-23 20:34:43 +00:00
!insertmacro UpdateIcons
SecRequired_skip_FileExtensions:
2005-08-26 00:59:07 +00:00
; if running as a silent installer, don't try to install winpcap
IfSilent SecRequired_skip_Winpcap
2005-07-23 20:34:43 +00:00
; Install WinPcap (depending on winpcap page setting)
ReadINIStr $0 "$PLUGINSDIR\WinPcapPage.ini" "Field 4" "State"
StrCmp $0 "0" SecRequired_skip_Winpcap
; Uinstall old WinPcap first
ReadRegStr $WINPCAP_UNINSTALL HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "UninstallString"
IfErrors lbl_winpcap_notinstalled ;if RegKey is unavailable, WinPcap is not installed
2005-08-07 23:10:06 +00:00
; from released version 3.1, WinPcap will uninstall an old version by itself
;ExecWait '$WINPCAP_UNINSTALL' $0
;DetailPrint "WinPcap uninstaller returned $0"
2005-07-23 20:34:43 +00:00
lbl_winpcap_notinstalled:
SetOutPath $INSTDIR
2012-09-13 21:28:28 +00:00
File "${WIRESHARK_LIB_DIR}\WinPcap_${PCAP_VERSION}.exe"
ExecWait '"$INSTDIR\WinPcap_${PCAP_VERSION}.exe"' $0
2005-07-23 20:34:43 +00:00
DetailPrint "WinPcap installer returned $0"
SecRequired_skip_Winpcap:
2006-07-04 18:40:51 +00:00
; If no user profile exists for Wireshark but for Ethereal, copy it over
SetShellVarContext current
IfFileExists $APPDATA\Wireshark profile_done
IfFileExists $APPDATA\Ethereal 0 profile_done
;MessageBox MB_YESNO "This seems to be the first time you use Wireshark. Copy over the personal settings from Ethereal?" /SD IDYES IDNO profile_done
CreateDirectory $APPDATA\Wireshark
CopyFiles $APPDATA\Ethereal\*.* $APPDATA\Wireshark
profile_done:
SetShellVarContext all
2005-07-23 20:34:43 +00:00
SectionEnd ; "Required"
2008-04-09 03:48:16 +00:00
!ifdef GTK_DIR
Section "Wireshark" SecWireshark
2004-02-18 20:45:54 +00:00
;-------------------------------------------
SetOutPath $INSTDIR
2012-10-16 08:08:18 +00:00
File "${STAGING_DIR}\${PROGRAM_NAME}.exe"
2012-10-14 18:42:02 +00:00
File "${STAGING_DIR}\${GDK_DLL}"
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libgdk_pixbuf-2.0-0.dll"
2012-10-14 18:42:02 +00:00
File "${STAGING_DIR}\${GTK_DLL}"
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libatk-1.0-0.dll"
File "${STAGING_DIR}\libpango-1.0-0.dll"
File "${STAGING_DIR}\libpangowin32-1.0-0.dll"
2012-10-19 17:47:34 +00:00
!ifdef NEED_CAIRO_GOBJECT_DLL
File "${STAGING_DIR}\libcairo-gobject-2.dll"
!endif
2005-12-15 03:36:17 +00:00
!ifdef NEED_CAIRO_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libcairo-2.dll"
File "${STAGING_DIR}\libpangocairo-1.0-0.dll"
2005-12-15 03:36:17 +00:00
!endif
2012-05-14 17:54:47 +00:00
!ifdef NEED_EXPAT_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${EXPAT_DLL}"
2005-12-14 21:19:39 +00:00
!endif
2012-05-14 17:54:47 +00:00
!ifdef NEED_FFI_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${FFI_DLL}"
2007-09-25 16:09:58 +00:00
!endif
2012-05-14 17:54:47 +00:00
!ifdef NEED_FONTCONFIG_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${FONTCONFIG_DLL}"
2007-09-25 16:09:58 +00:00
!endif
2009-09-16 13:34:37 +00:00
!ifdef NEED_FREETYPE_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\libpangoft2-1.0-0.dll"
File "${STAGING_DIR}\${FREETYPE_DLL}"
2009-09-16 13:34:37 +00:00
!endif
2012-05-14 17:54:47 +00:00
!ifdef NEED_JASPER_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${JASPER_DLL}"
2012-04-19 18:31:11 +00:00
!endif
2012-05-14 17:54:47 +00:00
!ifdef NEED_JPEG_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${JPEG_DLL}"
2012-05-14 17:54:47 +00:00
!endif
!ifdef NEED_LZMA_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${LZMA_DLL}"
2012-05-14 17:54:47 +00:00
!endif
!ifdef NEED_PIXMAN_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${PIXMAN_DLL}"
2012-04-19 18:31:11 +00:00
!endif
2012-05-14 17:54:47 +00:00
!ifdef NEED_PNG_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${PNG_DLL}"
2012-05-14 17:54:47 +00:00
!endif
!ifdef NEED_TIFF_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${TIFF_DLL}"
2012-05-14 17:54:47 +00:00
!endif
!ifdef NEED_XML_DLL
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\${XML_DLL}"
2012-05-14 17:54:47 +00:00
!endif
2012-10-19 17:47:34 +00:00
SetOutPath $INSTDIR\${GTK_ETC_DIR}
File "${GTK_DIR}\${GTK_ETC_DIR}\*.*"
!ifdef GTK_ENGINES_DIR
SetOutPath $INSTDIR\${GTK_ENGINES_DIR}
File "${STAGING_DIR}\${GTK_ENGINES_DIR}\libpixmap.dll"
File "${STAGING_DIR}\${GTK_ENGINES_DIR}\libwimp.dll"
!endif
!ifdef GTK_MODULES_DIR
SetOutPath $INSTDIR\${GTK_MODULES_DIR}
File "${STAGING_DIR}\${GTK_MODULES_DIR}\libgail.dll"
2012-10-14 18:42:02 +00:00
!endif
2012-10-19 17:47:34 +00:00
!ifdef GTK_SCHEMAS_DIR
SetOutPath $INSTDIR\${GTK_SCHEMAS_DIR}
File "${STAGING_DIR}\${GTK_SCHEMAS_DIR}\*.*"
2012-10-14 18:42:02 +00:00
!endif
2012-10-19 17:47:34 +00:00
2008-06-26 16:42:07 +00:00
SectionEnd ; "Wireshark"
!endif
2005-07-21 20:05:37 +00:00
2006-05-31 17:38:42 +00:00
Section "TShark" SecTShark
2001-04-04 04:50:05 +00:00
;-------------------------------------------
SetOutPath $INSTDIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\tshark.exe"
2006-05-31 17:38:42 +00:00
File "..\..\doc\tshark.html"
2001-07-12 22:45:23 +00:00
SectionEnd
2001-04-04 04:50:05 +00:00
2012-10-11 20:45:35 +00:00
!ifdef QT_DIR
Section /o "QtShark (Experimental)" SecQtshark
;-------------------------------------------
; by default, QtShark is not installed
SetOutPath $INSTDIR
File "${QT_DIR}\qtshark.exe"
File "${QT_DIR}\QtCore4.dll"
File "${QT_DIR}\QtGui4.dll"
; Disable Qtshark shortcut if Qtshark isn't selected
Push $0
SectionGetFlags ${SecQtshark} $0
IntOp $0 $0 & 1
CreateShortCut "$SMPROGRAMS\Qtshark.lnk" "$INSTDIR\qtshark.exe" "" "$INSTDIR\qtshark.exe" 0 "" "" "The new QtShark Network Protocol Analyzer"
Pop $0
SectionEnd
!endif
2005-07-23 20:34:43 +00:00
SectionGroup "Plugins / Extensions" SecPluginsGroup
2001-04-04 04:50:05 +00:00
2005-03-07 22:31:13 +00:00
Section "Dissector Plugins" SecPlugins
2001-04-04 04:50:05 +00:00
;-------------------------------------------
2009-05-17 18:46:50 +00:00
SetOutPath '$INSTDIR\plugins\${VERSION}'
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\plugins\${VERSION}\asn1.dll"
File "${STAGING_DIR}\plugins\${VERSION}\docsis.dll"
File "${STAGING_DIR}\plugins\${VERSION}\ethercat.dll"
File "${STAGING_DIR}\plugins\${VERSION}\gryphon.dll"
File "${STAGING_DIR}\plugins\${VERSION}\irda.dll"
File "${STAGING_DIR}\plugins\${VERSION}\m2m.dll"
File "${STAGING_DIR}\plugins\${VERSION}\opcua.dll"
File "${STAGING_DIR}\plugins\${VERSION}\profinet.dll"
File "${STAGING_DIR}\plugins\${VERSION}\unistim.dll"
File "${STAGING_DIR}\plugins\${VERSION}\wimax.dll"
File "${STAGING_DIR}\plugins\${VERSION}\wimaxasncp.dll"
2012-07-20 01:21:27 +00:00
File "${STAGING_DIR}\plugins\${VERSION}\wimaxmacphy.dll"
2010-01-11 14:48:28 +00:00
!include "custom_plugins.txt"
2005-03-07 22:31:13 +00:00
SectionEnd
2005-07-26 17:58:17 +00:00
Section "Tree Statistics Plugin" SecStatsTree
2005-03-07 22:31:13 +00:00
;-------------------------------------------
2009-05-17 18:46:50 +00:00
SetOutPath '$INSTDIR\plugins\${VERSION}'
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\plugins\${VERSION}\stats_tree.dll"
2001-07-12 22:45:23 +00:00
SectionEnd
2001-04-04 04:50:05 +00:00
2005-07-21 20:05:37 +00:00
Section "Mate - Meta Analysis and Tracing Engine" SecMate
2005-01-21 19:16:05 +00:00
;-------------------------------------------
2009-05-17 18:46:50 +00:00
SetOutPath '$INSTDIR\plugins\${VERSION}'
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\plugins\${VERSION}\mate.dll"
2005-01-21 19:16:05 +00:00
SectionEnd
2006-02-07 09:12:43 +00:00
2007-08-27 06:40:36 +00:00
!ifdef SMI_DIR
Section "SNMP MIBs" SecMIBs
;-------------------------------------------
SetOutPath $INSTDIR\snmp\mibs
2011-06-27 20:48:26 +00:00
File "${SMI_DIR}\share\mibs\iana\*"
File "${SMI_DIR}\share\mibs\ietf\*"
File "${SMI_DIR}\share\mibs\irtf\*"
File "${SMI_DIR}\share\mibs\tubs\*"
File "${SMI_DIR}\share\pibs\*"
File "${SMI_DIR}\share\yang\*.yang"
2012-07-19 08:02:50 +00:00
!include "custom_mibs.txt"
2007-08-27 06:40:36 +00:00
SectionEnd
!endif
2005-07-21 20:05:37 +00:00
SectionGroupEnd ; "Plugins / Extensions"
2005-07-23 20:34:43 +00:00
SectionGroup "Tools" SecToolsGroup
2005-07-21 20:05:37 +00:00
Section "Editcap" SecEditcap
;-------------------------------------------
SetOutPath $INSTDIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\editcap.exe"
2005-07-21 20:05:37 +00:00
File "..\..\doc\editcap.html"
SectionEnd
Section "Text2Pcap" SecText2Pcap
;-------------------------------------------
SetOutPath $INSTDIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\text2pcap.exe"
2005-07-21 20:05:37 +00:00
File "..\..\doc\text2pcap.html"
SectionEnd
Section "Mergecap" SecMergecap
;-------------------------------------------
SetOutPath $INSTDIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\mergecap.exe"
2005-07-21 20:05:37 +00:00
File "..\..\doc\mergecap.html"
SectionEnd
2012-09-24 11:59:49 +00:00
Section "Reordercap" SecReordercap
;-------------------------------------------
SetOutPath $INSTDIR
File "${STAGING_DIR}\reordercap.exe"
SectionEnd
2005-07-21 20:05:37 +00:00
Section "Capinfos" SecCapinfos
;-------------------------------------------
SetOutPath $INSTDIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\capinfos.exe"
2005-07-21 20:05:37 +00:00
File "..\..\doc\capinfos.html"
SectionEnd
2008-06-26 16:42:07 +00:00
Section "Rawshark" SecRawshark
;-------------------------------------------
SetOutPath $INSTDIR
2012-06-13 21:03:54 +00:00
File "${STAGING_DIR}\rawshark.exe"
2008-06-26 16:42:07 +00:00
File "..\..\doc\rawshark.html"
SectionEnd
2005-07-21 20:05:37 +00:00
SectionGroupEnd ; "Tools"
2006-04-20 20:33:04 +00:00
!ifdef HHC_DIR
Section "User's Guide" SecUsersGuide
;-------------------------------------------
SetOutPath $INSTDIR
2007-01-19 00:10:22 +00:00
File "user-guide.chm"
2006-04-20 20:33:04 +00:00
SectionEnd
!endif
2005-07-21 20:05:37 +00:00
2012-04-04 00:47:21 +00:00
Section "-Finally"
; Compute and write the installation directory size
${GetSize} "$INSTDIR" "/S=0K" $0 $1 $2
IntFmt $0 "0x%08X" $0
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "EstimatedSize" "$0"
SectionEnd
2005-07-23 20:34:43 +00:00
2005-04-10 13:43:07 +00:00
; ============================================================================
; PLEASE MAKE SURE, THAT THE DESCRIPTIVE TEXT FITS INTO THE DESCRIPTION FIELD!
; ============================================================================
2003-12-26 12:27:47 +00:00
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
2008-04-09 03:48:16 +00:00
!ifdef GTK_DIR
2008-06-26 16:42:07 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecWireshark} "${PROGRAM_NAME} is a GUI network protocol analyzer."
2004-08-26 22:48:29 +00:00
!endif
2006-05-31 17:38:42 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecTShark} "TShark is a text based network protocol analyzer."
2012-10-11 20:45:35 +00:00
!ifdef QT_DIR
!insertmacro MUI_DESCRIPTION_TEXT ${SecQtshark} "Qtshark is a new GUI network protocol analyzer. (Experimental)"
!endif
2012-10-16 08:08:18 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecPluginsGroup} "Some plugins and extensions for both ${PROGRAM_NAME} and TShark."
2003-12-26 12:27:47 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecPlugins} "Plugins with some extended dissections."
2005-03-07 22:31:13 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecStatsTree} "Plugin for some extended statistics."
2005-01-21 19:16:05 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecMate} "Plugin - Meta Analysis and Tracing Engine (Experimental)."
2007-08-27 06:40:36 +00:00
!ifdef SMI_DIR
!insertmacro MUI_DESCRIPTION_TEXT ${SecMIBs} "SNMP MIBs for better SNMP dissection."
2007-01-02 22:19:48 +00:00
!endif
2005-07-23 20:34:43 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecToolsGroup} "Additional command line based tools."
!insertmacro MUI_DESCRIPTION_TEXT ${SecEditCap} "Editcap is a program that reads a capture file and writes some or all of the packets into another capture file."
!insertmacro MUI_DESCRIPTION_TEXT ${SecText2Pcap} "Text2pcap is a program that reads in an ASCII hex dump and writes the data into a libpcap-style capture file."
!insertmacro MUI_DESCRIPTION_TEXT ${SecMergecap} "Mergecap is a program that combines multiple saved capture files into a single output file"
2012-09-24 11:59:49 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecReordercap} "Reordercap is a program that copies frames from an input capture to an output capture after sorting by time."
2005-07-23 20:34:43 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecCapinfos} "Capinfos is a program that provides information on capture files."
2008-06-26 16:42:07 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecRawshark} "Rawshark is a raw packet filter."
2006-10-21 09:40:18 +00:00
!ifdef HHC_DIR
2007-01-31 06:45:46 +00:00
!insertmacro MUI_DESCRIPTION_TEXT ${SecUsersGuide} "Install the user's guide, so an internet connection is not required to read the help pages."
2006-10-21 09:40:18 +00:00
!endif
2003-12-26 12:27:47 +00:00
!insertmacro MUI_FUNCTION_DESCRIPTION_END
2005-07-23 20:34:43 +00:00
2004-06-10 10:12:30 +00:00
; ============================================================================
; Callback functions
; ============================================================================
2008-04-09 03:48:16 +00:00
!ifdef GTK_DIR
2008-08-14 17:54:35 +00:00
; Disable File extensions if Wireshark isn't selected
2004-06-10 10:12:30 +00:00
Function .onSelChange
Push $0
2008-04-09 03:48:16 +00:00
SectionGetFlags ${SecWireshark} $0
2004-06-29 07:14:39 +00:00
IntOp $0 $0 & 1
2004-06-10 10:12:30 +00:00
IntCmp $0 0 onSelChange.unselect
2008-08-14 17:54:35 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "State" 1
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "Flags" ""
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 7" "Flags" ""
2012-12-02 23:55:44 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 8" "Flags" ""
2007-03-26 04:02:05 +00:00
Goto onSelChange.end
2008-08-14 17:54:35 +00:00
2007-03-26 04:02:05 +00:00
onSelChange.unselect:
2008-08-14 17:54:35 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "State" 0
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "Flags" "DISABLED"
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 7" "Flags" "DISABLED"
2012-12-02 23:55:44 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 8" "Flags" "DISABLED"
2004-06-29 07:14:39 +00:00
Goto onSelChange.end
2008-08-14 17:54:35 +00:00
2004-06-10 10:12:30 +00:00
onSelChange.end:
Pop $0
FunctionEnd
2004-06-29 07:14:39 +00:00
!endif
2005-02-03 02:35:20 +00:00
!include "GetWindowsVersion.nsh"
2005-07-23 20:34:43 +00:00
!include WinMessages.nsh
2007-11-06 20:32:30 +00:00
!include "VersionCompare.nsh"
2005-02-03 02:35:20 +00:00
2007-11-06 20:32:30 +00:00
Var WINPCAP_NAME ; DisplayName from WinPcap installation
Var WINPCAP_VERSION ; DisplayVersion from WinPcap installation
2005-02-03 02:35:20 +00:00
Function myShowCallback
2005-07-23 20:34:43 +00:00
2005-02-08 02:34:15 +00:00
; Get the Windows version
Call GetWindowsVersion
Pop $R0 ; Windows Version
2006-11-02 09:36:47 +00:00
; Check if we're able to run with this version
StrCmp $R0 '95' lbl_winversion_unsupported
StrCmp $R0 '98' lbl_winversion_unsupported
StrCmp $R0 'ME' lbl_winversion_unsupported
2007-02-23 19:48:59 +00:00
StrCmp $R0 'NT 4.0' lbl_winversion_unsupported_nt4
2010-02-09 19:13:57 +00:00
StrCmp $R0 '2000' lbl_winversion_unsupported_2000
2006-11-02 09:36:47 +00:00
Goto lbl_winversion_supported
lbl_winversion_unsupported:
2009-02-18 20:27:16 +00:00
MessageBox MB_OK \
2009-10-21 03:13:42 +00:00
"Windows $R0 is no longer supported. The last known version working with 98/ME was Ethereal 0.99.0." \
2009-02-18 20:27:16 +00:00
/SD IDOK
2006-11-02 09:36:47 +00:00
Quit
2007-02-23 19:48:59 +00:00
lbl_winversion_unsupported_nt4:
2009-02-18 20:27:16 +00:00
MessageBox MB_OK \
2009-10-21 03:13:42 +00:00
"Windows $R0 is no longer supported. The last known version working with NT 4.0 was Wireshark 0.99.4." \
2009-02-18 20:27:16 +00:00
/SD IDOK
2007-02-23 19:48:59 +00:00
Quit
2010-02-09 19:13:57 +00:00
lbl_winversion_unsupported_2000:
MessageBox MB_OK \
"Windows $R0 is no longer supported. Please install Wireshark 1.2 or 1.0." \
/SD IDOK
Quit
2005-08-26 00:59:07 +00:00
2010-02-09 19:13:57 +00:00
lbl_winversion_supported:
2005-07-23 20:34:43 +00:00
; detect if WinPcap should be installed
2012-09-13 21:28:28 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 4" "Text" "Install WinPcap ${PCAP_VERSION}"
2007-11-06 20:32:30 +00:00
ReadRegStr $WINPCAP_NAME HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "DisplayName"
2005-07-23 20:34:43 +00:00
IfErrors 0 lbl_winpcap_installed ;if RegKey is available, WinPcap is already installed
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 2" "Text" "WinPcap is currently not installed"
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 2" "Flags" "DISABLED"
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 5" "Text" "(Use Add/Remove Programs first to uninstall any undetected old WinPcap versions)"
Goto lbl_winpcap_done
lbl_winpcap_installed:
2007-11-06 20:32:30 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 2" "Text" "$WINPCAP_NAME"
; Compare the installed build against the one we have.
2007-07-06 20:34:20 +00:00
ReadRegStr $WINPCAP_VERSION HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "DisplayVersion"
2007-11-06 20:32:30 +00:00
StrCmp $WINPCAP_VERSION "" lbl_winpcap_do_install ; WinPcap is really old(?) or installed improperly.
2010-07-12 23:52:35 +00:00
${VersionCompare} $WINPCAP_VERSION "4.1.0.2001" $1 ; WinPcap 4.1.2
2007-11-06 20:32:30 +00:00
StrCmp $1 "2" lbl_winpcap_do_install
2005-07-26 17:58:17 +00:00
2005-09-09 21:04:19 +00:00
;lbl_winpcap_dont_install:
2007-11-06 20:32:30 +00:00
; The installed version is >= to what we have, so don't install
2005-07-26 17:58:17 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 4" "State" "0"
2007-11-06 20:32:30 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 5" "Text" "If selected, the currently installed $WINPCAP_NAME will be uninstalled first."
2005-07-26 17:58:17 +00:00
Goto lbl_winpcap_done
2007-02-16 06:38:59 +00:00
;lbl_winpcap_dont_upgrade:
2006-10-16 22:47:32 +00:00
; force the user to upgrade by hand
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 4" "State" "0"
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 4" "Flags" "DISABLED"
2012-09-13 21:28:28 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 5" "Text" "If you wish to install WinPcap ${PCAP_VERSION}, please uninstall $WINPCAP_NAME manually first."
2006-10-16 22:47:32 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 5" "Flags" "DISABLED"
Goto lbl_winpcap_done
2005-07-26 17:58:17 +00:00
lbl_winpcap_do_install:
; seems to be an old version, install newer one
2005-07-23 20:34:43 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 4" "State" "1"
2007-11-06 20:32:30 +00:00
WriteINIStr "$PLUGINSDIR\WinPcapPage.ini" "Field 5" "Text" "The currently installed $WINPCAP_NAME will be uninstalled first."
2005-07-23 20:34:43 +00:00
lbl_winpcap_done:
2006-05-30 13:19:30 +00:00
; if Wireshark was previously installed, unselect previously not installed icons etc.
2007-03-26 04:02:05 +00:00
; detect if Wireshark is already installed ->
2006-05-30 13:19:30 +00:00
ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "UninstallString"
IfErrors lbl_wireshark_notinstalled ;if RegKey is unavailable, Wireshark is not installed
2005-07-25 17:56:19 +00:00
; only select Start Menu Group, if previously installed
; (we use the "all users" start menu, so select it first)
SetShellVarContext all
2012-10-16 08:08:18 +00:00
IfFileExists "$SMPROGRAMS\${PROGRAM_NAME}\${PROGRAM_NAME}.lnk" lbl_have_startmenu
IfFileExists "$SMPROGRAMS\${PROGRAM_NAME}.lnk" lbl_have_startmenu
2005-07-25 17:56:19 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 2" "State" "0"
lbl_have_startmenu:
; only select Desktop Icon, if previously installed
2012-10-16 08:08:18 +00:00
IfFileExists "$DESKTOP\${PROGRAM_NAME}.lnk" lbl_have_desktopicon
2005-07-25 17:56:19 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 3" "State" "0"
lbl_have_desktopicon:
; only select Quick Launch Icon, if previously installed
2012-10-16 08:08:18 +00:00
IfFileExists "$QUICKLAUNCH\${PROGRAM_NAME}.lnk" lbl_have_quicklaunchicon
2005-07-25 17:56:19 +00:00
WriteINIStr "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 4" "State" "0"
lbl_have_quicklaunchicon:
2006-05-30 13:19:30 +00:00
lbl_wireshark_notinstalled:
2005-07-25 17:56:19 +00:00
2005-02-03 02:35:20 +00:00
FunctionEnd