Thursday, 12 November 2009

Quick Time Player 7.64.17

From http://www.appdeploy.com/packages/detail.asp?id=520
Hey Folks,
Here are my notes for packaging Quicktime 7.64 so that the customized files are stored locally on the machine (e.g. If a PC is off the network and a new user logs in, it will not need to go back to the installation media to for the customized user files)
It's quite easy to follow. You can customize other options as you wish, but the basics are here to make packaging it nice and simple.
Extracted msi and QuickTimeInstallerAdmin.exe

Created admin install
Added the file QuickTimeInstallerAdmin.exe into the admin installation folder as the installation will not work without it
Created a transform and applied the following changes
--------------------------------------------------------
User Interface sequence-Commented out the 'InitInstallOptionsCheckboxes' custom action (this will uncheck the 'Install Desktop shortcuts' and 'Automatically update Quicktime and other Apple Software' options)
Execute Immediate Sequence-Commented out the 'Launch_QTTask' custom action (this will prevent the Quicktime from launching in the System tray)

Created the feature 'CurrentUser' and made this the parent for the 'QuickTimeEssentials' feature
Created the component 'User_Settings'-Assigned Feature = CurrentUser-Directory = Program Files\QuickTime\User_Settings
Added the following files to the 'User_Settings' component-QTPlayerSession.xml-QuickTime.qtp
Added the following registry settings to the 'User_Settings' component (NOTE the /fup to install the missing user profile files)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\[ProductCode]]@="[ProductName]""+"="""StubPath"="msiexec.exe /fup [ProductCode] /qn""Version"="[ProductVersion]"
Created the component 'Duplicate_Files'-Assigned Feature = CurrentUser-Directory = Windows\Profiles\Local Settings\Application Data\Apple Computer\QuickTime
Addded the following Duplicate file entries to the DuplicateFile component- Existing File = 'Program Files\QuickTime\User_Settings\QuickTime.qtp'- Destination Directory = 'Windows\Profiles\Local Settings\Application Data\Apple Computer\QuickTime'
- Existing File = 'Program Files\QuickTime\User_Settings\QTPlayerSession.xml'- Destination Directory = 'Windows\Profiles\Application Data\Apple Computer\QuickTime'
Added the following registry key to the 'Duplicate_Files' component and set it as the keypath
[HKEY_CURRENT_USER\Software\Apple Computer, Inc.\QuickTime]"7.64.17.0"="DummyRegKey"
Disable ActiveX update.
In the Registry Table set the following Values
"UpdateXNow"=dword:00000000

Windows Desktop Search 4.0

Please refer the C/A and try it once.
1) Execute progm from installation C/A name: Install exe file: Command line arguments: /quiet/norestart sequence:Normal execute immediate/deferred condition: NOT Installed IN SCRIPT OPTION: Immediate execution Processing: Synchronouus ignore exit code

2) Execute progm from destination C/A name: uninstall working directory:system folder exe & cmd line : ""[windir]\$NtUninstallKB940157$\spuninst\spuninst.exe" /passive /norestart sequence:Normal execute immediate/deferred condition: REMOVE~="ALL" IN SCRIPT OPTION: Immediate execution Processing: Synchronouus ignore exit code

3) Execute progm from destination C/A name: delete working directory:system folder exe & cmd line : cmd.exe /c rmdir /q /s "[ProgramFilesFolder]Windows Desktop Search" sequence:Normal execute immediate/deferred condition: REMOVE~="ALL" IN SCRIPT OPTION: Immediate execution Processing: Synchronouus ignore exit code

4) One more custom action is added to delete folder. userprofile\Application Data\Windows Searchcall vb script from embedded code: dim fso,progfiles,wshshellset fso =createobject("scripting.filesystemobject")set wshshell = createobject("wscript.shell")USRPROFILE = wshshell.expandenvironmentstrings("%userprofile%")If FSO.folderexists(USRPROFILE & "\Application Data\Windows Search") Then FSO.DeleteFolder(USRPROFILE & "\Application Data\Windows Search")End If