Sei sulla pagina 1di 37

1|Page

1. What is Application Packaging?

Ans: Process of creating an installer for an application is called application packaging. Usually in
it binary files provided by developers are packaged to form a package. The Main difference
between packaging and re-packaging is that the source files does not come in the form of
package in packaging where as in re-packaging they come in a form of a package, which might
be MSI or legacy package (such as executable, batch files, etc).

2. What is Application Repackaging?

Ans: Repackaging (Customized Installation) is the process of capturing the changes made by an
Installation Program (Package) and it is customized to support company standards and
distribution methods.

It is not necessary to do setup capture to call it repackaging, even creating must files or is files
can be called application repackaging.

3. What are the steps of Repackaging?

Ans :

Ø Review the packaging requirements (User Requirement Review).

Ø Analyze the vendor package (Tech Review).

Ø Repackage the application (Setup capture).

Ø Customize the package (Scripting).

Ø Test the package (Testing & UAT).

Ø Release the package to end users (Deployment).

4. Why repackaging is required & what are the problems in Legacy Installation?

Most common reasons for Re-packaging are as follows

Ø Customized Installation.

Ø Reduce Support Costs.

Ø Self Repair.

Ø Source Resiliency.

Ø Unattended Install.

The problems with Legacy Installations.

Ø High Support Costs.


2|Page

Ø Fragile Installs & uninstalls.

Ø Difficult & labor Intensive to deploy.

5. Name few MSI Packaging tools?


Ø Wise for Windows Installer.

Ø Wise Package Studio.

Ø Install Shield.

Ø SMS Installer.

Ø Marimba.

Ø WIX (It cannot be used for re-packaging).

Ø Sharpdevelop.

Ø Visual Studio.

6. Name few MSI Re-Packaging tools?

Ø Wise Package Studio

Ø Install Shield

Ø SMS Installer

Ø Marimba.

7. Name few Deployment tools?

Ø Radia

Ø CA DSM

Ø Altiris Client Management Suite

Ø Altiris Notification Server Console

Ø Microsoft Systems Management Server (SMS)

8. What is Windows Installer?


3|Page

Windows Installer (previously known as Microsoft Installer) is a built-in Operating System


service for Installing and Managing Applications. It provides a standard method for developing,
customizing, installing and updating applications. It is an engine for the installation,
maintenance, and removal of software on modern Microsoft Windows systems. The installation
information, and often the files themselves, are packaged in installation packages, loosely
relational databases structured as OLE COM Structured Storages and commonly known as “MSI
files”, from their default file extension. Windows Installer contains significant changes from its
predecessor, Setup API. New features include a GUI framework and automatic generation of the
uninstallation sequence. It is positioned as an alternative to stand-alone executable installer
frameworks such as older versions of InstallShield and Wise Package Studio (later versions of
both supports Windows Installer) and NSIS.

9. Benefits of the Windows Installer?

Ø Advertising

Ø Installation on Demand

Ø Repair (Self-healing)

Ø Rollback (Transactional operations)

Ø Managed Shared Resources

10. MSI Installation Mechanism (Background Mechanism)?

Acquisition: The Installer first installs the feature and then progresses through the actions
specified in the sequence tables of the installation database. These actions query the installation
database and generate a script that gives a step-by-step procedure for performing the
installation.

Execution: The installer passes the information to a process with elevated privileges and runs
the script.

Rollback: If an installation is unsuccessful, the installer restores the original state of the
computer. When the installer processes the installation script, it simultaneously generates a
rollback script. In addition to the rollback script, the installer saves a copy of every file it deletes
during the installation. These files are kept in a hidden,system directory. Once the installation is
complete, the rollback script and the saved files are deleted.
4|Page

11. What is a MSI?

MSI is “Microsoft Windows Installer”. It is an installation, in the form of a single file. It is actually
a database that contains several tables (80+). Each of these tables contains instructions and set-
up information.

12. Structure of MSI?

Ø Products (Collection of Features)

Ø Features (Collection of Components)

Ø Components (Collection of files and Registries)

13. What is Product?

A single, installed, working program (or set of programs) is a product. A product is identified by a
unique GUID (the ProductCode property). A product is not the same as a package: a single MSI
package might install multiple different products. For example, an MSI might install French and
English versions of a program, each of which is a different product.

14. What is Feature?

Features are buckets for Components. Windows Installer configuration commands operate only
on Features (installing, advertising, Uninstalling). Self-healing, installon- demand and user profile
fix-up operate at the Feature level.

15. What is Component?

Components are collections of resources that are always installed or removed as a unit from a
user's system. A resource can be a file, registry key, shortcut, or anything else that may be
installed. Every component is assigned a unique component code GUID.

16. What is self-healing?

When an MSI-based application is launched (by clicking on an advertised shortcut or file type
association), Windows Installer checks the existence of key path items. If there is a mismatch
between the current system state and the value specified in the MSI package (e.g., a key file or
registry is missing), then the related feature is reinstalled. This process is also known as self-
healing or self-repair.
5|Page

17. What is the difference between Self-Healing and Repair?

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.

18. What is Registry, Tell the Structure & types of Registry?

The Registry is a single place for storing information about the Windows OS (Hardware &
Software)

Ø Root Keys / Subtrees

Ø Subkeys

Ø Hives

Ø Entries

Types of Registry keys

Ø Machine-Specific (HKCR, HKLM, HKCC, HKU)


6|Page

Ø User-Specific (HKCU, HKU)

Types of Registry Root keys

Ø HKEY_CLASS_ROOT (HKCR)

Ø HKEY_LOCAL_MACHINE (HKLM)

Ø HKEY_CURRENT_CONFIG (HKCC)
Ø HKEY_CURRENT_USER (HKCU)

Ø HKEY_USERS (HKU)

19. What are Shortcuts & Types?

Shortcuts are the entry points to the applications installed on the system which is normally
points to a file:

Ø Advertised (File should be Installed by the Application).

Ø Non Advertised (File that is not part of Installation. It is also called Command Line shortcuts).

20. What are INI File & its format?

INI files are plain-text files that contain configuration information. "INI" stands for

initialization.

[Section]

Keyname=value.

21. What are Services & its types?

A windows service is a background process which is loaded by the Service Control Manager of
the OS.

Ø Win32 Service (Win32 services are the services which is running by the executable file
installed by the Application).
7|Page

Ø System or Kernel Services (Kernel services are the services which are used by the OS to
communicate to the hardware devices).

22. Where is Service information stored?

Most of the Service information are stored under the windows registry hive
“HKLM\System\CurrentControlSet\Name of the Service”

23. in the MSI, which tables contain information about the service details?

Ø Service Install (Service Details)

Ø Service Control (Controlling the service during Installation & Un Installation)

24. What is ODBC & DSN and its types?

ODBC means Open Database Connectivity. The purpose of ODBC is to allow the user to access
data from any application. The layer between the application and the DBMS called DSN.

Ø System DSN (DSN will be available for all users)

Ø User DSN (DSN will be available for that particular user)

25. What is File Association?

The Windows operating system recognizes file types and associates them with programs based
on their file extension. A file that carries no extension or no associated program is called
Orphaned.

26. What is Environment Variable & its types?

Environment Variables are the variables that are set by the Operating System & Application.

Ø System Variable (Available for all users)

Ø User Variable (Available for that particular user)

27. What is Property & types of Properties, give some Examples?

Properties are global variables that the Microsoft Windows Installer uses during an installation.

Private: The installer can be use only internally (values can’t be changed during the run time).

Manufacture, ProductCode, ProductID, ProductName, ProductVersion ……


8|Page

Public: The installer can be uses both internally & externally (values can be changed during the
run time also).

INSTALLLEVEL, ….

Restricted Public: The user can’t change the value both internally & externally due to security
purposes. ALLUSERS, REBOOT, REINSTALLMODE …

28. What is Merge Module?

Merge modules are a mechanism in Windows Installer that allows companies to prepackage and
share standard component definitions. Merge modules are used to deliver shared code, files,
resources, registry entries and setup logic to applications as a single compound file.

29. Name few Merge Module tables?

v ModuleSignature,

v ModuleComponents,

v ModuleDependency,

v ModuleExclusion,

v ModuleIgnore,

v ModuleSubstitution,

v ModuleAdminUISequence,

v ModuleAdminExecuteSequence,

v ModuleConfiguration,

v ModuleAdvtUISequence,

v ModuleAdvtExecuteSequence,

v ModuleInstallUISequence,

v ModuleInstallExecuteSequence.

30. Detail the Background mechanism of Merge Module?

If there are a number of applications that require a specifically configured component, it would
be possible to create a merge module that installs and

configures that component. That merge module could then be added to the installation
packages of each product that required that particular component.
9|Page

This saves the effort of having to individually add the necessary files, registry entries, and other
components to every installation. It also saves time if updates are needed, as instead of
updating the installations for all five applications, only the merge module is updated, and the
installations only need to be rebuilt.

31. How to give Permission for files, folders & Registry keys in MSI?

In the MSI, we can give permissions through Lock Permission table. But using subinacl.exe
custom action is the best way to set permissions.

32. How to give Permission for files, folders & Registry keys through VB Script & what is the
syntax?

We can give permission for files & folders through VB Script by using the CACLS & XCACLS
commands.

CACLs should only run on NTFS partitions.

CACLS – Changes Access Control ListS

“Cacls <file name> [/T] [/E] [/C] [/G user: perm] [/R user [...]] [/P user: perm [...]]

[/D user [...]] “

/T Changes ACLs of specified files in the current directory and subdirectories

/E Edit ACL instead of replacing it

/C Continue (ignore) access denied errors

/G user: perm where access rights granted can be: R C F (read, change, full control)

/R user Revoke specified user's access rights (only valid with /E)

/P user: perm Replace specified user's access rights. Permission can be: N R C F (none, read,
change, full control)

/D user Deny specified user access

E.g. “cacls c:\myfile.txt /E /G <user name>: F”

33. How to install only one particular feature during the Installation through Command line?

msiexec /i <msi> ADDLOCAL=<Feature Name>


10 | P a g e

34. How to disable ARP (Add/Remove Programs) Details during the Insallation through
Command line, tell some ARP properties?

msiexec /i <msi> ARPSYSTEMCOMPONENT=1

Following entries are various ARP properties

a) ARPAUTHORIZEDCDFPREFIX
b) ARPCOMMENTS
c) ARPCONTACT
d) ARPINSTALLLOCATION
e) ARPNOMODIFY
f) ARPNOREMOVE
g) ARPNOREPAIR
h) ARPPRODUCTICON
i) ARPREADME
j) ARPSIZE
k) ARPSYSTEMCOMPONENT
l) ARPURLINFOABOUT
m) ARPURLUPDATEINFO

35. What is Advertisement?

It means that, the Availability of an application to users or others with out actually the full
Installation. There are two types of Advertising

Ø Assigning :

An Application appears (shortcuts, files & registries) to a user or others, when an Application is
“assigned”. When the user tries to open, it is

installed upon demand.

Ø Publishing :

No Entry points appear to a user or others, when an Application “published” to the group. It is
activated only if the group Application activates the published Application i.e. Installation on
Demand.

36. What is Advertised Feature & Component?


11 | P a g e

If a Feature or Component is advertised, only the interfaces required for loading and launching
the application are installed to the user or others. If a user activates an advertised interface the
installer then proceeds to install the necessary Components & Features.

37. What is Installation on Demand?

When a user or application activates an advertised feature or product, the installer proceeds
with installation of the needed components.

38. What is Transform?

A transform is a windows installer file with the extension (.MST). It should be used along with a
MSI to customize or change the installation package without modifying the MSI. The installer
can only apply transforms during an installation.

39. What are the types of Transform?

a) Embedded transform

Embedded transforms are stored inside the .msi file of the package.

b) Secured transform

Secured transforms are stored locally on the user's computer in a location where, on a secure
file system, the user does not have write access. Such transforms are cached in this location
during the installation or advertisement of the package. During subsequent installation-on-
demand or maintenance installations of the package, the installer uses the cached transforms.

c) Unsecured transform

Transforms that have not been secured are called unsecured transforms. To apply an unsecured
transform, pass the transform file names in the TRANSFORMS property or command line string
during the installation.

40. How to Create Transform in Wise / Install Shield?

In Wise Package Studio, by using Install Tailor or New Project ? other templates ?

Transform In Install Shield Admin Studio, by using the New Project ? Transform

41. How many Transform can be created for one Vendor MSI?
12 | P a g e

There is no restriction on the numbers of transforms which can be created for one Vendor MSI.

42. How many Transforms can be supplied in the Command line?

There is no restriction on the numbers of transforms which can be supplied in the command
line.

43. What is Custom Action?

The Microsoft Windows Installer provides many built-in actions for performing the installation
process. For some cases the developer writes an action to execute his own installation is called
custom action.

44. What are the types of Custom Actions?

v DLL file stored in a Binary table stream

v DLL file that is installed with a product

v EXE file stored in a Binary table stream

v EXE file that is installed with a product

v Displays a specified error message and returns failure, terminating the installation

v EXE file having a path specified by a property value

v EXE file having a path referencing a directory

v JScript file stored in a Binary table stream

v JScript file that is installed with a product

v JScript text specified by a property value

v JScript text stored in this sequence table

v VBScript file stored in a Binary table stream

v VBScript file that is installed with a product

v VBScript text specified by a property value

v VBScript text stored in this sequence table

v Property set with formatted text

v Directory set with formatted text


v Installation of a package nested inside of the first package. See Nested Installation Actions
13 | P a g e

v Installation of a package that resides in the first application’s source tree. See Nested
Installation

v Actions

v Installation of an application that is advertised or already installed. See Nested Installation


Actions.

45. What are the types of Sequences in the Custom Actions?

v Normal User Interface

v Normal Execute Immediate / Deferred

v Administrative User Interface

v Administrative Execute Immediate / Deferred

46. What are the types of Conditions in the Custom Actions and what is the use?

v Not Installed - During Installation only

v REMOVE - During Un Installation only

v NOT REMOVE - During both Install & Un Install

47. What are the types of In Script options in the Custom Actions?

a) Immediate Execution

Immediate custom actions, can be sequenced anywhere within any of the sequence tables. It
has access to the installation database (read & set installation properties, modify feature &
component states, add temporary columns, rows, and tables).

b) Deferred Execution – User Context

Deferred custom actions can only be sequenced between the Install Initialize and Install Finalize
actions in execute sequence tables. It doesn’t have access to the installation database. Deferred
custom actions are not executed immediately. Instead they are scheduled to run later during
the execution script. The execution script isn't processed until the Install Execute, Install Execute
Again, or Install Finalize action is run. If the Current User doesn’t have the elevated privileges
(Custom actions make changes in the system directly), the custom actions should run in
Deferred Execution in User Context only.

c) Rollback only

This Action should be executed during the Installation of the Rollback script or if the Installation
is Unsuccessful.
14 | P a g e

d) Commit only

This Action should be executed during the Installation of the Commit script.

e) Deferred Execution – System Context

Deferred custom actions can only be sequenced between the Install Initialize and Install Finalize
actions in execute sequence tables. It doesn’t have access to the installation database. Deferred
custom actions are not executed immediately. Instead they are scheduled to run later during
the execution script. The execution script isn't processed until the Install Execute, Install Execute
Again, or Install Finalize action is run. If the Current User have the elevated privileges (Custom
actions make changes in the system directly), then it should run in Deferred Execution in System
Context only.

48. What is the difference between “Immediate Execute / Deferred Execute”?

Ø Immediate custom actions, can be sequenced anywhere within any of the sequence tables

Ø Deferred custom actions can only be sequenced between the Install Initialize and Install
Finalize actions in execute sequence tables

Ø Immediate custom actions have access to the Installation database

Ø Deferred custom actions doesn’t have access to the Installation database

Ø Immediate custom actions can only run in the User Context

Ø Deferred custom actions can run both in the context of the user and elevated using the
system context.

49. What is the difference between “Deferred in System Context / Deferred in User Context”?

Ø If the Custom action which installs or modify a file under the INSTALLDIR or Installation should
be run in “Deferred in User Context”.

Ø If the Custom action which installs or modify the system file directly should be run in
“Deferred Execution in System Context”.

50. What are the types of Processing Options in the Custom Actions and what is the use?

A) Synchronous: Windows Installer runs the custom action synchronously to the main
installation. It waits for the custom action to complete successfully before continuing the main
installation.
15 | P a g e

b) Synchronous, ignore exit code: Windows Installer runs the custom action synchronously to
the main installation. It waits for the custom action to complete before continuing the main
installation; the action can be either success or fail.

c) A synch, wait at end of sequence: Windows Installer runs the custom action simultaneously
with the main installation. At the end it waits for the exit code from the custom action before
continuing.

d) A synch, no wait: Windows Installer runs the custom action simultaneously with the main
installation. It doesn’t wait for completion of the custom action and doesn’t check the exit code
also.

51. What are the types of Scheduling Options in the Custom Actions and what is the use?

A) Always Execute: This action execute in all sequences

b) Run first time: This action execute only the first time Windows Installer encounters it.

c) Run once per process:This action execute only one time either Execute sequence that should
not run if the installation is running in silent mode.

d) Run only if UI sequence was run: This action execute only if either Execute sequence is run
following User Interface sequence.

52. What is Launch Condition?

Launch Condition is used to check system requirements on the destination computer.

53. What is App Search?

App Search action is used to search for existing versions of products (Files, Registry, INI,
Directory & Component)

54. What is Isolated Component, why we are using and its types?

It means that to prevent overwriting of previous versions of shared components, and ensures
that other applications do not overwrite your version of shared components.

A) Manifest file concept

b) Local file concept


16 | P a g e

55. What is the use of MSI Assembly tables?

Ø It is used for the registration of .Net Assembly files

56. What is the latest version of Windows Installer?

Ø The latest version of Windows Installer is 4.5

57. What is the latest version of Wise Package studio & Install Shield Admin Studio?

Will change with time.

58. What is the difference between Wise Package Studio & Install Shield Admin Studio?

Need to find the info myself.

59. What is Conflict Management?

When two or more applications install the same system files (DLLs, .VBXs, and .OCXs), Windows
registry, and other items. To detect, Conflict Management should be use and for resolve the
software conflicts, Application Isolation concept should be use.

60. What are the types of Deployment (Software Distribution)?

Ø Group policy (Active Directory)

Ø Software Update Services (SUS)

Ø Windows Update Web site

Ø Systems Management service (SMS)

61. What is Software Distribution?

One of the more critical aspects to managing a Windows environment is the ability to deploy
new applications, updates, upgrades & patches. Distributing new or updated software is called
as Software Distribution.

62. What is Group Policy (GPO) & how to set it?


17 | P a g e

Administrators use Group Policy to define options for managing, configuration of servers,
desktops, and groups of users. It is used to set policies across a given site, domain, or range of
organizational units. Use “gpedit.msc” in the run command to set the policy.

63. What is Elevated User & how to create it?

If the user having the privileges of MSI features (Windows Installer) is called as Elevated User
You can create through “gpedit.msc” in the run Command or registry keys
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer

Type: DWORD Key: Always Install Elevated Value: 1

64. What is Wrapper MSI?

Ø When an Executable is wrapped within an MSI then that msi is called wrapper msi

65. What is Lock down environment?

Software restriction policies provide administrators with a Policy-driven mechanism to identify


software running on computers in a domain, and control its ability to execute. This policy can be
used to block malicious scripts, help lockdown a computer, or prevent unwanted applications
from running.

66. What is IntelliMirror?

Intelli Mirror management technologies are a set of powerful features for change and
configuration management. It ensures that users’ data, software, and personal settings are
available when they move from one computer to another, and persist when their computers are
connected to the network.

67. What is Active Directory?

Deploying applications through the Active Directory is done through the use of group policies,
and therefore applications are deployed either on a per user basis or on a per computer basis.

68. What are the other tools which are used during the testing & finding solving the Issues in
the Application Packaging?

Ø Picture Taker
Ø Windows Install Master
Ø InstallRite
18 | P a g e

Ø RegMon
Ø FileMon
Ø procmon
Ø Process Explorer
Ø CsDiff
Ø Icon Extractor & Icon Builder
Ø RegExtractor
Ø WiLogUtl
Ø WiseComReg

69. What is Orca tool & what is the purpose and Advantages?

Microsoft utility to view, update, validate MSI & MST files.

70. Why multiple MSI Exec is running during the Installation?

Windows Installer uses a client-server model for performing installations. Additionally for
security reasons, Windows Installer hosts DLL and script custom actions in a "sandbox" process.
Depending on how the install was initiated, one of the MSIExec processes can be the client
process (Current User). Another MSIExec process Windows Installer service (System).

71. Which drive your Application will Install, C drive has less space and D drive has more
space? Why & how to solve?

It will install “D” drive only due to Windows Installer features. We can solve by adding
“WindowsVolume” entry in the directory table as parent of “TARGETDIR” or you can
useINDSTALLDRIVE=C:\

72. What is a Patch?

Patching is a streamlined process for updating earlier versions of a Windows Installer setup
package i.e. when you update only files that already exist in your installation package. Only
thepackage code is changed.

73. What is Upgrade?

Upgrade is a process of updating the earlier versions of a Windows Installer setup package i.e.
Adding, changing & deleting new Files & Registries. But here product code, product version
&package code should be changed.
19 | P a g e

74. What are the types of Upgrades and what is the difference?

a) Small Update : A small update is a product update that changes a few files or possibly adds
some new content. But there is a limitation for the changes that can be made to the
featurecomponent structure for the package. Only the package code is changed. It is also called
as a "Hotfix" or “Quick Fix Engineering (QFE)”.

b) Minor Upgrade : A minor update is a product update that makes enough changes. But there is
a limitation for the changes that can be made to the featurecomponent structure for the
package. The package code & product version is changed for the product. It is also called as a
“Service Pack”.

c) Major Upgrade : A major update is a product update with a large number of changes. There is
no limitation for the changes that can be made to the featurecomponent structure for the
package. The package code, product code & product version is changed for the product. It is also
called as a "Product Upgrade”.

75. How you validate the MSI using Wise Package Studio?

In Wise Package Studio, by using “Package Validation” option by selecting the MSI with the
default Cub file or Browse your own Cub file. In Install Shield, by Build - Validate - Default Cub
file or Browse your own Cub file.

76. What is ICE?

It means “Internal Consistency Evaluation”. ICEs are used to validate installation packages
against various generic issues.

77. Give some ICE Error number and tell how to solve the ICE Errors?

There are totally 96 ICE Errors and 14 ICEM Errors in the Windows Installer. Some examples are
as follows:

a) ICE03 - Basic data and foreign key validation

b) ICE18 - Validates the KeyPath column of the Component table when it is NULL.

c) ICE21 - Validates that all components in the Component table map to a feature in
the FeatureComponents table.

d) ICE33 - Checks for entries in the registry table that belong in other tables.
20 | P a g e

e) ICE38 - Validates that components installed under the user's profile use a registry key under
HKCU as their key path.

f) ICE64 - Checks that new directories in the user profile are removed in roaming scenarios.

g) ICE57 - Validates that individual components do not mix per-machine and peruser data.

h) ICE59 - Checks that advertised shortcuts belong to components that are installed by thetarget
feature of the shortcut.

78. What are the File types of Application Packaging?

Ø WSI - Microsoft Windows Installer Project file

Ø ISM - Install Shield Project file

Ø MSI - Microsoft Windows Installer

Ø MST - Microsoft Transform

Ø PCP - Windows Installer Patch Project file

Ø MSP - Microsoft Windows Installer Patch

Ø WSM - Microsoft Windows Installer Merge Module Project file

Ø MSM - Microsoft Windows Installer Merge Module

Ø EXE - Executable file

79. How to install the .Exe file through silent mode?

Its mostly /s, but will depend up on which tool has been used to create it.

80. How to register the DLL manually?

By using the command line option “regsvr32”. For example

Ø regsvr32 Dll name For Register the Dll

Ø regsvr32 /u For Unregistered the Dll


Ø regsvr32 /s For Silent register

81. What is COM Component?

Ø Component which is having the COM information

82. What are the default Windows Installer properties?


21 | P a g e

Ø [AdminToolsFolder]

C:\Document and Settings\Current User\Start Menu\Programs\Administrative Tools\

Ø [AppDataFolder]

C:\Document and Settings\Current User\Application Data\

Ø [CommonAppDataFolder]

C:\Document and Settings\All Users\Application Data\


Ø [CommonFilesFolder]

C:\Program Files\Common Files\

Ø [DesktopFolder]

C:\Documents and Settings\Current User\Desktop\

Ø [FavoritesFolder]

C:\Documents and Settings\Current User\Favorites\\

Ø [FontsFolder]

C:\Windows\Fonts\

Ø [LocalAppDataFolder]

C:\Documents and Settings\Current User\Local Settings\Application Data\

Ø [MyPicturesFolder]

C:\Documents and Settings\Current User\My Documents\My Pictures\

Ø [NetHoodFolder]

C:\Documents and Settings\Current User\NetHood\

Ø [PersonalFolder]

C:\Documents and Settings\Current User\My Documents\

Ø [PrintHoodFolder]

C:\Documents and Settings\Current User\PrintHood\

Ø [ProfilesFolder]

C:\Documents and Settings\Current User\

Ø [ProgramFilesFolder]

C:\Program Files\

Ø [ProgramMenuFolder]
C:\Documents and Settings\Current User\Start Menu\Programs\
22 | P a g e

Ø [RecentFolder]

C:\Documents and Settings\Current User\Recent\

Ø [SendToFolder]

C:\Documents and Settings\Current User\SendTo\

Ø [StartMenuFolder]

C:\Documents and Settings\Current User\Start Menu\


Ø [StartupFolder]

C:\Documents and Settings\Current User\Start Menu\Programs\Startup\

Ø [System16Folder]

C:\Windows\System\

Ø [SystemFolder]

C:\Windows\System32\

Ø [TempFolder]

C:\Documents and Settings\Current User\Local Settings\Temp\

Ø [TemplateFolder]

C:\Documents and Settings\Current User\Templates\

Ø [WindowsFolder]

C:\Windows\

Ø [WindowsVolume]

C:\

83. What are the default Environment settings in XP?

Ø ALLUSERSPROFILE

C:\Documents and Settings\All Users

Ø APPDATA

C:\Documents and Settings\current User\Application Data

Ø CommonProgramFiles

C:\Program Files\Common Files

Ø COMPUTERNAME
System Name
23 | P a g e

Ø ComSpec

C:\Windows\system32\cmd.exe

Ø HOMEDRIVE

C:

Ø HOMEPATH

C:\Documents and Settings\Current User


Ø ProgramFiles

C:\Program Files

Ø SystemDrive

C:

Ø SystemRoot

C:\Windows

Ø TEMP

C:\Documents and Settings\Local Settings\Temp

Ø TMP

C:\Documents and Settings\Local Settings\Temp

Ø USERNAME

Current User

Ø USERPROFILE

C:\Documents and Settings\Current User

Ø Windir

C:\Windows

84. What is Package Code?

The Package Code is a GUID identifying a particular Microsoft Windows Installer package. It
associates an .MSI file.

85. What is Product Code?

The Product Code is a GUID identifying a particular Application or product.


24 | P a g e

86. Tell some complex Applications you did & what is the Issue and how you solve the Issue?

Provide few of your complex applications such as Office, etc

88. What are the disadvantage/drawbacks of MSI?

Resiliency: Resiliency can be inconsistent with repackaged applications because the repackager
utility may not fully understand the component dependencies or what the key paths of the
application should be. Therefore, an application may be packaged into one large feature that
gets entirely reinstalled if a component keypath is missing. If it were broken up into multiple
smaller features it would enable a more manageable resiliency. COM/ActiveX

Registration: Component Object Model (COM) and ActiveX controls may not be properly
registered. Prior to Windows Installer, COM and ActiveX registration was a black box. Except for
the exported functions DLLRegisterServer and DLLUnregister server, COM and ActiveX controls
offered very few hints of their registration process. RegSvr32.exe was responsible for calling the
previously mentioned functions and then the DLL was responsible for registering itself. There is
no utility that can view a DLL, an OCX, or an EXE and figure out what goes on inside
DllRegisterServer and DllUnregisterServer for that file. There are standard registry entries that
most COM and ActiveX controls register, such as HKCR\CLSID, HKCR\ProgID, and HKCR\TypeLib.
Information on COM registration may or may not get entered into the appropriate MSI tables by
the repackager.

Shortcuts: Shortcuts may not be created as Windows Installer descriptor shortcuts, which
enable resiliency. Legacy setup shortcuts were .lnk files that pointed to an executable in most
cases. Sometimes when the repackager runs, all it knows is that an .lnk file was copied to a
directory. For example, a legacy Setup.exe installed a shortcut to
C:\Windows\Profiles\User1\Desktop. The repackager would copy the .lnk file directly to the
directory listed previously. Therefore, the repackager is not actually copying a Windows Installer
shortcut, but rather it is copying a file without any resiliency capabilities included.

Isolated Components: The only way to take advantage of isolated components is to author a
new MSI package. Repackagers currently do not support this feature. Application
Removal:When uninstalling a repackaged application, it is possible that the AllUsers profile.

89. What is advertisement and Command for Advertisement?

It means that, the Availability of an application to users or others with out actually the full
Installation. There are two types of Advertising.
25 | P a g e

Assigning: An Application appears (shortcuts, files & registries) to a user or others, when an
Application is “assigned”. When the user tries to open, it is installed upon demand.

Publishing: No Entry points appear to a user or others, when an Application “published” to the
group. It is activated only if the group Application activates the published Application i.e.
Installation on Demand.

Syntax

Ø msiexec /j [{u|m}] package

Ø msiexec {u|m} package /t TransformList

Ø msiexec {u|m} package /g LanguageID

Parameters

Ø /j : Advertises a product.

Ø u : Advertises to the current user.

Ø m : Advertises to all users of the computer.

Ø package : Specifies the Windows Installer package file.

Ø /g LanguageID : Identifies the language.

Ø /t TransformList : Applies transform to advertised package.

90. What is admin install and Command for it?

The Windows Installer can perform an administrative installation of an application or product to


a network for use by a workgroup. An administrative installation installs a source image of the
application onto the network that is similar to a source image on a CD-ROM. Users in a
workgroup who have access to this administrative image can then install the product from this
source. A user must first install the product from the network to run the application. The user
can choose to run-from-source when he installs and the installer uses most of the product's file
directly from the network. Administrators can run an administrative installation from the
command line by using the /a command line option. The ADMIN action is the top-level action
used to initiate an administrative installation. When this action is executed the installer calls the
actions in the AdminExecuteSequence and AdminUISequence tables to perform the
administrative installation.
26 | P a g e

Syntax: Msiexec /a package

91. For which type of packages admin install fail?

Any MSI which installs files based on selection, be it from command line, System Search or
selected options while installing.

92. What is Transaction processing?

One or more operations processed together as a single indivisible whole called a transaction. All
the constituent operations must succeed for the transaction to succeed, otherwise all the
operations are rolled back to the original state.

Windows Installer 4.5 includes support for installing multiple packages using transaction
processing. The packages are chained together and processed as a single transaction. If one or
more of the packages in the transaction cannot be installed successfully or if the end user
cancels the installation, the Windows Installer initiates rollback for all of the packages to restore
the system to its earlier state.

93. How to apply multiple transforms to MSI?

msiexec /i <msifile> transforms=”mst1.mst”, “mst2.mst”, “mst3.mst” /q

94. MSI installation is failing with 1603, what might be the cause?

The following is a non-exhaustive list of known causes for this error:

Ø Short file name creation is disabled on the target machine.

Ø An Install Script custom action is prototyped incorrectly.

Ø A file is locked and cannot be overwritten.

Ø The Microsoft Windows Installer Service is not installed correctly.

Ø The Windows Temp folders are full.

Ø The setup was corrupted after installation and, therefore, fails with this error during un-
installation.

Ø An older version of Install Shield Developer is being used.

Ø A general error occurred during the installation.

Ø Print and File sharing is not installed or enabled when installing MSDE 2000.
27 | P a g e

95. How can we find whether source files contain MSI or not?

Ø If Msiexec engine process runs more than 2 times in taskmanager

Ø If package keeps entry of MSI in temp folder

96. What are the types of Setup Captures in Wise / Install shield?
In Wise Package Studio there are three types

Ø Virtual Capture: Creates a clean virtual OS on your computer, and the installation is redirected
in the clean virtual OS.

Ø SmartMonitor: Watches the installation and records the changes the installation performs.

Ø Snapshot: Scan the computer before and after the installation and record the differences
between the first scan and the second.

In Install Shield there are two types

Ø Installation Monitor: Repackager watches lower-level system activities and records related
changes made to the system by the setup(s) programs.

Ø Snapshot: Scan the computer before and after the installation and record the differences
between the first scan and the second.

97. What is Dll Cache folder?

It is the folder in which Microsoft Windows stores protected system files.

98. 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”.

99. Explain the difference between Property and PROPERTY?

Property: Private Properties in MSI (Properties that cannot be changed during runtime).
28 | P a g e

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

100. Use of INSTALLEVEL 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.

101. 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.

102. Custom Action conditions

Requirement -----------------------------------------------------------------------------------------Condition
29 | P a g e

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

103. Product code, Package Code and Upgrade 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:

v The name of the .MSI file has been changed.

v The component code of an existing component has changed.

v A component has been removed from an existing feature.

v An existing feature has been made into a child of an existing feature.

v 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.

Summary:
30 | P a g e

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

104. 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.

Run:

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.

105. What is Windows Installer?


31 | P a g e

Windows Installer is a system service for installing and managing applications. It provides a
standard method for developing, customizing, installing, and updating applications.

106. What basic functionality is provided by Windows Installer?

A. Windows Installer provides the following basic functions:

Transactional operations: All installation operations are transactional. For each operation that
Windows Installer performs, it generates an equivalent undo operation that would undo the
change made to the system. If a failure occurs during the middle of an installation, Windows
Installer can roll back the

machine to its original state.

Self-healing: Windows Installer supports "self-healing" abilities for applications. Applications can
detect common installation problems at launch, like missing files or registry keys, and
automatically repair themselves.

Installation on demand: Windows Installer supports on-demand installations of application


features. For example, the spelling checker in Microsoft Office Word may not be installed by
default, but a user can trigger an on-demand installation of this feature.

Installation in locked-down environments: In fully locked-down environments, users don't


generally have permission or the ability to install applications. In most cases, they don't have
write-access to the Program Files folder of their computers or to the HKEY_LOCAL_MACHINE
registry location. If an administrator approves an installation package by means of Group Policy,
for instance, Windows Installer can perform an installation on the user's behalf.

State management: Windows Installer provides a set of standard Win32® application


programming interfaces (APIs) and automation interfaces for applications and administrators to
use for querying the installation state on the machine. The APIs allow querying of the current
state, verification of the

existing state, repair of a corrupted state, and transition from one state to another.

107. What versions of Windows include Windows Installer?

Microsoft Windows 2000, Windows Millennium Edition (Windows Me), and Windows XP include
Windows Installer. Windows 2000 includes version 1.1 of Windows Installer, Windows Me
includes version 1.2, and Windows XP includes version 2.0.
32 | P a g e

Windows 2000 SP3 also contains version 2.0 of Windows Installer.

108. Why are multiple MSIExec.exe processes running on my machine during an installation?

A number of MSIExec processes can be running during an installation. The reason for this is that
Windows Installer uses a client-server model for performing installations. Additionally for
security reasons, Windows Installer hosts DLL and script custom actions in a "sandbox" process.
Depending on how the install was initiated, one of the MSIExec processes can be the client
process.

Another MSIExec process is Windows Installer service. Any remaining MSIExec processes are
usually sandbox processes for hosting custom actions. The determination as to which MSIExec
process will serve as the sandbox process for a script or DLL custom action depends in part on
whether the custom action will run elevated or impersonated and whether the custom action is
32-bit or 64-bit.

109. What is an MST, and why it is used?

A. Whenever there is a vendor supplied MSI, then it is not recommended to do capture the MSI,
hence all the changes need to be done in the MSI are done is a Microsoft Transform. Then this
MST file is applied on the MSI with the following command line.

MSIEXEC /I {path}\file.msi TRANSFORMS={path}\file.mst /q

Where {path} is the location of the folder where MSI and MST are kept.

110. What are the differences between small, minor, and major updates?

A small update is a product update that changes a few files or possibly adds some new content.
A minor update is a product update that makes enough changes to warrant changing the
product version for the product, whereas a major update is a product update with a large
number of changes that warrants a change in the product code.

It's sometimes easier to think of a small update as a "hotfix" or Quick Fix Engineering (QFE)
update, a minor update as a service pack, and a major update asa product upgrade.

Small and minor updates can be considered almost equal in that the only real difference is that a
minor update has a change to the ProductVersion whereas a small update does not. The rules
that they follow and application of the patch are the same. Application of small and minor
update patches requires explicit reinstallations.
33 | P a g e

Major updates are not subject to that limitation and a reinstallation is not required for patch
application. Additionally small and minor update patches are limited in the changes that can be
made to the feature-component structure for the package. Significant changes can be made to
the feature-component structure in the scope of a major update.

111. What is the Logical structure of package?

A package describes the installation of a full product (Windows Installer does not handle
dependencies between products) and is universally identified by a GUID. A product is made up
of components, grouped into features.

Components:

A component is the minimal part of a product—each component is treated by Windows Installer


as a unit: the install developer cannot, for example, use a

condition to specify to install just part of a component. Components can contain files,groups of
files, directories, COM components, registry keys, shortcuts, and other data. The end user does
not directly interact with components.

Components are identified globally by GUIDs, thus the same component can be shared among
several features of the same package or multiple packages, ideally through the use of merge
modules (although, for this to work correctly, different components should not share any sub-
components).

Key paths:

A key path is a specific file, registry key, or ODBC data source that the package author specifies
as critical for a given component. Because a file is the most common type of key path, the term
key file is commonly used. A component can contain at most one key path; if a component has
no explicit key path, the component's destination directory is taken to be the key path.

When an MSI-based application is launched, Windows Installer checks the existence of these
critical files or registry keys (that is, the key paths). If there is a mismatch between the current
system state and the value specified in the MSI package (e.g., a key file is missing), then the
related feature is re-installed. This process is also known as self-healing or self-repair. No two
components should use the same key path.

Features :
34 | P a g e

A feature is a hierarchical group of components—a feature can contain any number of


components and other features (a feature contained in another feature is called a
"subfeature"). Most installation programs display a "custom setup" dialog box at run time, from
which the end user can select which features to install or remove.

The package author defines the product features. A word-processing program, for example,
might provide features for the main program executable, the program's help files, and optional
spelling checker and stationery modules.

112. How to do Diagnostic Logging?

A. Windows Installer supports detailed logging as a powerful diagnostic tool. Logging can be
enabled in the following four ways:

Command-line: If installing an MSI package from the command-line, the /L switch can be used to
enable logging. For example, the following command installs Package.msi and outputs verbose
logging to c:\Package.log:

msiexec /i Package.msi /l*v c:\package.log

Windows Registry: The following registry value can be used to enable verbose logging:

Key: HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer

Value Name: Logging

Type: REG_SZ

Data: voicewarmup

The resulting log is named MSI###.log (where "###" is a unique random identifier) and is placed
in the system's Temp directory.

Group Policy: The following Group Policy setting can be used to manage logging on

multiple systems: Computer Configuration -> Administrative Templates -> Windows


Components -> Windows Installer -> Logging.

Windows Installer API: If installing an MSI package programmatically, the MsiEnableLog function
call can be used to create a log file and determine the logging level for the life of the calling
process. Although verbose logs are very useful for diagnosing Windows Installer problems, they
can be very long and difficult to read without practice. A quick way to find the location of a
problem in the log is to open it in a text editor (such as Notepad) and search for the phrase
"Return Value 3".
35 | P a g e

This entry commonly appears in logs close to the point where a critical error has occurred. The
Windows Installer SDK provides a tool called WiLogUtl, which parses and annotates Windows
Installer log files.

113. Why does the package go for Self Healing first time the user launches the Application?

If the package is containing some HKCU entries then the package will always go for self healing
for the first time. This happens because the HKCU keys are only installed for the current user
present while installing the package and not all the users as it is the property of the HKCU. So, if
other user logs in then there is a mismatch between the current system state and the value
specified in the MSI package (e.g., a key file is missing), then the related feature is re-installed.
This is called the Self Healing.

114. How do detect the MSI Version on the Computer?

If you want to check the version of the Windows Installer on your system, check the version of
MSI.DLL in the Windows\System 32 folder.

115. Advantages of Packaging (creating MSI packages)?

1. Customize Applications to suit the user needs.

2. Simplify the Installation and Un-installation Procedures.

3. Saves Time in both Installation and Un-installation.

4. Once packaged, applications can be quickly installed on a range of desktops in multiple


locations, saving administrative costs, simplifying the manage of

licensing fees and minimizing support and repair expenditures.

5. Saves Space of the product by doing apt modifications to applications.

6. Has a great flexibility of obtaining the lost files through a phenomenon called Self Heal, this
reduces the down time of application. If a critical file (a .DLL or

.EXE file, for example) that is part of the distribution is corrupt or is deleted, the user can be
prompted to repair the installation by presenting the original

.MSI distribution. Additionally, if the installation media is available (for example, on a network
share), the repair simply happens automatically.

7. Can be advertised. So that on demand installation could take place.

8. Upgrading of the application can be done with ease.


36 | P a g e

9. Clean installation and Un-Installation is achieved by a process called Roll- Back.

10. Simplifies management of new user set-up along with the revision and distribution of
software repairs and new applications to existing users. Application recovery can also be
improved.

11. Helps eliminate uncontrolled software downloads and installation, enables applications to
be safely removed and reduces non-business traffic on a
corporate network.

12. Using .MSI format, can automate software distribution process and ensure that the
installation doesn’t break other applications that have already been

installed.

13. Application is installed via an OS service.

14. State management is maintained. In the past, it’s been difficult to know whether an
application is installed on a machine. You would have to query for

a .DLL with a specific version number or determine whether an .EXE file with

a specific name was present. Windows Installer provides an application programming interface
(API) that lets programmers and administrators see

whether a specific application is installed on a machine.

15. Scriptable API. This whips together a VBScript to help us with the MSI file manipulations. The
API to manipulate MSI files is so powerful that it can create, validate and update packages,
trigger installs and uninstalls, examine the MSI repository data on computers, and perform
some custom actions.

16. Served installs. Because MSI files can be housed in a share point and delivered via a server,
we can keep our installation files all in one place or move them around — closer to the users if
necessary.

116. About Applying Custom VB Actions in Real Time ?

Tracking Analyst supports the use of custom Visual Basic (VB) actions with real-time data in
ArcMap. The custom VB action differs from other real-time actions in that it is applied to data in
ArcMap at the layer level, rather than in ArcCatalog, where actions are applied to services. The
VB action will be applied to real-time data as it streams into ArcMap but not to any data already
in the layer prior to triggering the action.

You can access the Visual Basic Editor (VBE) from the Main menu in ArcMap to create this
action. The following procedure takes you through the steps of applying a VB action to a real-
time data layer as it streams into ArcMap.
37 | P a g e

For more information on applying actions to real-time data at the server level, see the book
Using Tracking Server.

Once you have saved a temporal layer as a .lyr file, its action settings are read-only.

117. How To Applying Custom VB Actions in Real Time?

Procedure

1. In the Arc Map table of contents, right-click the real-time data layer to which you want to
apply the VB action and click Properties.

2. Click the Actions tab.

3. Click New Action.

4. Click in the Name the Action text box and type a name for the action.

5. Click Visual Basic as the type of action to create.

6. Click OK.

7. Click the Project drop-down arrow and choose Project or Normal.

8. A macro in the Normal folder will affect all documents opened in Arc Map.

9. Click the Module drop-down arrow and choose the appropriate module for the macro.

10. The default module name in VBE is This Document.

11. Click the Macro drop-down arrow and choose the name of the macro you want to use.

12. Click the appropriate button for the kind of query you want to build.

13. Click Query Builder to load or create a query for the action.

14. All features meeting the criteria defined in the query will be affected by the VB action you
have created.

15. Click OK.

16. The new action appears in the list panel on the Actions tab.

17. Click OK to apply the new action to the specified layer and close the dialog box.

Thank You ! All the BEST!!

Potrebbero piacerti anche