Deploying QuickTime 7.5.5 to Vista
[font="trebuchet ms"]Hi All,
[font="trebuchet ms"]
[font="trebuchet ms"]Was wondering if anyone here managed to deploy QuickTime 7.5.5 player to Windows Vista Machines.
[font="trebuchet ms"]
[font="trebuchet ms"]I know there are a lot of thread here regarding to customising QuickTime 7.5.5 before deployment with the QTP and XML file, using ActiveSetup to distribute the 2 files to local profiles when user login.
[font="trebuchet ms"]
[font="trebuchet ms"]Here are my questions and wondering how do you go about solving this?
[font="trebuchet ms"]
[font="trebuchet ms"]1. The active setup doesn't quick work very well with user without admin access. The UAC will prompt user when running activesetup job.
[font="trebuchet ms"]
[font="trebuchet ms"]2. Anyone uses Installshield to install QT7.5.5 without the need to use ActiveSetup?
[font="trebuchet ms"]
[font="trebuchet ms"]Any help will be appreciated.
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
[font="trebuchet ms"]
0 Comments
[ + ] Show comments
Answers (19)
Please log in to answer
Posted by:
piyushnasa
12 years ago
Follow below link for packaging latest version of Quicktime on Windows 7
http://msiworld.blogspot.com.au/2012/06/re-packaging-apple-quicktime-7728056.html
Posted by:
ahcash
15 years ago
[left]OK. I was hoping to get this running in the direct edit mode before document all the settings and creare a MST file for it.
After reading this post, http://itninja.com/question/how-do-you-roll-out-new-machines?7774&mpage=1&key = and several other post in the forum regarding to QuickTime deployment, I have to say it's nearly there.. I would appreciate it anyone can make some comments or point out if I have miss something.
ActiveSetup part seems to be working but the self healing doesn't seems to work. I am still working on this..
I've done the following in InstallShield 2009 in Direct MST mode this time. QUICKTIME 7.6.
In Summary:
1. Create a new Feature called “UserSettingsâ€Â
2. Make the QuickTimeEssentials feature under the UserSettings feature
3. Create “_User†and “UserSettingsVista†component under the UserSettings feature.
4. In _User component, copy 2 customise files (quicktime.qtp & qtplayersession.xml) to [INSTALLDIR]_User. These 2 files will be in a data1.cab
5. In UserSettingsVista Component.
a.) Create a new registry key and set this to key path
HKCU\Software\Classes\Software\Apple Computer\UserSettingsInstalled = ‘1’ Key
b.) Duplicate File
FileKey = Filekey1
Component = UserSettingsVista
File_ = qtplayersession.xml
DistFolder = Directory4 (directories are populated as below)
FileKey = FileKey2
Component= UserSettingsVista
File_ = quicktime.qtp
DistFolder = Directory7 (directories are populated as below)
6. Directory Table: (Directory | Directory_Parent | DefaultDir)
--- I reserved all the default key name created in the MST.therefore, sorry about the naming---
(Directory1 | CurrentUserFolder | AppData)
Directory1 property. Its value is 'C:\Users\Peter\AppData\'.
(Directory2 | Directory1 | Local)
Directory2 property. Its value is 'C:\Users\Peter\AppData\Local\'.
(Directory 3 | Directory 2 | APPLEC~1|Apple Computer)
Directory3 property. Its value is 'C:\Users\Peter\AppData\Local\Apple Computer\'.
(Directory 4 | Directory3 | QUICKT~1|QuickTime)
Directory4 property. Its value is 'C:\Users\Peter\AppData\Local\Apple Computer\QuickTime\'.
(Directory5 | Directory1 | LocalLow)
Directory5 property. Its value is 'C:\Users\xm5f\AppData\LocalLow\'.
(Directory6 | Directory 5| APPLEC~1|Apple Computer)
Directory6 property. Its value is 'C:\Users\Peter\AppData\LocalLow\Apple Computer\'.
(Directory7 | Directory 6 | QUICKT~1|QuickTime)
Directory7 property. Its value is 'C:\Users\Peter\AppData\LocalLow\Apple Computer\QuickTime\'.
7. Under QuickTimeFessential Feature, Quicktime.qts component. Add the following registry
HKLM\Software\Microsoft\ActiveSetup\{Product GUID}\
Make it as String
ComponentID = [ProductName] User Setup
Version = 7,6
StubPath= MSIEXEC /fup {Product ID} /qn
8. Modified the following in ‘InstallExecuteSequence’ table. Set the conditionfor Action "Launch_QTTask" to nothing
9. Deleted the following in 'ControlEvent' table. "SetupCompleteSuccess | ConfigureTypesBtn | DoAction | Launch_QuickTimeCpl"
10. In InstallExecuteSequence & InstallUISequence, Set the CurrentUserFolder to "%USERPROFILE" only. (This is because at one stage, when self healing, it duplicate the 2 files to C:\Current User\Local Settings instead. which joe experienced in http://itninja.com/question/how-do-you-roll-out-new-machines?7774&mpage=1&key =)
And the following Property table
Property Table:
ALLUSERS=1
DESKTOP_SHORTCUTS=0
QTTaskRunFlags=0
QTINFO.BISQTPRO=1
SCHEDULE_ASUW=0
[/left][left]
Notes: [/left][left] [/left][left]As stated (below) previously by nick in the thread mentioned above, Nick has already provided some solution below to overcome this problem. [/left][left] [/left]
Hi folks,
finally got the time to down track the annoying error, that the 'Quicktime.qtp' file is somehow being changed after it is copied to the profile.
The problem is the 'QuickTimePostInstallMSIProc_deferred' Custom Action in the 'InstallExecuteSequence'.
This CA writes a default 'Quicktime.qtp' file or if it is already there, it writes some default value to it.
This explains, why several people (including myself) experienced a partly change of their well crafted 'Quicktime.qtp' settings file.
To overcome this, one could simply delete this CA. But this is no real option, because it writes the file associations to the registry.
An other possibility would be, to copy the file with the DuplicateFile action and then set the 'Read Only' Bit.
A further one could use a own CA and copy this file as the very last action before 'InstallFinalize' and overwrite the existing file.
Hope this enlighten the things a bit and creates some ideas...
A lot easier approach would of course be, if Apple would provide the deployment people with this things implemented as admin options!
Regards, Nick
2. Make the QuickTimeEssentials feature under the UserSettings feature
HKCU\Software\Classes\Software\Apple Computer\UserSettingsInstalled = ‘1’ Key
FileKey = Filekey1
Component = UserSettingsVista
File_ = qtplayersession.xml
DistFolder = Directory4 (directories are populated as below)
Component= UserSettingsVista
File_ = quicktime.qtp
DistFolder = Directory7 (directories are populated as below)
--- I reserved all the default key name created in the MST.therefore, sorry about the naming---
Directory1 property. Its value is 'C:\Users\Peter\AppData\'.
(Directory2 | Directory1 | Local)
Directory2 property. Its value is 'C:\Users\Peter\AppData\Local\'.
Directory3 property. Its value is 'C:\Users\Peter\AppData\Local\Apple Computer\'.
(Directory 4 | Directory3 | QUICKT~1|QuickTime)
Directory4 property. Its value is 'C:\Users\Peter\AppData\Local\Apple Computer\QuickTime\'.
Directory5 property. Its value is 'C:\Users\xm5f\AppData\LocalLow\'.
Directory6 property. Its value is 'C:\Users\Peter\AppData\LocalLow\Apple Computer\'.
Directory7 property. Its value is 'C:\Users\Peter\AppData\LocalLow\Apple Computer\QuickTime\'.
HKLM\Software\Microsoft\ActiveSetup\{Product GUID}\
ComponentID = [ProductName] User Setup
Version = 7,6
StubPath= MSIEXEC /fup {Product ID} /qn
DESKTOP_SHORTCUTS=0
QTTaskRunFlags=0
QTINFO.BISQTPRO=1
SCHEDULE_ASUW=0
[/left][left]
finally got the time to down track the annoying error, that the 'Quicktime.qtp' file is somehow being changed after it is copied to the profile.
The problem is the 'QuickTimePostInstallMSIProc_deferred' Custom Action in the 'InstallExecuteSequence'.
This CA writes a default 'Quicktime.qtp' file or if it is already there, it writes some default value to it.
This explains, why several people (including myself) experienced a partly change of their well crafted 'Quicktime.qtp' settings file.
To overcome this, one could simply delete this CA. But this is no real option, because it writes the file associations to the registry.
An other possibility would be, to copy the file with the DuplicateFile action and then set the 'Read Only' Bit.
A further one could use a own CA and copy this file as the very last action before 'InstallFinalize' and overwrite the existing file.
Hope this enlighten the things a bit and creates some ideas...
A lot easier approach would of course be, if Apple would provide the deployment people with this things implemented as admin options!
Regards, Nick
Posted by:
aogilmor
15 years ago
good question, you know first Apple should have wised up by now and released a standard machine-level settings quicktime without the need for all that active setup junk. That sucks even on XP; sure we all love to show off our XP and packaging knowledge but it's a pain to do.
Having said that, maybe a shim would work? [:D] See the thread on shims for some resources.
Maybe there is a "white list" of sorts that can be used for Windows Vista that'll get around UAC?
Having said that, maybe a shim would work? [:D] See the thread on shims for some resources.
Maybe there is a "white list" of sorts that can be used for Windows Vista that'll get around UAC?
Posted by:
turbokitty
15 years ago
Posted by:
ahcash
15 years ago
I did a manual installation and make all the customisation. The customise xml and qtp are store in these location.
QuickTime.qtp -- C:\Users\<UserID>\AppData\LocalLow\Apple Computer\QuickTime
QTPlayerSession.xml -- C:\Users\<UserID>\AppData\Local\Apple Computer\QuickTime
The problem is with the taget path: Ref:
[LocalAppDataFolder]LocalLow\Apple Computer\QuickTime
[LocalAppDataFolder]Local\Apple Computer\Quicktime
Posted by:
turbokitty
15 years ago
Posted by:
nheim
15 years ago
Hi AH,
don't know how you built your Active Setup.
We are using this method for years now on locked down XP and Vista without any problem.
If you need admin rights for this, your package is just not authored very well enough.
Copying two files to the users profile will not trigger UAC, but most likely that are not the only things your action really does!
And: If this doesn't work with AS, it will not work with any other method too!
You have to log the AS portion of the setup and find the problem.
Regards, Nick
Check this thread for instructions: http://itninja.com/question/how-do-you-roll-out-new-machines?7774
don't know how you built your Active Setup.
We are using this method for years now on locked down XP and Vista without any problem.
If you need admin rights for this, your package is just not authored very well enough.
Copying two files to the users profile will not trigger UAC, but most likely that are not the only things your action really does!
And: If this doesn't work with AS, it will not work with any other method too!
You have to log the AS portion of the setup and find the problem.
Regards, Nick
Check this thread for instructions: http://itninja.com/question/how-do-you-roll-out-new-machines?7774
Posted by:
ahcash
15 years ago
ORIGINAL: nheim
Hi AH,
don't know how you built your Active Setup.
We are using this method for years now on locked down XP and Vista without any problem.
If you need admin rights for this, your package is just not authored very well enough.
Copying two files to the users profile will not trigger UAC, but most likely that are not the only things your action really does!
And: If this doesn't work with AS, it will not work with any other method too!
You have to log the AS portion of the setup and find the problem.
Regards, Nick
Check this thread for instructions: http://itninja.com/question/how-do-you-roll-out-new-machines?7774
Hi nheim,
We used SMS Installer EXE to copy the 2 files to user profiles for the Active Setup. Vista prompt for UAC for the EXE file.. I suppose I should just issue a "msiexec /i [ProductCode] REINSTALL=UserSettings REINSTALLMODE=up /qn" in the active setup..
I checked your above post and should I follow the steps below? Would you be able to help me out below...
I will document everything and share with our fellow forumers if everything works..
I have this in my "Setup Design" view in InstallShield.
UserSettings
+------ QuickTimeEssentials feature
+------ UserSettingsRepair component
+------ com.apple.QuickTime.plist component
+------ _User component.
2. Add the components 'com.apple.QuickTime.plist', 'UserSettingsRepair' + '_User'
2. Add 3 files: 'com.apple.QuickTime.plist' + 'QTPlayerSession.xml' + 'QuickTime.qtp' to the file table.
The later 2 belong to the _User component (see the post above).
I added the 2 files QTPlayerSession.xml and QuickTime.qtp (MSI CAB File) to the _User component and the Destination path is [INSTALLDIR]\_User. Did a test run. Cool. I can see the 2 files in the C:\Program Files\QuickTime\_User after installation.
Something like this: DupFile1 UserSettingsRepair QTPlayerSession.xml QuickTime
what's the purpose of the DuplicateFile Table?
My Table in the Direct Editor Mode will look like this. Now, my question is the QuickTime DestFolder, I might have to populate my Directory Table right? I need the file to go into %UserProfile%\Local\Apple Computer\QuickTime.. how would my table looks like?
FileKey Component_ File_ DestName DestFolder
DupFile1 UserSettingsRepair QTPlayerSession.xml QuickTime
This is conditioned by the OS, because it needs to go to:
'\All Users\Application Data\Apple Computer\QuickTime' on pre Vista OS'.
And: '%USERPROFILE%\AppData\LocalLow' on Vista.
Do you have an example of the vb script?
We create a new 'UserSettingsInstalled' key at: SOFTWARE\Apple Computer, Inc.\QuickTime and set it to '1'.
Can you explain what's the purpose of this Regkey?
Posted by:
nheim
15 years ago
Hi AH,
cool you made some real progress.
However, you need to understand this things, otherwise you almost certain will never get to the target.
Please read this post from John McFadyen carefully:
http://itninja.com/question/distribution-message21
This is the guide for stuff like this.
And then, you can answer most of your questions by yourself.
Regards, Nick
cool you made some real progress.
However, you need to understand this things, otherwise you almost certain will never get to the target.
Please read this post from John McFadyen carefully:
http://itninja.com/question/distribution-message21
This is the guide for stuff like this.
And then, you can answer most of your questions by yourself.
Regards, Nick
Posted by:
aogilmor
15 years ago
thanks for clarifying that, first thing he says in that article is don't try it with vendor apps, just repackaging. I was a bit suspicious that AS should cause such problems as I've never seen them, but then again I haven't packaged for Vista. This is a good article which is in text format, a little easier to follow and good for active setup. I've found the advertisement and all this user profile stuff to be tricky and full of gotchas esp. with vendor apps. following Windows Installer standards for the installation won't do any good if apple decides that last thing it does is overwrite everything with its own brilliant settings - have encountered that before too. In such cases active setup is the more practical solution IMHO.
Posted by:
nheim
15 years ago
Hi Owen,
that's a good article too, in a field where not much samples are around.
But: It covers only the mere AS technique.
Most of the problems in this field arise from another corner:
If one has to copy files to the profile, the hole file base is being checked and has to be available.
One incorrect version info or a missing file hash can act as show stopper here.
And second, the problem with making a unique component key. See part II of John's instructions.
So in short: It doesn't matter if you use "self healing" or "Active Setup" to install stuff to each profile!
First hint: Always use registry keys as component keys!
And if files come into play, it is a good solution to install them to a central directory and distribute them from there to each profile with "DuplicateFiles".
When do we use "Self healing" and in which scenario is AS better?
For self healing to do its job we have to guarantee, that there are only advertised entry points. A standard shortcut circumvents the Windows Installers checking mechanisms and no self healing will occur.
This is exactly the case with QT. In our setup, we have several branches, where we install QT with shortcuts in programs menu, on the desktop and in quick launch. And another thing: If someone with adminstrator privileges alters the "program access and defaults" settings for quicktime, the advertised shortcut in programs menu is gone and substituted with a standard shortcut! Self healing gone!
This are the reasons, why we use AS for QT (and others).
Hope, this clarifies this topic a bit.
Regards, Nick
that's a good article too, in a field where not much samples are around.
But: It covers only the mere AS technique.
Most of the problems in this field arise from another corner:
If one has to copy files to the profile, the hole file base is being checked and has to be available.
One incorrect version info or a missing file hash can act as show stopper here.
And second, the problem with making a unique component key. See part II of John's instructions.
So in short: It doesn't matter if you use "self healing" or "Active Setup" to install stuff to each profile!
First hint: Always use registry keys as component keys!
And if files come into play, it is a good solution to install them to a central directory and distribute them from there to each profile with "DuplicateFiles".
When do we use "Self healing" and in which scenario is AS better?
For self healing to do its job we have to guarantee, that there are only advertised entry points. A standard shortcut circumvents the Windows Installers checking mechanisms and no self healing will occur.
This is exactly the case with QT. In our setup, we have several branches, where we install QT with shortcuts in programs menu, on the desktop and in quick launch. And another thing: If someone with adminstrator privileges alters the "program access and defaults" settings for quicktime, the advertised shortcut in programs menu is gone and substituted with a standard shortcut! Self healing gone!
This are the reasons, why we use AS for QT (and others).
Hope, this clarifies this topic a bit.
Regards, Nick
Posted by:
ahcash
15 years ago
Hi Owen,
The article in your previous post was good but not as great for Vista - there is where I ran into issue. I've got a SMS Installer EXE file which I run in the active setup and works fine in XP. However, Vista UAC is having issue with the EXE and prompt for UAC when execute. That's why I created this post to seek advice from more experience packager to see how they do this.
nheim, I will have a look athttp://itninja.com/question/distribution-message21 today and see if I have missed anything. I am heading towards the duplicate files and activesetup to repair 'msiexec /i {PRODUCT GUID} REINSTALL=UserSettings REINSTALLMODE=up'. All I have to do is to make sure all the directory tree works and that it go accordingly to the condition. I hope I can get it to work for xp and vista if I put the condition in.
One thing I want to get clarification. If I use the duplicate files and AS. I am assuming I don't have to put in a custom action to copy the files to local user profiles where the msiexec repair does the same thing? Am I right?
Thanks again for all the great advice.
Ray.
The article in your previous post was good but not as great for Vista - there is where I ran into issue. I've got a SMS Installer EXE file which I run in the active setup and works fine in XP. However, Vista UAC is having issue with the EXE and prompt for UAC when execute. That's why I created this post to seek advice from more experience packager to see how they do this.
nheim, I will have a look at
One thing I want to get clarification. If I use the duplicate files and AS. I am assuming I don't have to put in a custom action to copy the files to local user profiles where the msiexec repair does the same thing? Am I right?
Thanks again for all the great advice.
Ray.
Posted by:
ahcash
15 years ago
Thank you so much for all the assistance. I think I got it to work on both xp and vista.
I had the Active Setup done and works like a charm.
I also had the self healing part done and it fixes itself if it couldn't find the 'key' registry key in the component. Cool.
I will document all these and share if anyone needed.
Only one slight problem here. I try to do this to another package (autodesk design review 2009) who writes a whole bunch of registry keys to the HKCU, but this time the self-healing doesn't work. I had a separate component with a registery key as master and then update the HKCU with necessary registery keys if the master is missing. For a test, I delete the master key and I launch the application, and the self healing didn't initiate. I wonder why.
I might create another post for this and see if anyone can shed some lights.
I had the Active Setup done and works like a charm.
I also had the self healing part done and it fixes itself if it couldn't find the 'key' registry key in the component. Cool.
I will document all these and share if anyone needed.
Only one slight problem here. I try to do this to another package (autodesk design review 2009) who writes a whole bunch of registry keys to the HKCU, but this time the self-healing doesn't work. I had a separate component with a registery key as master and then update the HKCU with necessary registery keys if the master is missing. For a test, I delete the master key and I launch the application, and the self healing didn't initiate. I wonder why.
I might create another post for this and see if anyone can shed some lights.
Posted by:
nheim
15 years ago
Posted by:
turbokitty
15 years ago
Posted by:
ahcash
15 years ago
Turbokitty, I am not repackaging. I am adding to the original MSI to take care of activesetup and self healing..
nheim, I should have checked that.. yup, you are right. There are no entry point. The shortcut is not advertised. I have changed that to advertised and now the self healing works. Cheers.
I do have another issue. The application vendor suggested to create an admin installation point and patch it with service pack 1. The installation source have restricted access, so when a normal user logon, what will happen? Athought the healing is only modifying 3 HKCU registry key, will it need access to the installation source?
nheim, I should have checked that.. yup, you are right. There are no entry point. The shortcut is not advertised. I have changed that to advertised and now the self healing works. Cheers.
I do have another issue. The application vendor suggested to create an admin installation point and patch it with service pack 1. The installation source have restricted access, so when a normal user logon, what will happen? Athought the healing is only modifying 3 HKCU registry key, will it need access to the installation source?
Posted by:
aogilmor
15 years ago
ORIGINAL: ahcash
Turbokitty, I am not repackaging. I am adding to the original MSI to take care of activesetup and self healing..
nheim, I should have checked that.. yup, you are right. There are no entry point. The shortcut is not advertised. I have changed that to advertised and now the self healing works. Cheers.
I do have another issue. The application vendor suggested to create an admin installation point and patch it with service pack 1. The installation source have restricted access, so when a normal user logon, what will happen? Athought the healing is only modifying 3 HKCU registry key, will it need access to the installation source?
what vendor, apple? not sure how much credibility they have, having created this monstrosity of an installation. also, not sure what's going on where you are but you don't want your installation source to be restricted. Domain Users:rx is a common permission on such sources, for example in dfs. If SMS is doing it, no worries, the source is by definition accessible either on the machine or the dist. server.
btw, now there's 7.6 (of course to address vulnerabilities found in 7.5.5) so we get to start again. O joy....[:@]
Posted by:
anonymous_9363
15 years ago
Turbokitty, I am not repackaging. I am adding to the original MSI to take care of activesetup and self healing..I *really* hope you mean that you're building a transform for the MSI and that you're not actually "adding to the original MSI." It's an almost universally accepted convention that editing vendor-supplied MSIs (even those 'hidden' inside set-up executables) is A Bad Idea.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.