Category Archives: application packaging interview questions

SUBINACL command to set File permission

Following is the command used to set Full Control permission to Users group


SUBINACL.EXE /file “C:\Program Files\VNDesktop\settings.xml” /grant=Users=F



Command to Register EXE

Command to register an executable 
MyFile.exe /REGSERVER


Command to Unregister an executable
MyFile.exe /UNREGSERVER



Command to register DLL using MSIEXEC

The following example shows how you can use the msiexec /y command:


msiexec /y my_file.dll


/y   Calls the system API DllRegisterServer to self-register modules passed on the command line.



The following example shows how you can use the msiexec /z command:

msiexec /z my_file.dll


/z   Calls the system API DllUnRegisterServer to unregister modules passed on the command line.

INSTALLLEVEL Property in MSI



Below are the list of features present in MSI and their Levels are highlighted

Now, Lets goto Property Table and locate property INSTALLLEVEL, its value is 100

We can disable a feature by changing its Level value higher than INSTALLLEVEL value.


In the following snapshot HPIO feature level is set to 110 and hence it is disabled.




Application Packaging Interview Questions – Miscellaneous

  • How to set a shortcut to install only on Windows7
  • How to set a component to install only if .Net Framework 4.0 full is installed
  • How to set a component to install only if operating system is 64bit ?
  • If there are two MSIs, a.msi and b.msi , how to package the application such that a.msi installs on WinXP and b.msi doesnt install, but in Windows7 both MSIs install
  • What is the use of Advertizing a shortcut?
  • How to set a condition in MSI to install only if desktop screen resolution is above 1280×720
  • How to set a custom action inside MSI to run CA after completing installation of MSI?
  • How to create a package, to check for microsoft office apps, and if they are running prompt a message to user to close them, wait for 1min, if user doesn’t close office apps. Force close them and install MSI. After installation is complete, display a message a to user that Office apps can be used now and the message shouldn’t be closed until user clicks OK button

Get MSI property value using VBScript



Following script displays the INSTALLDIR property value present inside MSI

Dim objWshShell, str
set objWshShell = CreateObject(“WScript.Shell”)
str = Session.Property(“INSTALLDIR”)
MsgBox(str)
set objWshShell = nothing


MSI Property Precedence

The installer sets properties using the following order of precedence. A property value in this list can override a value that comes after it and be overridden by a value coming before it in the list. 


1. Properties specified by the operating environment. 


2. Public properties set on the command line. 


3. Public properties listed by the AdminProperties property set during an administrative installation. 


4. Public or private properties set during the application of a transform. 


5. Public or private property that set by authoring the Property table of the .MSI file.

Differences between WindowsXP and Windows7



WindowsXP: User profiles are stored in C:\Documents and Settings
Windows7: User profiles are stored in C:\Users


WindowsXP: All Users Profile is stored in C:\Documents and Settings\All Users location
Windows7: All Users profile is stored in C:\ProgramData location


WindowsXP: User Account Control is absent
Windows7: User Account Control is present to avoid unwanted changes to System locations


WindowsXP: No Session Zero isolation
Windows7: Session Zero isolation present. Please refer to following URL for more information on Session Zero isolation
http://windowsteamblog.com/windows/b/developers/archive/2009/10/01/session-0-isolation.aspx


Application Packaging Interview Questions – Scripting

Following are questions related to Scripting in Application Packaging

VBScripting

  • What is On Error Resume Next
  • What is Option Explicit
  • What are different objects available in VBScripting?
  • What object is used to perform operations on Files/Folders?

WiseScripting

  • How to get environment variable value into a variable?
  • How to add/edit/remove registries?
  • function to delete Files?
  • How to check if OS is 32bit or 64bit ?
  • can we execute VBscript inside Wisescript?
  • how to pass values from VBScript to WiseScript?
  • How to execute MSI using WiseScript?
  • How to check if MSI installation using Wisescript is successful or failure?
  • How to display a message while MSI installation is happening using WiseScript?
  • How to check if a process is running using WiseScript?
  • How to check if file/directory exists using WiseScript?
  • How to check if a file is in use?
  • How to pause wisescript execution for sometime?
  • How to set the name of output file generated using WiseScript?
  • How to copy files from one location to another location using WiseScript?
  • What is the different between INST and ‘.'(DOT)
  • How to stop execution of WiseScript?
  • How to read Registry values using WiseScript?
  • How to get current Date and Time using WiseScript?
  • Can a wisescript runs another wisescript?
  • How to install files on the system using WiseScript?
  • How to install files if doesn’t exist using WiseScript?
Search this blog for Answers on various queries




Application Packaging Interview Questions – Miscellaneous

Following are miscellaneous queries

Miscellaneous:

  • What is component Isolation?
  • What is Conflict Management?
  • How to delete/create registry from each user profile?
  • How to delete/copy files to each user profile?
  • When do you use ActiveSetup?
  • When does Run key gets executed?
  • When does ActiveSetup actually run?
  • What change has to be done to run ActiveSetup again after few days?
  • How to Set a file as hidden during MSI installation?
  • Name few silent switches possible for setup.exe’s?
  • How to create response files?
  • What is NestedMSI installation?
  • How to package an application which contains multiple MSIs, lets say 5 MSIs?
  • Disadvantage of NestMSI Installation?
  • Lets say a package(MSI+MST) is installed, then MST is modified and now I want to update the existing installation with changes in modified MST? ( How to do it without uninstalling the package)
  • What is meant by A in ‘famus’ switch in Repair command? When to use it?
  • How to access MSI properties in Deferred Execution custom action?
  • When to choose between Execute Immediate and Deferred sequences?
  • What are all the sequences available in MSI?
  • What is the significance of SelfReg Table?
  • What is the disadvantage of SelfReg Entries?
  • What to do when a MSI contains SelfReg Entries?
  • How to disable advertizement of shortcuts ?
  • What is destination directory for shortcut?
  • What is working directory for shortcut?
  • Is it possible to create a shortcut for a file that is present in pre-requisite package?
  • How to uninstall a MSI using shortcut? Please provide all the shorcut entries?
  • How to install only one feature of MSI through command line ?
  • Name ARP related MSI Properties?
  • What is LockDown Environment ?
  • Why multiple msiexec.exe processes run during MSI installation?
  • What is Source Resiliency?
  • Command to register a DLL file manually?
  • How to disable the setup.exe requirement for installing the msi?
  • What is INSTALLLEVEL property? and its significance?
  • 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? 
  • How do you create a Response File?  Where the response file will be created ?
  • What steps to be kept in mind while packaging Addin Applications?
  • How to update Hosts file?
  • How to package driver applications?
  • How to install fonts using MSI? through Registries Or MSI Tables?
  • Condition to check if feature is installed?
  • What is Rollback?
  • Syntax of ProductVersion Property? 


Search this blog for Answers on various queries