/build/static/layout/Breadcrumb_cap_w.png

QuickTime, LocalLow and DuplicateFiles

Hi, I've read the posts here about getting QuickTime working and I've managed to get it mostly working, but for some reason I can't get the DuplicateFile table to copy the QuickTime.qtp file into the LocalLow folder for Windows 7 installs.

I've got ActiveSetup running and I can see it's calling the correct components as the HKCU registrys (keys files) are being written. The QTPlayerSession.xml file is being copied to the correct directory. Both files are working with Windows XP using their own seperate components conditioned on VersionNT.

I'm using InstallShield and my Directory table has the following relevant lines
Directory : Directory_Parent : DefaulDir
USERPROFILE : TARGETDIR : .:USERPR~1|UserProfile
APPDATA : USERPROFILE : AppData
LOCALLOW : APPDATA : LocalLow
APPLE_COMPUTER2 : LOCALLOW : APPLEC~1|Apple Computer
QUICKTIME3 : APPLE_COMPUTER2 : QUICKT~1|QuickTime

My DuplicateFiles table has the following
FileKey : Component_ : File_ : DestName : DestFolder
QuickTime.qtpVer6 : QuickTime.qtpVer6 : quicktime.qtp : QuickTime.qtp : QUICKTIME3

I've noticed something strange which is that I 'sometimes' end up with a HKCU\Software\AppDataLow key being created, even though there is nothing like that in the RegistryTable. I've checked the MSI with Orca in case InstallShield was doing something weird, but the tables look correct in there as well.

I'm not sure if it's relevant, but I'm also using the RemoveFile table to clean up the appropriate files as the DuplicateFile table doesn't seem to overwrite files that already exist. I have tried it with and without this row in the table, so I don't think it's the cause of the problem and the order seems to be working fine for the other DuplicateFiles.

FileKey : Component_ : FileName : DirProperty : InstallMode
QuickTime.qtpVer6 : QuickTime.qtpVer6 : QuickTime.qtp : QUICKTIME3 : 1

Thanks for any help you can provide.

0 Comments   [ + ] Show comments

Answers (31)

Posted by: nheim 14 years ago
10th Degree Black Belt
2
Hi Brett,
i see several small problems in your package.
1. You have wrong or missing entries in the DIRECTORY, Atributes and KeyPath columns of the component table. Change it like this:

QuickTime.qtp {15490EA5-5B1B-41B2-B266-3A8C3EB52547} QUICKTIME1 4 VersionNT<600 Registry1
QTPlayerSession.xml {F08C0A01-AD31-4AF3-BB57-F06C7A8897C7} QUICKTIME1 4 VersionNT<600 Registry5
UserConfigFiles {EEFB3BA2-237E-40C1-AE7E-59509A5D3DA1} INSTALLDIR 4 Registry2
QuickTime.qtpVer6 {353F539B-4D18-4FA7-914F-E2E5024935F5} QUICKTIME1 4 VersionNT>=600 Registry6
QTPlayerSession.xmlVer6 {24D00738-6782-4A81-8039-D1A80988A48F} QUICKTIME1 4 VersionNT>=600 Registry9


The QUICKTIME3 directory entry should only be used in the Duplicate Files table

2. Read Pieters post above. I think, it might leads in the right direction.
To test this, move the "setUserProfileNT" action in the InstallExecuteSequence to 405 or so.

3. If this stuff runs, consider additional entries in the component and registry tables to create AS-settings on 64bit systems too.

Regards, Nick
Posted by: MSI_Pack12 14 years ago
Yellow Belt
0
I have added the below entries to my package (I did using Wise on Win7 platform) and works fine

Directory : Directory_Parent : DefaulDir
APPDATA1 : ProfilesFolder : AppData
LOCALLOW : APPDATA1 : LocalLow
APPLE_COMPUTER2 : LOCALLOW : APPLEC~1|Apple Computer
QUICKTIME3 : APPLE_COMPUTER2 : QUICKT~1|QuickTime

Create Folder entry QUICKTIME3

Add the qtp file below QUICKT~1|QuickTime folder

Use Active setup to copy the qtp file in user profile
StubPath used is msiexec /fu [Initially i used /fauvs] {ProductCode}

and added the below registry key
[HKEY_CURRENT_USER\Software\Apple Computer, Inc.\QuickTime\LocalUserPreferences]

"FolderPath"="[%USERPROFILE]\AppData\LocalLow\Apple Computer\QuickTime\"

Cheers
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
did you modify this line in the InstallExecuteSequence table:
Set_CurrentUserFolder NOT Installed AND %USERPROFILE 907

Change it to:
Set_CurrentUserFolder %USERPROFILE 907

Otherwise, this CA will not be called during a reinstall.

Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
Thanks for the responses.

MSI_Pack12, what you've done looks the same to me other than that you've added the file to the folder directly whereas I've used the DuplicateFile table to do the copy. I am using /fua currently but will give /fu a go later.

nheim, I don't seem to have that specific CA, but I would guess that setUserProfileNT would be the InstallShield equivalent?? It's set as setUserProfileNT : VersionNT : 960
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
this CA is part of the QT MSI. It's difficult to guess, where the problem lies.
Please generate a logfile of the installation and load it up to senduit.
With this occasion, you maybe can include your transform too?
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
The reason I don't have that CA is that I've actually created a seperate 'configuration' MSI for QuickTime. We were previously using an MST with Apple's QuickTime MSI, but we had complaints that the repair process was taking too long when the user logged on (we have lots of users that move between multiple computers). I looked at modifying the Feature structure so that the User parts were in a parent feature so the repair was quicker, but I also found information that if you force a repair using /f that Windows Installer will repair the full MSI anyway, rather than the process it uses with an Advertised shortcut.

Sorry, I tried Senduit, but either they're having difficulty or it's one of those many services us poor Aussies don't get access to. However, I've had a look through and I think I can see the cause of the issue, but I'm still not sure why it's doing what it is. A small extract from the log shows properties being set. As you can see, all looks correct as per my Directory table that I posted originally until it gets to setting QUICKTIME3. Although my Directory table says that APPLE_COMPUTER2 (which is set to C:\Users\bgrive01admin\AppData\LocalLow\Apple Computer\) is the Parent directory of QUICKTIME3, QUICKTIME3 gets set to C:\Users\Default\AppData\LocalLow\Apple Computer\QuickTime\.

Any thoughts as to what might be causing this? Thanks again for your help.

Property(S): ALLUSERSPROFILE = C:\ProgramData\
Property(S): USERPROFILE = C:\Users\bgrive01admin\
Property(S): APPDATA = C:\Users\bgrive01admin\AppData\
Property(S): AppDataFolder = C:\Users\bgrive01admin\AppData\Roaming\
Property(S): APPLE_COMPUTER = C:\Users\bgrive01admin\AppData\Roaming\Apple Computer\
Property(S): LocalAppDataFolder = C:\Users\bgrive01admin\AppData\Local\
Property(S): APPLE_COMPUTER1 = C:\Users\bgrive01admin\AppData\Local\Apple Computer\
Property(S): LOCALLOW = C:\Users\bgrive01admin\AppData\LocalLow\
Property(S): APPLE_COMPUTER2 = C:\Users\bgrive01admin\AppData\LocalLow\Apple Computer\
Property(S): ColorBits = 32
Property(S): TextInternalLeading = 3
Property(S): TextHeight = 16
Property(S): BorderSide = 1
Property(S): BorderTop = 1
Property(S): ISYourDataBaseDir = C:\Program Files\QuickTime\Database\
Property(S): DATABASEDIR = C:\Program Files\QuickTime\Database\
Property(S): CaptionHeight = 22
Property(S): ScreenY = 768
Property(S): ScreenX = 1024
Property(S): SystemLanguageID = 3081
Property(S): QUICKTIME = C:\Program Files\QuickTime\
Property(S): INSTALLDIR = C:\Program Files\QuickTime\
Property(S): ComputerName = VM-BGRIVE01-W71
Property(S): UserLanguageID = 3081
Property(S): ProgramFilesFolder = C:\Program Files\
Property(S): UserSID = S-1-5-21-2127881504-3153758514-1054354859-194091
Property(S): LogonUser = BGrive01admin
Property(S): VirtualMemory = 2414
Property(S): PhysicalMemory = 1536
Property(S): Intel = 6
Property(S): ShellAdvtSupport = 1
Property(S): OLEAdvtSupport = 1
Property(S): GPTSupport = 1
Property(S): QUICKTIME1 = C:\Users\bgrive01admin\AppData\Roaming\Apple Computer\QuickTime\
Property(S): QUICKTIME2 = C:\Users\bgrive01admin\AppData\Local\Apple Computer\QuickTime\
Property(S): QUICKTIME3 = C:\Users\Default\AppData\LocalLow\Apple Computer\QuickTime\
Posted by: pjgeutjens 14 years ago
Red Belt
0
C:\Users\Default\AppData\LocalLow\Apple Computer\QuickTime\

are you distributing using some sort of distribution system? Cause this looks alot like the AppData folder the LocalSystem account might use. Is it possible the path gets resolved wrong because of the account that's used to run the installation?

PJ
Posted by: oreillyr 12 years ago
Fifth Degree Brown Belt
0

Silent install for QuickTime 7.71.80.42 for XP

Step 1. Download and Run vendor executable - QuickTimeInstaller.exe

Step 2. Check under %TEMP% there should be 4 msi’s – You can delete AppleSoftwareUpdate.msi as it is not required.

 

Step 3. I created a .mst for the AppleApplicationSupport.msi and applied our standards. This was installed on aWindows XP SP3 VM and snapped.

Step 4. Installed Quicktime.msi. 

Step 5. What we need to do now is apply our preferences.  These will manifest themselves in quicktime.qtp file which can be located at [LocalAppDataFolder]Apple Computer\Quicktime.  Copy this file to your mst  when you have applied you preferences to QuickTime Player and PictureViewer.  These should include disabling updates and removing System Tray Icon. 

Step 6.  I created a separate feature called CG_QTConfig under Setup Design and created a CG_Quicktime.qtp component with a destination of [LocalAppDataFolder]Apple Computer\Quicktime.  Here i imported the quicktime.qtp file.  Also added HKCU\Software\Apple Computer, Inc.\Quicktime\LocalUserPreferences Name=Auto-Update Date=Disabled.  This registry key was set as keypath for the component.

Step 7. Active Setup key added in a new component under newly created feature to ensure replication to all users.

Step 8: The following step copied from - http://www.bdts.com.au/tips-and-resources/48-msi-packaging/74-deploy-quicktime-765.html

Change QT_TRAY_ICON from #2 to #0 - this will disable the tray icon (the blue Q by the clock)Not True but left it so  .

Change the AdminProperties from:

DESKTOP_SHORTCUTS; PROGRAMMENUNAME; QT_TRAY_ICON; QTJAVADIR; QTPROGRAMMENUFOLDERNAME; SCHEDULE_ASUW

to

PROGRAMMENUNAME;QTJAVADIR;QTPROGRAMMENUFOLDERNAME

This will disable the desktop shortcuts, the tray icon, and the automatic updates.

Change SCHEDULE_ASUW from 1 to 0

Change the SecureCustomProperties from:

APPLEAPPLICATIONSUPPORTISINSTALLED; APPLEAPPLICATIONSUPPORTWISINSTALLED; ASUWISINSTALLED; BNEWERPRODUCTISINSTALLED; DESKTOP_SHORTCUTS; EXISTINGINSTALLDIR; EXISTINGPROGRAMMENUNAME; EXISTINGQTCOMPONENTS; EXISTINGQTEXTENSIONS; EXISTINGQTJAVADIR; EXISTINGQTSYSTEM; INSTALLDIR; ISACTIONPROP1; ITUNES70_801_INSTALLED; PROGRAMMENUNAME; QT7PP1INSTALLED; QTINFO.BISQTPRO; QTINFO.BITUNESHELPERRUNNING; QTINFO.BNEWERQTISINSTALLED; QTINFO.BOLDERQTISINSTALLED; QTINFO.BQTISINSTALLED; QTINFO.BSETDONOTLOADFROMBUILDRESULTS; QTINFO.BUPGRADEWOULDINVALIDATEPROKEY; QTINFO.BUYQTPROURL; QTINFO.CURRENTQTINSTALLPATH; QTINFO.CURRENTQTMACVERSNUM_BASE10; QTINFO.CURRENTQTPROCESSCOUNT; QTINFO.CURRENTQTVERSNUM; QTINFO.CURRENTQTVERSNUM_BASE10; QTINFO.CURRENTQTVERSSTR; QTINFO.EXISTINGQTVERSNUM; QTINFO.EXISTINGQTVERSSTR; QTINFO.QTPROREGNAME; QTINFO.QTPROREGNUMBER; QTJAVADIR; QTPLUGINOCXFOLDER; QTPROGRAMMENUFOLDERNAME; REGSRCH_DESKTOP_SHORTCUTS; REGSRCH_ITUNESHELPER_PATH; REGSRCH_QT_TRAY_ICON; SCHEDULE_ASUW; UPGRADEFOUND; UPGRADING750; UPGRADING755

to

APPLEAPPLICATIONSUPPORTISINSTALLED; APPLEAPPLICATIONSUPPORTWISINSTALLED; BNEWERPRODUCTISINSTALLED; DESKTOP_SHORTCUTS; EXISTINGINSTALLDIR; EXISTINGPROGRAMMENUNAME; EXISTINGQTCOMPONENTS; EXISTINGQTEXTENSIONS; EXISTINGQTJAVADIR; EXISTINGQTSYSTEM; INSTALLDIR; ISACTIONPROP1; ITUNES70_801_INSTALLED; PROGRAMMENUNAME; QT7PP1INSTALLED; QTINFO.BISQTPRO; QTINFO.BITUNESHELPERRUNNING; QTINFO.BNEWERQTISINSTALLED; QTINFO.BOLDERQTISINSTALLED; QTINFO.BQTISINSTALLED; QTINFO.BSETDONOTLOADFROMBUILDRESULTS; QTINFO.BUPGRADEWOULDINVALIDATEPROKEY; QTINFO.BUYQTPROURL; QTINFO.CURRENTQTINSTALLPATH; QTINFO.CURRENTQTMACVERSNUM_BASE10; QTINFO.CURRENTQTPROCESSCOUNT; QTINFO.CURRENTQTVERSNUM; QTINFO.CURRENTQTVERSNUM_BASE10; QTINFO.CURRENTQTVERSSTR; QTINFO.EXISTINGQTVERSNUM; QTINFO.EXISTINGQTVERSSTR; QTINFO.QTPROREGNAME; QTINFO.QTPROREGNUMBER; QTJAVADIR; QTPLUGINOCXFOLDER; QTPROGRAMMENUFOLDERNAME; REGSRCH_DESKTOP_SHORTCUTS; REGSRCH_ITUNESHELPER_PATH; UPGRADEFOUND; UPGRADING750; UPGRADING755

Note: the lines above should not have spaces in them, I inserted a space after each ; so it wrapped nicely for the web. You can easily remove the spaces by copying the text into notepad, and replace all "; " with ";"

Optional: I like to change the ProductName field to "QuickTime 7.71.80.42" so users can see which version is being installed / removed.

Make the following change to the CheckBox table:

Change ChkOptInstASU from 1 to 0 - this settings disabled the apple software update.

Make the following change to the Shortcut table:

Drop the "QuickTimeUninstaller" row - this will prevent the uninstaller shortcut from being created.

Drop the "QuickTimePlayer_Desktop" row - this will prevent the desktop shortcut being created.

Make the following change to the LaunchCondition table:

Drop the "NOT BNEWERPRODUCTISINSTALLED" row - I found that if you don't do this the install will fail, indicating that a newer version is installed (even if there's not!)

From the Orca menu, click View -> Summary Information

Delete all the numbers except for 1033 from the languages box (1033 is English). Click OK.

Step 9. In Property Table change the following – REGSRCH_DESKTOP_SHORTCUTS to 0, SCHEDULE_ASUW to 0, INSTALL_ASUW to 0, ISSETUPDRIVEN to 1.

Step 10. Added the following HKCU keys to uphold consistency of .gif, .jpg, and, .png files

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png]"Progid"="pngfile"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\OpenWithProgids] "QuickTime.png"=hex: "pngfile"=hex:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\OpenWithList] "b"="shimgvw.dll" "MRUList"="ba" "a"="mspaint.exe"

 

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.gif] "Progid"="giffile"

 

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.gif\OpenWithProgids] "QuickTime.gif"=hex: "giffile"=hex:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.gif\OpenWithList] "b"="shimgvw.dll" "MRUList"="ba" "a"="mspaint.exe"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpg] "Progid"="jpegfile"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpg\OpenWithProgids] "jpegfile"=hex: "QuickTime.jpg"=hex:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpg\OpenWithList] "b"="shimgvw.dll" "a"="mspaint.exe" "MRUList"="ba"

Step 11. In installed what i had done up to now to see if the System Tray Icon had removed but alas it had not. Some frustrating ‘googleing’ suggested to me  to do the following: Create a new component under newly created feature, obtain from your installation up to now and add file com.apple.Quicktime.plist to C:\Documents and Settings\All Users\Aplication Data\Apple Computer\Quicktime.

System Tray Icon still exists.

 

Step 12. In the QuickTimeInternet feature there is a component called QTPlugin.ocx.  In here locate the regkey [HKLM\SOFTWARE\Apple Computer, Inc.\QuickTime\ActiveX] QTTaskRunFlags=[QT_TRAY_ICON]  .  This needs to be changed to a DWORD regkey [HKLM\SOFTWARE\Apple Computer, Inc.\QuickTime\ActiveX] QTTaskRunFlags=2 

This last step has removed the System Tray Icon.

 

Posted by: brettski 14 years ago
Purple Belt
0
We will be using SCCM to distribute the application, so this was installed using the SYSTEM account to represent an SCCM install. The repair however was run using my user account as would occur with Active Setup. As you can see from the log snippet, most variables are resolving correctly, it only seems to be the QUICKTIME3 property that's having this issue.
Posted by: pjgeutjens 14 years ago
Red Belt
0
it only seems to be the QUICKTIME3 property that's having this issue

that is strange. Are the parent directories the same for all 3 QUICKTIME properties, and are there Custom actions of any kind used to resolve paths at run-time?
Posted by: anonymous_9363 14 years ago
Red Belt
0
Trace through the log to see where QUICKTIME3's value changes. That's your starting point for any investigation.
Posted by: brettski 14 years ago
Purple Belt
0
It's a very basic MSI package with no Custom Actions at all. I've just done another sanity check and the Directory table lists QUICKTIME3 as having a Directory_Parent of APPLE_COMPUTER2. We can see in the log (I used /log, is there any other switches I should have used instead) that APPLE_COMPUTER2 is being set as C:\Users\bgrive01admin\AppData\LocalLow\Apple Computer\ and is not then reset anywhere further along in the process. Shortly there after QUICKTIME3 is then set as C:\Users\Default\AppData\LocalLow\Apple Computer\QuickTime\ instead of to my account. It is only set the once in the log file.

The other QUICKTIME properties are set using the builtin variables LocalAppDataFolder and AppDataFolder and these are working as expected.
Posted by: Rheuvel 14 years ago
Brown Belt
0
ORIGINAL: brettski

(I used /log, is there any other switches I should have used instead)


/l*v
Posted by: brettski 14 years ago
Purple Belt
0
OK, using /l*v, I have a lot more detail in the log including references to QUICKTIME3 being modified, but it's modified from the incorrect value to the same incorrect value.

MSI (s) (00:A8) [10:37:11:633]: PROPERTY CHANGE: Modifying QUICKTIME3 property. Its current value is 'C:\Users\Default\AppData\LocalLow\Apple Computer\QuickTime'. Its new value: 'C:\Users\Default\AppData\LocalLow\Apple Computer\QuickTime\'.

Same goes for APPLE_COMPUTER2, it's always set correctly.
MSI (s) (00:A8) [10:37:11:633]: PROPERTY CHANGE: Adding APPLE_COMPUTER2 property. Its value is 'C:\Users\bgrive01admin\AppData\LocalLow\Apple Computer\'.
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
once again: Please upload your logfile to a free ftp-service (btw: used senduit yesterday without any problems, but it has its 100MB max filesize).
We need to get a look at th HOLE logfile. Otherwise, its looking for a needle in a haystock...
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
Sorry, tried various browsers, computers and networks, senduit just isn't working for me. Hopefully you can get the file from this address - http://drop.io/1vyc0so. Thanks for your continued help.
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
had a look at the log file.
Sorry to write that: There must be an error somewhere in the directory tree. Maybe a property, which is used 2 times.
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
The following is an Orca export of the Directory Table .. it all looks fine to me.

Directory Directory_Parent DefaultDir
s72 S72 l255
Directory Directory
ALLUSERSPROFILE TARGETDIR .:ALLUSE~1|All Users
APPDATA USERPROFILE AppData
APPLE_COMPUTER AppDataFolder APPLEC~1|Apple Computer
APPLE_COMPUTER1 LocalAppDataFolder APPLEC~1|Apple Computer
APPLE_COMPUTER2 LOCALLOW APPLEC~1|Apple Computer
AppDataFolder TARGETDIR .:APPLIC~1|Application Data
DATABASEDIR ISYourDataBaseDir .
INSTALLDIR QUICKTIME .
ISYourDataBaseDir INSTALLDIR Database
LOCALLOW APPDATA LocalLow
LocalAppDataFolder TARGETDIR .:LocalA~1|LocalAppData
ProgramFilesFolder TARGETDIR .:PROGRA~1|program files
QUICKTIME ProgramFilesFolder QUICKT~1|QuickTime
QUICKTIME1 APPLE_COMPUTER QUICKT~1|QuickTime
QUICKTIME2 APPLE_COMPUTER1 QUICKT~1|QuickTime
QUICKTIME3 APPLE_COMPUTER2 QUICKT~1|QuickTime
SystemFolder TARGETDIR .:System32
TARGETDIR SourceDir
USERPROFILE TARGETDIR .:USERPR~1|UserProfile
Posted by: anonymous_9363 14 years ago
Red Belt
0
Was that with your transform applied?
Posted by: brettski 14 years ago
Purple Belt
0
I've created a basic MSI to be installed in conjunction with the QuickTime installer so there isn't any transform to be applied.
Posted by: brettski 14 years ago
Purple Belt
0
I'm not sure if this is of any help. I decided to clear out all the references to that directory path and recreate. It looks the same, but now when I run the repair USERPROFILE is being set as C:\Users\Default\ and hence all the subfolders are also set as the Default user. I'm installing the MSI with the command line: msiexec /i "C:\Users\bgrive01admin\Desktop\Apple QuickTime Config 1.0 test.msi" ALLUSERS=1 /qb

The repair command line is: msiexec /fua {BD9DD2F8-202B-46B6-A115-82768FE485DE} /log quicktime.log /qb

I've tested using ALLUSERS=2 and ALLUSERS=0 without any difference.
Posted by: brettski 14 years ago
Purple Belt
0
More testing results. I've created a whole new MSI with just the basic structure of the LocalLow directories, a single file and a HKCU key. If I install it as myself, the file is installed to the correct location as expected. If I install it as SYSTEM and then run a repair using msiexec /fua the the USERPROFILE property is set to C:\Users\Default and the file is not installed.

If I install the MSI as a different Admin account (bgrive01test) and then run the repair in another account (bgrive01admin), the USERPROFILE property is set to C:\Users\bgrive01test. I can see that the repair is working as the file is restored after being deleted, it's just installing to the wrong profile.

Hopefully someone can tell me why the USERPROFILE property is not correctly set to the user's profile and appears to instead remembers the profile of the account that installed the MSI. This is different behaviour to properties such as AppDataFolder.
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
this is leading to nowhere. Please upload your MSI to an FTP-service.
Then, i will get a look on it.
It must be something around the CA, which sets the USERSPROFILE property.
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
Thanks Nick, Please find both my proper and new test MSIs at http://drop.io/c2q3dt0.
Posted by: brettski 14 years ago
Purple Belt
0
Hi Nick,

Did you find anything wrong in my MSIs? Did you have any thoughts why the USERSPROFILE property is not being re-evaluated during a repair?

Thanks
Brett
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi MSI_Pack,
don't you think 3 times is enough?
This registry key, you mention is only necessary, if you have your quicktime.qtp file in a non-default location.
But this isn't the case here! So it is just plain useless!
Brett's problem is about a behaviour in a new MSI, he has built for this purpose.
Sorry for being rude, but i can't stand this anymore...
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
Thanks so much, it's working now ... I think you've done this packaging thing once or twice yourself haven't you Nick :) . The only changes I made were to the Component table where I set the QTPlayerSession.xmlVer6 Attributes to 4 and added the missing KeyPath values for QTPlayerSession.xmlVer6 and QuickTime.qtpVer6.

I'm not sure if you had something in mind that I should be adding for 64 bit OSs, but all the configurations seem to be working on x64 without any modifications.

Thanks again to Nick and all others that helped out.
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
glad to see it works now.
About the 64bit thing:
AS does not work out of the box on a 64bit system, because all registry settings from a 32bit app go to the x86 branch.
Therefore, you need an extra 64bit component, which creates the AS-registry entries on a 64 bit system.
That would require the following extra entries in your test app:
in the component table:
ActiveSetup64 {GUID-here} INSTALLDIR 260 VersionNT64 Reg64_3

in the feature components table:
UserConfig ActiveSetup64
in the Registry table:
Reg64_1 2 SOFTWARE\Microsoft\Active Setup\Installed Components\Apple QuickTime Config Apple QuickTime Config 1.0 ActiveSetup64
Reg64_2 2 SOFTWARE\Microsoft\Active Setup\Installed Components\Apple QuickTime Config StubPath msiexec /fua {FDD9CA58-DF6B-40BA-806E-2E4B3072DA62} /qn ActiveSetup64
Reg64_3 2 SOFTWARE\Microsoft\Active Setup\Installed Components\Apple QuickTime Config Version 1,1 ActiveSetup64

That should do the trick.
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
Hmmm, I thought when I was looking into this for something else that you couldn't have 32 and 64 bit components mixed into the same MSI. I must have misunderstood something and will have to go back and revisit.

As this particular install only has files that install to the %programfiles(x86)% area and the user area which is 32 / 64 bit independent, it looks like I can get away without having the 64 bit component. It just puts the AS in HKLM\SOFTWARE\Wow6432Node\Microsoft\Active Setup rather than HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup but it seems to work fine.

Is there any reason that I should mess with something that is now not broken?
Posted by: nheim 14 years ago
10th Degree Black Belt
0
Hi Brett,
good question, but you can test it yourself.
The registry entries are nicely installed into the WOW branch, but will just sit there an do nothing.
To get AS going on 64bit systems, the AS-regkeys have to go to HKLM/Software/Microsoft/Active Setup.
And this needs a 64bit component, like i suggested in my previous post.
Quicktime is a pretty good example here, because it is 32bit only, but iTunes, which needs it as a prerequisite, has 32 and 64bit versions.
We do this for all 32bit apps which have AS.
Hope, this clears that a bit.
Regards, Nick
Posted by: brettski 14 years ago
Purple Belt
0
Just to clarify, you're saying that AS entries located in the WOW branch won't run when the user logs on?? Are you refering to x64 OSs in general or just Windows 7?

I've only tested on Win7 x64 myself, but I'm not seeing the behaviour your describing. On my system the AS is installed to the WOW branch as mentioned previously, but the OS does seem to run this on logon as expected. I can see the HKCU entries which are again located in the WOW branch, but the MSI has most definately repaired itself. I can see that the HKCU AS keys, the key registry entries used for the file components and the files themselves have all been recreated (deleted prior to log off / on).

Brett
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ