Saturday, 6 March 2010

Source Resiliency

Applications that rely on network resources for installation-on-demand are susceptible to source failures if the source location should change for any reason or become damaged. The Windows Installer provides source resiliency for features that are installed on-demand by using a source list. The source list contains the locations searched by the installer for installation packages. The entries in this list can be network locations, Uniform Resource Locators (URLs), or compact discs. If one of these sources fails, the installer can quickly and seamlessly try the next.

The application developer does not need to incorporate any special information into the installer package to ensure source resiliency. Once the application is installed, the installer has the behavior of adding the last successfully used source as an entry in the source list. By default, this source is the location from which the installer package is initially installed, and is the same as the SourceDir property.

A system administrator can change the source list by applying a transform or by changing the SOURCELIST property from the command line or in the Property table.

The installer begins searching for a source by checking the most recently used source location in the source list. If this search fails, the installer searches the list of network sources, then media sources, and finally URL sources. System administrators can change this search order using the SearchOrder system policy. If these searches fail, the installer may present a Browse Dialog so that the user can search for the source manually. The browse dialog box cannot be displayed if the user interface level is set to None. For details, see User Interface Levels.

Commonly, the installer should only display a browse dialog box if the current user is an administrator or if the installation does not require elevated privileges. An administrator can control the display of the browse dialog box to users with the DisableBrowse and AllowLockDownBrowse policies. An administrator also controls whether users can install applications from sources located on media by using the DisableMedia and AllowLockDownMedia policies. The use of these policies depends on the Windows Installer version.

Process for Creating InstalShield Response file(iss)

Refer to attachment containing steps on how to create Response Files.

Process for Creating InstalShield Response file(iss)

MSI Tables

Refer the attachment for description on MSI Tables

Application Packaging - Interview Questions - 2

  1. What is the use of Active Setup?  Is it part of MSI or Operating System?

  2. What is the custom action which checks for the free space on the disk during MSI installation?

  3. What is Windows File Protection  ? Where are Windows Protected files stored on the machine ?

  4. What is file versionining ?  If a macine has DLL of version 2.0 and your application has same DLL with version 3.0, what happens to the file during installation ?
A)     Replaced        B) Nothing happens      c) OverWritten   D) both files will be present after Installlation

  1. What is the best way to upgrade the Window Protected Files ?

  2. How do you install 2 MSI’s.  After installation of 1st MSI the machine has to reboot and upon start of the machine 2nd MSI installation has to be trigerred. Once installation of 2nd MSI is completed the User has to notified with a Message that 2 MSIs Installation has been completed. How do you perform the Task? ( If 1st MSI installation has failed then 2nd MSI installation shouldn’t happen)

  3. Can you create File System Services using MSI

  4. Have you ever  created a Driver Package ? How do you manually register the Drivers ? What do you check for successful driver installation ?

  5. What are Hosts, Lmhosts files ? Do you include them in the package?  How do you update these files if required by the application ?

  6. What are .ORA files ? What does they contain ?

  7. How do you extract Binary Information from MSI?

  8. What is the use of Merge Module? Have you ever created a Merge Module ? In what scenario merge modules needs to be created ? What the points to be kept in mind during Merge Module creation ?

  9. How do you create a Response File?  Where the response file will be created ?

  10. How do you apply permissions ? What method do you follow ? Do you have idea on using CACLS, SUBINACLS, Security Templates(SecEdit), RegDacls…… etc

Few Packaging Interview Questions

  1. What  are public properties
  2. What does SecureCustomProperties mean?
  3. What is component Isolation? When do you perform Component Isolation? What is the Advantage? What happens when you Isolate a component?
  4. What does AppSearch Table contain? What is the use of it? How is it related to Launch Conditions ?
  5. What is SelfReg table? Is it recommended to use SelfReg Entries ? What is the disadvantage of SelfReg Entries?
  6. What is the difference between the registration of DLL/OCX  and an EXE ?
  7. How do you apply permissions using MSI Tables? What is the purpose of LockPermissions Table? What is the disadvantange of LockPermissions Table?
  8. How do you install 2 MSIs with same product code on a same machine ?
  9. What is Minor Upgrade , Major Upgrade ? When do you perform major upgrade ? What are the sequence of custom actions required for Upgrade process and what are the Ideal locations of those custom actions ?
  10. What are the different sequences present in MSI
  11. What is the difference between Execute Immediate and Execute Deffered?
  12. Why do you require custom actions ?
  13. Can a Component have sub-components ?
  14. Can a feature exist under a component ?
  15. What is the use of Install Level property
  16. What does ALLUSERS  = 1,2, NULL mean?
  17. What are the different GUIDs present in MSI ?
  18. What happens if you use the command – msiexec /i [ProductCode] /qb               ( does the application gets installed on the machine ?
  19. What is Advertizing?  What is the advantage of Advertizing ? What are the MSI tables which support Advertizing?
  20. What the disadvantages of MSI
  21. What are the advantages of normal “setup.exe”
  22. What are the disadvantages of “setup.exe”
  23. How do add files to MSI or MST using Orca ?
  24. If you want to add a file using Orca, what are the MSI Tables you need to alter?
  25. What are ICE Errors ? If you have ICE does it affect the MSI Installation or application functionality ?
  26. How do you resolve ICE64 Error ?

Thursday, 4 March 2010

Application Packaging Training

Anyone Interested in Application Packaging Training which will be handled Online can reach me at

MSI Technology into RealTime

Application Packaging came into existence with introduction of MSI technology with Microsoft Office 2000 Application.

Using Windows Installer service which takes of files/folders/registries during Instllation and Uninstallation of an application.

MSI technology has became more popular as it has more advantages and reduces the TCO of an Organization.

Application Virtualization

Application Virtualization is new and hi-end domain where Applications will be available to Users without being physically installed on User Desktops.

There are couple of Products from different Vendors which has Virtualization in realtime.

1. Microsoft App-V
2. Citrix XenApp
3. VMWare ThinApp
4. Cameyo

Application Packaging

This is a place where you can know about Application Packaging. Its a hot and demanding domain in the current market.

Application Packaging is basically customizing applications according to Microsoft Best Practices/Requirements and making ready for deployment in Organizations.

Deployment of applications to client desktops will take place normally using a Deployment Tool ( Eg: SCCM,  BMC Marimba, HP OVCM, ManageSoft etc.., )