Interview Questions & Answers -Part 1


Glad that my friends are sending their Articles to publish in Q & A Zone.Here by my friends are sharing their valuable knowledge with you.

The below questions and answers are prepared by my mate Sreejith Bharathan.Very good Q&A to prepare for interviews 🙂

Many thanks Mate . 🙂

1.What are the ADDLOCAL and ADDSOURCE properties?

ADDLOCAL:  It will install the components (file resources) associated with the feature locally on the client the package is installed on.

ADDSOURCE:  The files will be “installed” on the source meaning where the MSI is originally located. There will actually not be any installation of files into the folder but they must exists as “external uncompressed”.

 2.Explain the difference between Property and PROPERTY?

Property: Private Properties in MSI (Properties that cannot be changed during runtime).

PROPERTY: Public Properties (Properties that can be changed during runtime).

3.Use of INSTALLLEVEL Property?

The INSTALLLEVEL property is the initial level at which features are selected “ON” for installation by default. A feature is installed only if the value in the Level field of the Feature table is less than or equal to the current INSTALLLEVEL value. The installation level for any installation is specified by the INSTALLLEVEL property, and can be an integral from 1 to 32,767.

 4.What is the difference between Repair and self healing?

Self Heal and Repair are two different concepts in Windows Installer which people many times consider to be the same thing however there is difference in these two.

Self Heal is triggered by advertised shortcuts, or other advertising information in the package which eventually Repairs the application.

When the application is launched by advertised shortcut, it checks for all the key paths of the Current Feature, if any of the key paths is missing it will launch Repair.

Note that if there are multiple features then it will not check the missing key paths of the other features, but only the feature of which the advertised shortcut is launched.

Repair of an MSI can be triggered by

  • Repair button in Add/Remove programs
  • Giving the command line msiexec /f{other option} {MSI name}
  • Self Heal by advertised shortcut or other advertising information
  • Active setup

Once the repair of the package is triggered, even with Self Heal, then the whole of the MSI is reinstalled. Then it does not see that only the feature which triggered the self heal should be repaired, but the whole MSI, by which I mean, all its features are reinstalled.

 5.Custom Action conditions:

Requirement Condition
Action runs only during install NOT Installed AND NOT PATCH
Action only runs during removal of MSI REMOVE~=”ALL”
Action runs during install and reinstall only NOT REMOVE
Action runs during install and remove There must be no condition

 6.Product code, Package Code and Upgrade code?

Product Code:

This code should only be changed if significant changes are made to the application – changes that warrant calling it a different product.

You change the product code when:

  • The name of the .MSI file has been changed.
  • The component code of an existing component has changed.
  • A component has been removed from an existing feature.
  • An existing feature has been made into a child of an existing feature.
  • An existing child feature has been removed from its parent feature.

Note that adding a new feature (top level or child), consisting entirely of new components, does not require changing the product code.

Package Code:

As the name implies, the package code identifies a specific MSI file. I want to emphasize: not a product, but an MSI file. No two MSI files that are not identical copies of each other should ever have the same package code, even if they install (different versions of) the same product. To change the package code, go to the Summary Information Stream panel, put the cursor in the Package Code field, and press the “Generate GUID” button in the lower part of the screen.

Upgrade Code:

All applications in a product family shared the same upgrade code. Such a group of related applications can consist of different versions and different language versions of the same product. You should never change this code, unless you want to prevent major upgrades.

When to change the package, product and upgrade codes, and the product version.

Update Type    Package Code      Product Version      Product Code       Upgrade Code
Small update        change               don’t change           don’t change        don’t change
Minor update       change                   change                 don’t change        don’t change
Major upgrade     change                   change                    change                don’t change

 7.Difference between Run, Run Once, Active Setup

Active Setup:

It is used when your application requires installation of components such as files or registry keys on a per-user basis, but application has no advertised entry points or other triggers to initiate the installation process.


The Run key is processed after every logon, either by the Explorer shell, if it is present, or by First Boot Agent (FBA), if a custom shell, Command shell, or Task Manager Shell is used. If FBA processes this key, it does so after every logon, not during first boot as it normally would. Typically, this flag is used to load Systray applications, launch services in executables, hide autostart applications, or hide background processes

Run Once:

The RunOnce key is processed only once, by FBA, after Plug and Play device enumeration and DLL registration processing have completed. The values of this registry key are deleted from the registry after it is processed, so that it will not run again. Typically, this flag is used when a reboot is required, such as for a DLL or OCX registration, or for cleaning up a setup or an uninstall.

[To be continued..]


44 Responses to “Interview Questions & Answers -Part 1”

  1. 1 Raj October 7, 2009 at 2:16 pm

    Let me Add a point regarding Active setup and Run.
    Which one will execute first.Run or Active setup?
    The answer is “Active setup”

    • 2 Abhishek kumar December 9, 2010 at 2:57 pm

      Can you please tell the reason why active setup will run first then run key after reboot?

      • 3 Balsaraj December 11, 2010 at 2:30 am

        Activesetup is using to configure the userprofile settings if no entry points exists in the package and this will be running only once for a specific user.
        Where as RUN key will execute everytime when user login the machine.

        These settings are configured with different sequence , in order to speedup to get access to windows desktop\user level settings.
        Anyway letz have a more thought about this 🙂

  2. 4 Mahes June 27, 2010 at 5:18 pm


    i want to know about app.packaging related scenarios.

    can you please send me

    • 5 Balsaraj January 8, 2011 at 2:04 am

      Application repackaging come to picture in iT Infrastructure management.If your organisation requires many number of applications to be managed on desktop\servers , for the centralized management of applications with more effective application repackaging technology comes up.
      This technology helps to reduce the total cost of the organization to manage the Infrastructure.

  3. 9 chiranjeevi February 19, 2011 at 5:45 am

    what is drawbacks of msi

  4. 12 chiranjeevi February 19, 2011 at 5:47 am

    wt is the use of custom action?

    • 13 Balsaraj February 22, 2011 at 4:37 am

      Custom actions are generally using for to execute the tasks which can not be done with MSI configuration such as setting permission with cacls utility,installing a shim and retrieving a property value etc..

  5. 14 chiranjeevi February 28, 2011 at 1:17 pm

    what is nested msi & how can install that..?

    • 15 Mayank Johri April 14, 2011 at 6:46 am

      Never create a Nested MSI Package, its against MSI Best practices but read the microsoft website to create one

      The drawbacks include the following:
      * Nested Installations cannot share components.
      * An administrative installation cannot contain a nested installation.
      * Patching and upgrading will not work with nested installations.
      * The installer will not correctly cost a nested installation.
      * Integrated ProgressBars cannot be used with nested installations.
      * Resources that are to be advertised cannot be installed by the nested installation.
      * A package that performs a nested installation of an application should also uninstall the nested application when the parent product is uninstalled.

  6. 16 Roshan March 15, 2011 at 2:22 am


    Nice to see your blog..Keep the good work going on.

  7. 18 srikanth March 26, 2011 at 2:09 am

    Hi Balsaraj,

    I need answers for few questions

    1)If you extract a COM information through registering the dll or OCX file while tables will it be reflected?

    2)Mention a single property in the Property manager if it’s not there Application wont install through MSI?

    3)Can you elaborate the driver handling via device driver?

    4)Apart from APP search what tables you use to find whether the particular application is installed in ur pC via MSI tables?

    5)What is the meaning of Launch condition Office2007<office2003

    6)What i the attributes you set for files going under c:\Winnt\System?

    Can you provide answers for these questions?


  8. 19 Vishak June 9, 2011 at 1:28 pm


    You mentioned earlier that in the custom action section that,
    Action only runs during removal of MSI REMOVE~=”ALL”

    i think it should be REMOVE=”ALL” as the condition for an action that runs ONLY during uninstall.


  9. 20 Sunil Reddy June 10, 2011 at 8:54 am

    where can I get the projects for application packaging?

  10. 21 pradeep August 12, 2011 at 8:51 am

    Can anyone help by answering the below questions?

    1) How will u install a package in many systems(ex:1000) at same time?
    2) How is the storage machanism inside of installed Package?
    3) what is active setup? when do u go for it? How do u develop it?
    4) What are Transforms? can u Explain briefly?

    • 22 panday June 23, 2012 at 11:08 am

      To install a package in number of system we are using “deployment tool”.
      from that tool we deploye to number of machines @ the same time…

  11. 23 johnybasha shaik August 19, 2011 at 11:44 am

    hi raj,

    i have problem see below

    i need to install setup.exe in silent mode.
    i found that silent switch also. but the problem here is its taking default values while installing.but i need to uncheck 2 check boxes. 1 is Quick lunch 2 is help url.
    please give any idea to solve

  12. 25 manojkumar September 10, 2011 at 11:41 am

    what process of createing driver package? with any example.
    can any one help me out with these

    thanks in advances

  13. 26 sazid October 26, 2011 at 5:28 pm

    can u please send me the imp questions and answer on packaging
    interview questions…..

  14. 27 sathish kumar November 29, 2011 at 4:59 am

    Hi Raj

    I have a one question , like the application is inastalling 10 systems and not insatalling the another 10 systems all are in same group. os is same and all the users have the permission to access the installation.

    plz help me on this

  15. 28 mujeeb January 19, 2012 at 4:01 pm

    An application keeps on Reinstalling every time you click the shortcut .How to resolve?

  16. 30 sireesha May 28, 2012 at 4:02 pm

    how to uninstall only a particular feature?
    i know how to insatll a particlar feature
    Ans: Msiexec /i ADDLOCAL=Feature name

  17. 32 appfresher June 13, 2012 at 5:11 am

    great to hav a interaction with al you guys its wonderful

  18. 33 Joel M August 12, 2012 at 2:45 pm

    I am interested in learnng application pacakaging ,Can you guys guide me

    • 34 suresh January 25, 2013 at 2:23 am

      majorly u have 2 learn some repacking/packaging tools like Wise Package studio & Installshield admin studio . Some scripting languages like vbscript/wise script and App-v …etc

  19. 35 sai August 13, 2012 at 4:21 pm

    What are the advantages and disadvantages of .msi????

  20. 36 yogesh September 7, 2012 at 11:26 am

    hi Balraj, i am very happy to read your blog!!!
    I want to know that as WPS would not be there in future, then do you think application packaging will remain as such as different tech like AppV is coming, please tell me the future scope of Application packaging

  21. 38 prasad September 18, 2012 at 3:43 pm

    please send me application repackaging interview question with answers in pdf format or anything else please

  22. 39 rajesh November 9, 2012 at 6:04 am

    why we are going to add ini files to ini tables instead of files?there is advantages of ini files?

    • 40 raj June 3, 2013 at 5:02 pm

      If we add ini files to the files means it will replace of the old file.If we add ini files to the ini tables it will append the content of data to package and it will remove that content after install or uninstall.

  23. 41 Nagarjun January 12, 2013 at 7:19 am

    i want more interview questions based on application packaging and app-v please send question and answers to my mail

  24. 42 venkat September 2, 2013 at 5:10 am

    What if application goes for self-healing everytime user launches the shortcuts?What is the reason?

  1. 1 fix credit Trackback on November 4, 2009 at 5:55 pm
  2. 2 2010 in review « Balsaraj's Blog Trackback on January 2, 2011 at 10:48 am

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: