Difference between revisions of "Foxit Reader"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(added post-install scripts)
(Created section for uninstall strings so they can be more permanently kept track of)
Line 107: Line 107:
 
     </package>
 
     </package>
 
</source>
 
</source>
 +
 +
 +
=Uninstall Strings=
 +
* 3.3.0.0430: 4FEC0D0D-1279-4C46-B6F8-B73C5247A6A9
 +
* 3.1.1.0901: A9355F41-AE6C-487C-A6A9-BC348D836F43
 +
* 3.1.?: 81EC4B5E-E735-43D2-985A-C675003BFBB6
 +
  
 
=Configuration scripts=
 
=Configuration scripts=

Revision as of 15:30, 5 May 2010

Silent install for Foxit Reader, a "free PDF document viewer and printer, with incredible small size, breezing-fast launch speed and rich feature set".

You will need to download the .msi version of Foxit Reader from here in order for this to work. I would also recommend setting a different user in the permissions.

These installers assume that Windows is localised in English. For Windows localised for other languages you will need to make changes accordingly.

Installer

Foxit Reader 3.1 (English)

<package
        id="foxit-reader"
        name="Foxit Reader"
        revision="3.1"
        reboot="false"
        priority="0">

		<check
			type="uninstall"
			condition="exists"
			path="Foxit Reader" />

		<install cmd='msiexec /i "%SOFTWARE%\foxit-reader\FoxitReader31_enu.msi" /qn /norestart' />

		<remove cmd='msiexec /x {81EC4B5E-E735-43D2-985A-C675003BFBB6} /passive /norestart' />

		<upgrade cmd='msiexec /i "%SOFTWARE%\foxit-reader\FoxitReader31_enu" /qn /norestart' />
 
</package>

Foxit Reader automatically makes itself the default PDF reader, hence the -register command-line switch isn't used here.

Foxit Reader 2.3

<package
        id="foxit-reader"
        name="Foxit Reader"
        revision="2.3"
        reboot="false"
        priority="0">

 <check type="file" condition="versiongreaterorequal" path="%PROGRAMFILES%\Foxit Software\Foxit Reader\Foxit Reader.exe" value="2.3.2008.3201" />

 <install cmd='msiexec /i "%SOFTWARE%\Office\Foxit\FoxitReader23.msi" /QN /NORESTART ALLUSERS=1' />
 <install cmd='"%PROGRAMFILES%\Foxit Software\Foxit Reader\Foxit Reader.exe" -register' />

 <remove cmd='msiexec /x {376DA9DC-71B3-4AB7-A80C-8ED02A736172} /passive /norestart' />

 <upgrade cmd='msiexec /i "%SOFTWARE%\Office\Foxit\FoxitReader23.msi" /QN /NORESTART ALLUSERS=1' />
 <upgrade cmd='"%PROGRAMFILES%\Foxit Software\Foxit Reader\Foxit Reader.exe" -register' />

</package>

Command-line Switches

-register - make Foxit Reader the default PDF reader


Foxit Reader 2.3 (Over-Complicated Package)

Note: This package gives full control for Everyone to the Foxit Reader program directory. This is a massive security risk and should be avoided.

Note: This package copies the shortcuts installed just for the user who installed Foxit Reader, to where they will be available for all users, which seems pointless as (at least with version 3) this is the default behaviour and can also be achieved using an installer command-line switch.

<package
        id="foxit-reader"
        name="Foxit Reader"
        revision="2.3"
        reboot="false"
        priority="0">
        
	<check type="file" condition="versiongreaterorequal" path="%PROGRAMFILES%\Foxit Software\Foxit Reader\Foxit Reader.exe" value="2.3.2008.2923"/>
                
<install cmd='msiexec /i %SOFTWARE%\foxit\FoxitReader23.msi /passive /norestart'>
            <exit code="0" />
        </install>
	<install cmd='cmd /c mkdir "%AllUsersProfile%\Start Menu\Programs\Foxit Reader"' />
	<install cmd='cmd /c copy "%UserProfile%\Start Menu\Programs\Foxit Reader\Foxit Reader.lnk" "%AllUsersProfile%\Start Menu\Programs\Foxit Reader"' />
	<install cmd='cmd /c rmdir /q /s "%UserProfile%\Start Menu\Programs\Foxit Reader"' />
	<install cmd='cmd /c cacls "%ProgramFiles%\\Foxit Software" /T /E /G "Everyone":F ' />
	<exit code="1332" />
	<install cmd='cmd /c cacls "%AllUsersProfile%\\Start Menu\\Programs\\Foxit Reader" /T /E /G "Everyone":F ' />
	<exit code="1332" />
        
        <remove  cmd='msiexec /x {376DA9DC-71B3-4AB7-A80C-8ED02A736172} /passive /norestart' />
	<remove cmd='cmd /c rmdir /q /s "%AllUsersProfile%\Start Menu\Programs\Foxit Reader"' />
        
	<upgrade cmd='cmd /c rmdir /q /s "%AllUsersProfile%\Start Menu\Programs\Foxit Reader"' />
        <upgrade cmd='msiexec /i %SOFTWARE%\foxit\FoxitReader23.msi /passive /norestart'>
            <exit code="0" />
        </upgrade>
	<upgrade cmd='cmd /c mkdir "%AllUsersProfile%\Start Menu\Programs\Foxit Reader"' />
	<upgrade cmd='cmd /c copy "%UserProfile%\Start Menu\Programs\Foxit Reader\Foxit Reader.lnk" "%AllUsersProfile%\Start Menu\Programs\Foxit Reader"' />
	<upgrade cmd='cmd /c rmdir /q /s "%UserProfile%\Start Menu\Programs\Foxit Reader"' />
	<upgrade cmd='cmd /c cacls "%ProgramFiles%\\Foxit Software" /T /E /G "Everyone":F ' />
	<exit code="1332" />
	<upgrade cmd='cmd /c cacls "%AllUsersProfile%\\Start Menu\\Programs\\Foxit Reader" /T /E /G "Everyone":F ' />
	<exit code="1332" />

    </package>


Uninstall Strings

  • 3.3.0.0430: 4FEC0D0D-1279-4C46-B6F8-B73C5247A6A9
  • 3.1.1.0901: A9355F41-AE6C-487C-A6A9-BC348D836F43
  • 3.1.?: 81EC4B5E-E735-43D2-985A-C675003BFBB6


Configuration scripts

Foxit Reader 3.1

Post-Install scripts:

  • remove desktop link
  • remove FF plugin
  • remove IE integration
  • no auto update
  • remove adds


File settings.bat:

REM remove desktop link
DEL /Q "%ALLUSERSPROFILE%\Desktop\Foxit Reader.lnk"

REM remove FF plugin
DEL /Q "%PROGRAMFILES%\Mozilla Firefox\plugins\npFoxitReaderPlugin.dll"

REM remove IE integration
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FoxitReader.Document /v EditFlags /t REG_DWORD /d 00000002 /f >> NUL:
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{14E8BBD8-1D1C-4D56-A4DA-D20B75EB814E} /f >> NUL:

REM User settings STEP 1: set currently loaded registry user entries
	FOR /F %%G IN ('reg query HKEY_USERS^|find "HKEY_USERS\"^|find /V "_Classes"') DO (
		call usersettings.bat %%G
	)

REM User settings STEP 2: set currently unloaded registry user entries
	REM This will fail to load registry entries for users that are currently logged in (those are already set by STEP 1)
	FOR /D %%G in ("%ALLUSERSPROFILE%\..\*") DO IF NOT "%%G"=="%ALLUSERSPROFILE%" IF EXIST %%G\NTUSER.DAT (
		REG LOAD HKU\OneUser "%%G\NTUSER.DAT" >> NUL:
		call usersettings.bat HKEY_CURRENT_USER\OneUser
		REG UNLOAD HKU\OneUser >> NUL:
	)

	REM Default user (for new users) - This one was probbably hidden from previous loop
	REG LOAD HKU\OneUser "%ALLUSERSPROFILE%\..\Default User\NTUSER.DAT" >> NUL:
	call usersettings.bat HKEY_CURRENT_USER\OneUser
	REG UNLOAD HKU\OneUser >> NUL:


File usersettings.bat (used by settings.bat):

REM %1 should be somethnig like HKEY_CURRENT_USER or HKEY_USERS\S-1-5-21-3xxxxxxxx-2xxxxxxx-3xxxxxxxx-1000

REM no auto update
reg add "%1\Software\Foxit Software\Foxit Reader\AutoUpdate Info" /v IsAutoUpdate /d 0 /f >> NUL:
reg add "%1\Software\Foxit Software\Foxit Reader\AutoUpdate Info" /v AutoUpdateCycle /d 0 /f >> NUL:
REM remove adds
reg add "%1\Software\Foxit Software\Foxit Reader\MainFrame" /v ShowAd /d 0 /f >> NUL:
REM no FF and IE integration (just for Display in browser check box)
reg add "%1\Software\Foxit Software\Foxit Reader\MainFrame" /v DisplayInBrowser /t REG_DWORD /d 00000000 /f >> NUL:

Configuration

Turn Off Automatic Updates

Foxit Reader 3.1

System-wide configuration: IsAutoUpdate=0 in %PROGRAMFILES%\Foxit Software\Foxit Reader\FoxitReader_Preferences.ini. I don't know the purpose of this file in version 3.1 as each user has their own configuration setting.

Per-user configuration: HKCU\Software\Foxit Software\Foxit Reader\AutoUpdate Info\IsAutoUpdate = 0

GUI: Help → Check for updates now → Preferences → Updater → Automatically check for Foxit updates []

Foxit Reader 3.0

System-wide configuration: IsAutoUpdate=0 in %PROGRAMFILES%\Foxit Software\Foxit Reader\FoxitReader_Preferences.ini. This setting isn't present unless the menu option has been run to turn it off. If you add an additional 'IsAutoUpdate' line to this file then only the first instance of it is adhered to.

GUI: Help → Check for updates now → Preferences → Updater → Automatically check for Foxit updates []