I have a package that is installed on my users workstations. I installed this package with a .mst file some time ago. The application is now setup on the back end to use Active Directory but in order for the clients to use this i have to make some changes to the .mst. I have made the changes to the .mst but how can i get my workstations to recache the new.mst and then what command would i need to run in order for this to work?

Many thanks

0 Comments   [ + ] Show Comments


Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.


Which deployment solution are you using?
Answered 08/12/2008 by: AngelD
Red Belt

Please log in to comment
Hello mate. I used SMS 2003 to push the application out when i first installed it. I am still using SMS at the moment and the application is still installed via SMS.

I have heard it is possible for the workstation to recache a new copy of the .mst file and then do a repair or reinstall but i have never had a need to do it in all the years i have been packaging \ using SMS

Thanks for any help you can give
Answered 08/12/2008 by: cjwallace
Orange Belt

Please log in to comment
You could use a vbscript something like the below.
Place the vbscript and the new updated transform in the same foler.
Execute the vbscript from SMS

On Error Resume Next
Dim ProductCode : ProductCode = "<ProductCode>" '// ex. {45FC26FB-19FD-4A96-BBB1-B1062E8648F5}
Dim MstFileName : MstFileName = "same_name_as_the_already_installed_transform.mst" '// ex. MyTransform.mst

Dim FSO : Set FSO = CreateObject("Scripting.FileSystemObject")
Dim WSHShell : Set WSHShell = CreateObject("WScript.Shell")
Dim ScriptPath : ScriptPath = StrReverse(Split(StrReverse(WScript.ScriptFullName),"\",2)(1))

'// Replace cached transform
Dim oFile : Set oFile = FSO.GetFile(WSHShell.ExpandEnvironmentStrings("%WinDir%\Installer\" & ProductCode & "\" & MstFileName))
oFile.Attributes = oFile.Attributes Xor 1
FSO.CopyFile ScriptPath & "\" & MstFileName, WSHShell.ExpandEnvironmentStrings("%WinDir%\Installer\" & ProductCode & "\"), True
oFile.Attributes = oFile.Attributes Or 1

'// Reinstall with replaced transform
Dim MSIERROR : MSIERROR = WSHShell.Run("msiexec.exe /fomusv " & ProductCode & " /qb!", 1, True)
Answered 08/12/2008 by: AngelD
Red Belt

Please log in to comment
why not just put a removal code in the updated .mst to remove the old install before installing this updated one? if it was a mandatory advertisement, you can either set a second mandatory assignment on the same advertisement, or just set up a second, new advertisement to get it out there.
Answered 10/13/2008 by: DevilsArcade
Senior Yellow Belt

Please log in to comment
Answer this question or Comment on this question for clarity