Posts

How to make an MSI with some files compressed in Cabinet file and other uncompressed outside the MSI

This is a very interesting feature in MSI and I would like to explore and explain this for your knowledge and benefit. Word Count generally known as Word Count Summary property. This is a mandatory Summary property in MSI and can be changed from your WSI. Please note that this property is not in Property table but is in Summary table. This property has a different meaning for MSI, Transforms and Patch. This property is a bit feild. There are 4 bits which can be set or unset as in 0 or 1. eg. 01 Here is the description for these bits: --------------------------------------------------------------------------------- Bit 0 0 Long file names. 1 Short file names. --------------------------------------------------------------------------------- Bit 1 0 Source is uncompressed. 2 Source is compressed. --------------------------------------------------------------------------------- Bit 2 0 Source is original media. 4 Source is a administrative image created by an administrative installation. -...

Packaging Mozilla Firefox

Most people dread while packaging Mozilla Firefox application and mostly try to make a silent installation of it. I was recently given task to package the latest Mozilla Firefox application. The same procedure can be used for version 10.0.1, 11, 12 and 13, 14 and 15 as well as I have tried and it works fine for all of these. I would like to share here how I could easily package it. Also by this method you will be able to do Proxy server settings. First step is to do a Setup capture of the source exe which can be downloaded from Mozilla’s website. Take care that you do not have to launch the application after the installation is completed. Second Step is to copy 3 files as stated below. You can add these files in your .wsi directly after the setup capture. These 3 files will solve all your issues. 1. Mozilla.cfg : This file needs to be added to "%programfiles%\Mozilla Firefox\" folder and should have this content: //Firefox Default Settings // set Firefox Default homepage pref...

My First Powershell script

Seems that Powershell is the way to go forward as it is well supported with Windows 7 and Microsoft. It is a powerful script. I think it will revolutionize the way we script today. I just wrote my first powershell script and thought it would be good to share with all. I am not going to give any tutorial for Powershell as there are a lot of them available. There are a few things which are worth noting in this script: 1) You can get the script directory from the below script in Get-ScriptDirectory function. 2) You can suppress the remote exe installation prompt by command: $env:SEE_MASK_NOZONECHECKS = 1 code Remove-Item env:\SEE_MASK_NOZONECHECKS 3) Installation of setup.exe with parameters can be seen in function InstallPackage 4) Permissions can be set in Powershell script using the GivePermissions function below. Here is the code: ------------------------------------------------------ function Get-ScriptDirectory { $Invocation = (Get-Variable MyInvocation -Scope 1).Value Split-Path $I...

App-V for Royalblue Fidessa application

I want to document the OSD file for Royalblue Fidessa Application here as other capture done alone does not make the virtualized package work. There were certain client customizations which were required and I had to do them in the OSD file. Here is the OSD file which I used: <?xml version="1.0" standalone="no"?> <SOFTPKG GUID="XXXX-XXX-XXXX-XXXX" NAME="Fidessa" VERSION="6.3.9.61056"> <IMPLEMENTATION> <CODEBASE HREF="FILE://%SFT_SOFTGRIDSERVER%\SCCMData\Royalblue_Fidessa_6.7.0b_VFS_v1.0\Royalblue_Fidessa_6.7.0b_VFS_v1.0.sft" GUID="8XXX5-8XX0-4XX7-AXX1-5171XXXXXA0" PARAMETERS="" FILENAME="%CSIDL_PROGRAM_FILES%\royalblue\fidessa\FtwLaunch.exe" SYSGUARDFILE="Royalblue_Fidessa_6.7.0b_VFS_v1.0\osguard.cp" SIZE="15076089"/> <VIRTUALENV TERMINATECHILDREN="FALSE"> <POLICIES> <LOCAL_INTERACTION_ALLOWED>TRUE</LOCAL_INTERACTION_ALLOWE...

Definition of Application Re-Packaging

I have been often asked about the proper definition of Application Re-Packaging. This is the best I could find: Application Re-packaging solution offers customized application configuration and repackaging of third-party or internally-developed applications to standardize the installation routine, reduce deployment errors, and minimize support costs.

Repackaging Microsoft Visual Studio 2010 Pro (Or any other version)

There are a lot of sites referring the installation of Microsoft Visual Studio 2010 in silent mode, but if you have a closer look, no one gives the complete information on the installation and Un-installation of the package. Here are the steps which I followed to install Visual Studio on 32 bit as well as 64 bit machines. I assure you that you can save atleast 1 to 2 man days by taking information from here before proceeding with your packaging. Copy the compete source to a directory and name this directory as per your standard naming convention. Copy these files to this main directory (Explanation and details also provided later) VS2010_Uninstall-RTM.ENU.exe Dfusrprf.xml User.vbs Arpsuppress64.reg Arpsuppress32.reg Arpsuppresswow64.reg ConfigurationFile.ini Setup.vbs Uninstall.vbs Uninstall.bat These files are the complete list of files which will do the trick to install and un-install the MS Visual Studio 2010 package. You can use WISE Script Editor to create an exe for most of the p...

Frequently asked Questions about COM and Windows installer (MSI) / Application Packaging

What does the common language runtime do? The common language runtime manages the execution of code and provides services such as cross-language integration, code access security, object lifetime management, and debugging and profiling support. Search for "Common Language Runtime" in the MSDN Library ( msdn.microsoft.com/library/ ). What's the difference between managed and unmanaged code? Code developed with a language compiler that targets the common language runtime is called managed code. All code based on Microsoft intermediate language (MSIL) executes as managed code. Managed code is self-describing; it contains metadata that describes every element managed by the common language runtime. The runtime uses the metadata to provide services. Code that runs outside the runtime and does not contain metadata is called unmanaged code. Examples of unmanaged code are COM components, ActiveX interfaces, and Win32 API functions. Unmanaged code executes in the common language r...