Вы находитесь на странице: 1из 73

 

  Smart Packager
Product Administration Guide

Dependable MSI and Application Virtualization


Packaging, Workflow, and Package Editing
 

IT Asset Management Tools for the Cloud Era


www.scalable.com  
Table of Contents
Page 4 Product Basics
  Welcome ........................................................................................................ 4
  Licensing ....................................................................................................... 4
  Why Repackage? .......................................................................................... 5
Prerequisites .................................................................................................. 5
 
Windows Installer .......................................................................................... 6
  Smart Repackaging ....................................................................................... 7
  Self Signing ................................................................................................... 9
  Software ID Tags ......................................................................................... 10
Dependencies .............................................................................................. 11
 
App-V ........................................................................................................... 12
  Virtual Machines .......................................................................................... 13
  Page 14 Functions & Features
 
Smart Packager Overview ........................................................................... 14
  Command Line Syntax ................................................................................ 14
  License Key Dialog ...................................................................................... 15
  Welcome Page ............................................................................................ 16
Workflow ..................................................................................................... 17
  Editor Page .................................................................................................. 18
  Dialogs ......................................................................................................... 19
  Edit General......................................................................................... 19
  Files Add.............................................................................................. 20
Files Remove....................................................................................... 21
  Registry Add ........................................................................................ 22
  Registry Remove ................................................................................ 23
  Shortcuts ............................................................................................. 24
Windows Services ............................................................................... 25
 
Tags..................................................................................................... 26
  Advanced Windows Installer ............................................................... 27
  File Dialogs .................................................................................................. 28
  File Browse .......................................................................................... 28
Registry Dialogs .......................................................................................... 29
 
Create Registry.................................................................................... 29
  Remove Registry ................................................................................. 29
  Edit Registry (Strings).......................................................................... 30
  Edit Registry (Multi-Strings) ................................................................. 30
Edit Registry (Number) ........................................................................ 31
  Edit Registry (Binary)........................................................................... 31
  Edit Remove Registry .......................................................................... 31
  Create & Edit Shortcuts ............................................................................... 32
  Create Service ............................................................................................. 33
Edit Service ................................................................................................. 35
  Create Tags ................................................................................................. 37
  Edit Tags ..................................................................................................... 39
  Completion .................................................................................................. 41
Options ........................................................................................................ 42
 
 
 
Page 43 Wizards
New Package Welcome .............................................................................. 43
New Package Information ................................................................... 43
New Package Options ......................................................................... 44
New Package Finish ............................................................................ 45
Test Package Welcome ............................................................................... 46
Test Package Local ............................................................................. 47
Test Package Remote ......................................................................... 48
Test Package Finish ............................................................................ 48

Smart Packager
Product Administration
Guide

Scalable Software, Inc.


 
February 2013
2  
 
Table of Contents
Page 50 Discovery
   
Overview ..................................................................................................... 50
Best Practices ............................................................................................. 51
Dependencies ............................................................................................. 52
Command Line Syntax ................................................................................ 54
License Key Dialog...................................................................................... 55
Evaluation.................................................................................................... 56
Welcome Page ........................................................................................... 57
Package Page ............................................................................................. 58
Options Page............................................................................................... 59
Signing Page ............................................................................................... 60
File Exclusions Page ................................................................................... 61
Registry Exclusions Page............................................................................ 62
App-V Page ................................................................................................. 63
Sequence Page ........................................................................................... 64
Monitor Page ............................................................................................... 65
Results Page ............................................................................................... 66
Finish Page ................................................................................................. 67

Page 68 Discovery Command Line


Overview ..................................................................................................... 68
Best Practices ............................................................................................. 68
Dependencies ............................................................................................. 69
DiscoC Command Line ............................................................................... 71

Smart Packager
Product Administration
Guide

Scalable Software, Inc.


February   2013 3  
 
Product Welcome
  Basics Scalable's Smart Packager is a software repackager and Windows Installer (MSI) editor. It is
   
designed to guide the user through the process of repackaging software for distribution.
Smart Packager builds upon Scalable's extensive software repackaging knowledge and
experience. It takes the almost two decades of experience gained in the WinINSTALL line of
products and builds a new user-friendly product.

Smart Packager Product Family


• Smart Packager CE
• Smart Packager Pro

Licensing
The Scalable Smart Packager product is available in two main editions: Smart Packager CE
and Smart Packager Pro.

Smart Packager CE

Helpful Tip Smart Packager CE is a free tool for repackaging most software installations. However, it will
not repackage installations based upon Microsoft's Windows Installer technology. To
To view or change
product license key repackage MSI-based installations requires the use of the Smart Packager Pro.
information, use the
License Key dialog. Start
either Discovery or Smart Smart Packager Pro
Packager and open the
About dialog box by right- Smart Packager Pro is a licensed product designed to repackage installations of any type,
clicking on the caption including Windows Installer. Smart Packager Pro is licensed on an annual basis. Please
bar. The About dialog box
displays the existing contact Scalable's sales and support for purchasing details.
license key as well as
product edition and days In addition to Smart Packager CE and Smart Packager Pro, there is an evaluation version of
until expiration. Click the
Smart Packager Pro. The Smart Packager Pro evaluation is a is a 7-day trial period during
"Change" button to set a
new license key. which time the repackaging of software installations based upon Windows Installer
technology is possible.

To view or change product license key information, use the License Key dialog. Start either
Discovery or Smart Packager and open the About dialog box by right-clicking on the caption
bar. The About dialog box displays the existing license key as well as product edition and
days until expiration. Click the “Change” button to set a new license key.

Copyright and Trademarks


Copyright © 2013 Scalable Software, Inc. Scalable Smart Packager, Smart Packager, and all other
Scalable product names are trademarks or registered trademarks of Scalable Software, Inc., in the USA
and other countries. Smart Packager is designed and programmed in the U.S.A.
Smart Packager
Disclaimer
Product Administration The information contained in this help file is subject to change without notice. Scalable Software makes
Guide no warranty of any kind with regard to this help file, including, but not limited to, the implied warranties of
merchantability and fitness for a particular purpose. Scalable Software shall not be liable for errors
contained herein or for incidental or consequential damages in connection with the furnishing,
Scalable Software,
  Inc. 4  
performance, or use of this online help.
February 2013
   
Product Why Repackage?
 
Basics Benefits of repackaging
  The main purpose behind Scalable's Smart Packager is to facilitate creating new packages
  based upon existing software installation packages, aka "repackaging." An obvious question
  is why repackage. Below is a list of benefits to repackaging an existing installation:
 
  • Create a unattended (or silent) installation.
• Control what gets installed; e.g. install Word and Excel but not the rest of Microsoft
  Office.
  • Add custom files to an installation.
  • Bundle multiple installations into a single package.
  • Convert an installation package into a Windows Installer (MSI) file.
• Create a package for software that does not include a self-installer; e.g. PKZip
 
compressed file.
 
 
Limitations of repackaging
 
  Packages that create a service with a specific username and password will be repackaged as
  a "logon as system" service. This is because it is not possible to extract and decode the
 
encrypted password used to create the new service.
 
  32-bit applications repackaged on a 64-bit operating system will not install on a 32-bit system.
  This is because 32-bit applications installed on a 64-bit operating system install registry keys
  into both the 32-bit and 64-bit registries. Since a 32-bit machine does not contain the 64-bit
 
registry keys, these packages will only install on other 64-bit operating systems
 
 
  Prerequisites
 
  Operating systems
 
  • Windows XP SP2 or greater¹
  • Windows Server 2003 SP1 or greater
• Windows Server 2003 R2
 
• Windows Vista
 
• Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2
 
  ¹ - Windows XP 64-bit Edition is not supported.
 
  Additional requirements
 
  • Microsoft Visual C++ 2005 version 8.0.50727.6195
  [http://www.microsoft.com/download/en/details.aspx?id=26347]²
• Microsoft XML services (MSXML) version 6
 
[http://www.microsoft.com/download/en/details.aspx?id=3988]²
 
  ² - These requirements are automatically installed during installation.
 
 
 
 
Smart Packager  
Product Administration
   
Guide
 
Scalable Software, Inc.
February 2013
    5  
Product Windows® Installer
Basics Scalable's Smart Packager creates and edits packages using the Windows Installer format,
  i.e. MSI files. Windows Installer is an installation technology developed by Microsoft.
   
Windows Installer was first released in 1999 and is supported by all recent versions of
Microsoft Windows.

Support

Windows Installer has undergone several revisions since the initial release. Each revision
changes the schema version. Whereas most schema versions are supported across all
versions of Windows, they may require the installation of a newer Windows Installer
redistributable package. Below is a table showing the schema versions supported for each
version of Microsoft Windows.    

Windows Windows Windows Windows Windows Windows Windows


Schema
XP 2003 2003 R2 Vista 2008 2008 R2 7

1 Yes Yes Yes Yes Yes Yes Yes


1.1 Yes Yes Yes Yes Yes Yes Yes
1.2 Yes Yes Yes Yes Yes Yes Yes
1.5 Yes Yes Yes Yes Yes Yes Yes
2 Yes Yes Yes Yes Yes Yes Yes
3 Yes Yes Yes Yes Yes Yes Yes
3.1 Yes Yes Yes Yes Yes Yes Yes
4 Yes Yes Yes Yes Yes Yes Yes
4.5 Yes Yes Yes Yes Yes Yes Yes
5 No No No No No Yes Yes

Natively supported by the operating system.

Supported but requires installation of Windows Install redistributable package.

Not supported.

Microsoft Windows Installer version 3.0


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=16821
Microsoft Windows Installer version 3.1
Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=25
Microsoft Windows Installer version 4.5
Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=8483

Limitations

Although the Windows Installer is a powerful format, it does have several limitations worth
noting:
• Windows Installer does not support device drivers. Therefore, repackaging an
installation containing a device driver will not work.
Smart Packager • Windows Installer supports installations for single user or all users, but not both.
Product Administration Repackaging an installation containing both per-user and all users’ files and settings
may not work correctly.
Guide
• A single Windows Installer package cannot support both x86 and x64 architectures.
A package must target either x86 or x64, but not both.
Scalable Software, Inc.
 
February  2013 6  
 
 
Product Smart Repackaging
 
Basics Smart repackaging is a technology developed by Scalable Software to facilitate repackaging
of Windows Installer packages. Understanding the differences between regular repackaging
and smart repackaging is key to generating the most successful packages.
   
In order to understand how smart repackaging works, one first needs to understand how
Windows Installer packages are installed.

On the left is the MSI file. It contains the files and registry keys to be installed, but it also
contains the UI, conditional logic, custom actions, etc.

In the middle is the Windows Installer engine (msiexec.exe) that evaluates the conditions,
displays the UI, and installs the files and registry keys.

On the right is the target computer where the package was installed. Note that not everything
contained in the MSI was installed. Only things like files, registry keys, services, etc. are
installed. The UI, conditional logic, custom actions, etc. are not installed. Also note that
additional files and registry keys not contained in the original package are installed. These
additional files and registry keys are created by the Windows Installer engine and are record
keeping about the newly installed package.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    7  

 
Product Smart Repackaging
 
Basics (cont.)
 
   Regular repackaging
With regular repackaging, a new package is created and only the files, registry keys,
services, shortcuts, etc. are added to the new package. The result is a package that
installs the original application but does not include the UI, thus the new package can
be installed unattended (silently).

VS.

Smart repackaging
Smart repackaging, like regular packaging, omits the UI and repackages the files,
registry keys, services, shortcuts, etc. However, it also includes the Windows Installer
record keeping that was installed. By including these additional files and registry keys
an installation repackaged using smart repackaging is able to preserve many of the
benefits of Windows Installer.

Benefits of Smart repackaging


• Future upgrades and patching of the product work correctly.
• All product shortcuts, including Advertised shortcuts, work correctly.
• Windows Installer features such as auto-repair function correctly.

Problems with Smart repackaging


Smart repackaging cannot be used for MSI files intended for per-user installation. Windows Installer
packages installed per-user creates user-specific data in the machine-specific areas of the registry.
Because MSI files cannot contain both per-user and per-machine data, such installations cannot be
repackaged into a new MSI file.

When to use smart repackaging

Knowing when to use smart repackaging versus regular repackaging will allow for the greatest
success when repackaging software. Use the following guidelines to determining which packaging
mode will yield the best results.

• If the application being repackaged is not based on Windows Installer technology, then
regular repackaging is recommended.
• If the application being repackaged is based on Windows Installer technology and the
original package is installed per-machine, then smart repackaging is recommended.
• If the application being repackaged is based on Windows Installer technology and the
original package is installed per-user, then regular repackaging must be used.

Note: if the packaging mode setting on the Options page is set to automatic then Discovery should
automatically use the correct packaging mode for the software being repackaged.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    8  

 
Product Self-Signing Certificate
 
Basics A self-signing   certificate is a certificate created by the user for use in their environment. Because the
certificate is not created from a trusted root authority (e.g. VeriSign), the certificate is not "trusted"
unless explicitly added. Self-signing certificates can be added to individual machines and/or into Active
Directory making them useful an organization to digitally sign packages. A digital signature ensures the
package is not modified or corrupted before installation.

Creating a Self-Signing Certificate

Step 1 - Windows SDK


The first step is to download and install the Windows SDK from Microsoft using one of the following
links.
Download link (Web installer):
http://www.microsoft.com/download/en/details.aspx?id=8279
Download link (ISO image):
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=8442

The Windows SDK installs the file makecert.exe that is used to create the self-signing certificate.

Step 2 - Create the certificate


Use the following command line to create the self-signing certificate:
makecert.exe -r -pe -ss StoreName -n "CN=Name" Filename.cer

StoreName : The name of the folder in the certificate store where the self-signing certificate is to
be created.
Name: The name for the new self-signing certificate. This name will be used for both the
"issued to" and "issued by" fields of the new certificate.
Filename : Filename used to save the new self-signing certificate.
For a full list of makecert.exe command line options see
http://msdn.microsoft.com/en-us/library/bfsktky3%28v=vs.80%29.aspx

Examples:

makecert.exe -r -pe -ss "Self Signing" -n "CN=My Organization" MyOrg.cer


Creates a new certificate called "My Organization" and places it in the "Self Signing" certificate
store. The certificate is saved in the file MyOrg.cer in the current folder.

makecert.exe -r -pe -ss "Self Signing" -n "CN=Accounting Packages"


AccountingPkgs.cer
Creates a new certificate called "Accounting Packages" and places it in the "Self Signing"
certificate store. The certificate is saved in the file AccountingPkgs.cer in the current folder.

Step 3 - Viewing and trusting the certificate (optional)


Use the Certificate Manager to view the certificate store by executing the command "certmgr.msc."
Using Certificate Manager you can view the certificate created in step 2 located in the store name used
when creating the certificate. To mark the newly created certificate as "trusted" on the local computer,
use Certificate Manager and select "Trusted Root Certification Authorities" and then import the .CER
file created in step 2. To mark the newly created certificate as "trusted" in the domain, use the Active
Directory tools to add the new certificate.
Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    9  

 
Product Software Identification (ID) Tags
Basics Software ID Tags are an industry standard designed to assist businesses with Software Asset
Management (SAM). SAM is the practice of managing and optimizing the process of purchasing,
deploying, and maintaining software licenses in a computer network. Software ID Tags facilitate this
by creating a consistent way for installed software to indicate its presence on a machine as well as
asset management and inventory software to identify installed applications.

Smart Packager has full support for Software ID Tags (19770-2 standard). Discovery of new
packages captures any installed tags. The package editor displays any software tags and allows
the user to create, edit, or remove them.

For more information on Software ID Tags, see www.tagvault.org.

Dependencies
It is very common for software to depend on a common set of files and libraries, typically referred to
as "dependencies." Often times these dependencies are available in a Merge Modules—a self-
contained Windows Installer file with all the files and logic necessary to install the dependency.
Smart Packager includes a library of over 280 of the most common merge modules for inclusion in
new packages. When Discovery detects the installation of a dependency it scans the library of
available merge modules and includes the appropriate merge modules in the new package.

The user can freely add or remove merge modules to the included library by following these simple
steps:

1. Add or remove files from the "Merge Modules" folder where the Smart Packager files were
installed.
2. Delete the file "mmcache.dat." This file contains a cached list of scanned merge modules.

The file will be automatically regenerated with the updated list of available merge modules.

Issues with Merge Modules

Although merge modules are a great way to handle dependencies, their use can lead to problems
with software repackaging. Merge modules were not designed with the inclusion of multiple
modules in mind. As such, some merge modules conflict with each other. The end result is that
repackaging software that depends on multiple merge modules, especially different versions of the
same dependency, often fails. The best solution to this problem is to handle dependencies
separate from the software that requires it.

The first step is to repackage the software without any dependencies. To do this first identify all
dependencies of the software. Before running Discovery, manually install all dependencies on the
discovery computer or virtual machine. After installation a reboot may be required. Next, run
Discovery and repackage the software. Since the dependencies were previously installed, this will
repackage the software without any dependencies. The final step is to handle dependencies
manually on any machine the repackaged software is installed on to. This can be done manually by
installing the same dependencies used on the discovery computer or virtual machine. Or one can
use Discovery itself to repackage each individual dependency into a new MSI file that can be
Smart Packager
Administration Guide installed on target computers.

Scalable Software, Inc.


February 2013
    10  

 
Product Dependencies
Basics (cont.)
Redistributable dependency installations

Below are links to redistributable installers for the most common Microsoft dependencies. These
can be downloaded and installed on computers to allow manual handling of dependencies.

Microsoft Visual C++ 2005 version 8.0.50727.42


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=3387
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=21254

Microsoft Visual C++ 2005 version 8.0.50727.762


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5638
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=18471

Microsoft Visual C++ 2005 version 8.0.50727.4053


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=14431

Microsoft Visual C++ 2005 version 8.0.50727.6195


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26347

Microsoft Visual C++ 2008 version 9.0.21022.8


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=29
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=15336

Microsoft Visual C++ 2008 version 9.0.21022.218


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=10430

Microsoft Visual C++ 2008 version 9.0.30411.0


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=10015
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=16771

Microsoft Visual C++ 2008 version 9.0.30729.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5582
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=2092

Microsoft Visual C++ 2008 version 9.0.30729.4148


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=11895

Microsoft Visual C++ 2008 version 9.0.30729.6161


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26368

Microsoft Visual C++ 2010 version 10.0.30319.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5555
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=14632

Microsoft Visual C++ 2010 version 10.0.30319.415


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=21576

Microsoft Visual C++ 2010 version 10.0.40219.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=8328
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=13523

Microsoft Visual C++ 2010 version 10.0.40219.325


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26999

Microsoft XML Services (msxml) 6.0


Download link (x86 and x64): http://www.microsoft.com/en-us/download/details.aspx?id=3988

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    11  

 
Product App-V
Basics Application Virtualization (App-V) is Microsoft's solution for virtualizing software applications in the
enterprise market. App-V supports all recent versions of Windows plus integrates with common IT
management software like Microsoft's System Center Configuration Manager (SCCM).

Scalable's Smart Packager is capable of creating App-V packages while simultaneously creating
Windows Installer packages. In order to create App-V packages, the App-V Sequencer must be
installed on the same machine as Discovery.

Supported App-V Sequencer versions

• 4.5
• 4.5 cumulative update 1
• 4.5 service pack 1
• 4.5 service pack 2
• 4.6
• 4.6 service pack 1

Note: When using Smart Packager to create App-V packages, any and all limitations that apply to
App-V still apply. For example, App-V has recommendations for repackaging Microsoft Office
2010—those same recommendations must be followed when using the Smart Packager to create
an App-V package of Office 2010.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    12  

 
Product Virtual Machines
Basics A virtual machine is a way to run one operating system on top of another operating system in a
completely isolated manor. The two operating systems are commonly referred to as the host (main)
system and the guest (virtual) system. With the introduction of multi-core CPUs and hardware
instructions designed to facilitate virtualization, it is now possible to run a virtual machine with only
a negligible performance impact over running on native hardware. This makes using a virtual
machine an ideal choice for software repackaging; for both capturing packages and testing.

The benefits of using a virtual machine to repackage software include:

• Capturing and testing the new package on a clean system. It is a best practice in software
repackaging to perform the capture on a clean system. This includes both clean of excess
Virtual
software as well as the target application has never been installing on the system. By
machines using virtual machines it is relatively simple to maintain a library of clean virtual images
provide a and copy each image before use. It is also a good idea to test the package on a clean
quick and system. This reduces the chance of software conflicts as well as problems caused by
convenient package dependencies.
way to test
• Capturing and testing in an isolated environment. With the proliferation of viruses and
on different malware, it is a good idea to capture and test suspect packages on virtual machines
operating isolated from the main network. By working in an isolated environment this ensures the
systems. main network is safe until such time as a package can be verified as free from viruses and
malware.

• Virtual machines provide a quick and convenient way test on different operating systems.
By maintaining a library of virtual machines representing all physical machines in a
corporation's environment, one can quickly and easily test a package on multiple
operating systems without having to track down various hardware and software
combinations.

• A requirement of Microsoft App-V is only one sequencing job can be run on a machine.
After that initial sequencing job App-V will inform the user the machine is not clean. As a
result, anyone using Smart Packager to sequence App-V packages may want to use
virtual machines to make easy to always sequence on a clean machine.

Below is a list of some of the more common software virtualization products:

• Microsoft offers both free and commercial virtual machine software such as Virtual PC,
Windows XP Mode, and Windows Server with Hyper-V.
• VMWare offers both free and commercial virtual machine software including VMWare
Player and VMWare Workstation.
• Oracle offers the free product VirtualBox.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    13  

 
Functions Smart Packager Overview
& Features
 
 
Smart Packager is a tool to guide the user through the process of repackaging, modifying,
 
and testing software for distribution. Smart Packager works with any software package
created using the Windows Installer technology. Creation and management of software
packages has three main areas.

Smart Package Discovery

Packager is a Discovery generates new packages based upon changes to the system using a low-level
device driver to monitor for all changes. Use Discovery to repackage existing installations into
tool to guide
new unattended installations or create installers for software not shipped with an installation
the user program. Discovery can also be used to create packages based upon changes to the system
through the other than those from a product setup includes user and system settings.

process of
Packaging Workflow
repackaging,
The workflow page is at the heart of Smart Packaging and guides the user through a common
modifying,
packaging workflow process. After the package has been discovered, typically the package
and testing will undergo a series of modifications and testing to verify the changes. Once the package
software for has been successfully modified and passed verification it is ready for wide-scale use and is

distribution. moved out of the workflow into package maintenance.

Package Maintenance

Once a package has successfully undergone the workflow process, the package is moved to
the editor page. The editor page maintains a list of all managed packages and facilitates
future changes and additions to the package through the package editor.

Command Line Syntax


SmartPackager.exe

/w:<package path>
Adds the specified package to the list of packages on the Workflow page.
/e:<package path>
Adds the specified package to the tree of packages on the Editor page.

Examples:

SmartPackager.exe /w:"C:\Packages\libre_office.msi"

SmartPackager.exe /e:"C:\Program
Files\Scalable\SmartPackager\Packages\firefox.msi"

Smart Packager
Administration Guide

Scalable Software, Inc.   14  


February 2013
 
Functions License Key Dialog
& Features
  This dialog displays the Smart Packager license key as well as allows the user to enter a new
  license key. For more details see Smart Packager licensing.

Existing License Key


Displays the existing license key (if any), as well as product edition and the date and day count
until expiration. If no license has been entered the product functions as Smart Package CE.

New License Key


Enter a new license key for the Smart Packager.

Validate
Click this button to validate the license key to ensure the key was typed correctly into the product.
After validation it will display the date and day count until expiration. Click OK to accept the new
license key or Cancel to retain the existing key.

Smart Packager
Administration Guide

Scalable Software, Inc.   15  


February 2013
 
Functions Welcome Page
& Features The welcome page is the introduction to the Scalable Smart Packager. From the welcome page
the user can easily navigate to common and recent tasks.
   

The workflow
page allows
the user to
graphically
see the
workflow of
one or more
packages
currently
being Common tasks: Discover a new package
Click on this link to start Discovery to perform the capture of a new package
worked on.
Common tasks: Create a new package
Click on the link to run the package wizard. This wizard allows the user to create a new package
from scratch.

Common tasks: Edit an existing package


Click on this link to display the editor page. The editor page contains a list of all packaged currently
managed by the Smart Packager.

Recent tasks
The recent tasks list shows the last three tasks performed by the current user. Clicking on any task
will return the user to that area and allow them to continue where they left off. This allows users to
resume working in the package without having to remember what they were last working on.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   16  
 

 
Functions Workflow
& Features
 
The workflow page allows the user to graphically see the workflow of one or more packages currently
being worked on. The list at the top of the page shows the packages currently in some phase of workflow
   
management. It shows the package name, current status, a progress bar of the current status, and the
time and user who last edited the package. In the upper right corner of the list are buttons to add or
remove packages from the list.
The workflow Selecting a package from the list enables the controls at the bottom of the page. This includes a graphical
page allows overview of the workflow progress as well as general package properties. The user can click on

the user to Discovery, Modification, Testing, and Completion to change the package's status in the workflow process.

graphically
see the
workflow of
one or more
packages
currently
being
worked on.

Discovery

A package in the "discovery" phase that has been recently discovered. A package in this phase may
require modification and/or testing before it can be marked as completed and ready for wide-scale use.

Modification

A package in the "modification" phase is undergoing package editing. Editing includes adding additional
files to the package, changing files and settings installed by the package, removing files from the
package, etc. Click on the "modification" graphic to open the package in the package editor.

Testing

A package in the "testing" phase is being validated. The package should be tested on multiple platforms
to ensure it functions correctly. Click on the "testing" graphic to open the package testing wizard. If the
package passes all tests it can be moved onto the completion phase. If the package fails one or more
tests it can be moved back to the modification phase.

Completion

A package in the "completion" phase has been modified and successfully validated. The package can
remain in the workflow list as a placeholder, or the package can be moved to the package editor page.
Smart Packager
Administration Guide  
Scalable Software, Inc.   17  
 
February 2013
 
 
Functions Editor Page
& Features
 
 
The package editor page allows maintenance on packages that have already gone through
the workflow process. Packages can be grouped into folders for convenient management. In
  the upper right corner of the tree are buttons to add or remove managed packages as well as
 
create new folders.
 
  Selecting a package from the tree displays the high-level package properties on the right.
  Clicking "Edit Package" opens the package in the package editor for modification.
 

   

Smart Packager
Administration Guide
  18  
Scalable Software, Inc.
February 2013
 
Functions Edit General Dialog
This page displays and allows for the editing of general Windows Installer properties.
& Features:
Dialogs

Path
Displays the full path to the Windows Installer file. This field cannot be changed.

Architecture
Displays the target architecture for the package. This field cannot be changed.

Title
This field shows a brief description of the type of package. Typical values include "Installation
Database," "Transform," and "Patch."

Subject
This field shows the name of the product installed by this Windows Installer package.

Author
This field shows the name of the author of the package; typically the company or
manufacturer's name.

Comments
This field shows the comments associated with this package. The value is typically "This
installer database contains the logic and data required to install product."

Last edited by
Displays the username of the last person to edit this Windows Installer file using the Smart
Packager. This field cannot be changed.

Last edited on
Displays the last time this Windows Installer file was edited using the Smart Packager. This
field cannot be changed.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   19  
 

 
Functions Files Add Dialog
This page displays files and folders installed by this package. Folders are displayed in a tree on the
& Features: left and individual files in a list on the right. Folders may be displayed as variables, e.g.
   
[ProgramFilesFolder] instead of "C:\Program Files."

Dialogs

Files and folders


Displays files and folders installed by this package.

Add
Click this button to add new files and/or folders for installation by this package. If the tree on the left
has focus then a new folder will be added. If the list on the right has focus then the browse files dialog
will be displayed to add one or more files.

Remove
Click this button to remove files and/or folders from installation by this package. If the tree on the left
has focus then the selected folder and all files and folders under that folder will be removed. If the list
on the right has focus then all selected files will be removed.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   20  
 

 
Functions Files Remove Dialog
This page displays files and folders removed by this package during installation. Folders are
& Features: displayed in a tree on the left and individual files in a list on the right. Folders may be displayed as

  variables, e.g.   [ProgramFilesFolder] instead of "C:\Program Files."

Dialogs

Files and folders


Displays files and folders removed by this package during installation.

Add
Click this button to add new files and/or folders for removal by this package during installation. If the
tree on the left has focus then a new folder will be added. If the list on the right has focus then the
browse files dialog will be displayed to add one or more files.

Remove
Click this button to remove files and/or folders from installation by this package. If the tree on the left
has focus then the selected folder and all files and folders under that folder will be removed. If the list
on the right has focus then all selected files will be removed.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    21  

 
Registry Add Dialog
Functions This dialog allows the user to add a registry value to the package.
& Features:
 
   
Dialogs

Key & Values


Displays the registry key where the new value will be added.

Add
Click this button to add new keys and/or values for installation by this package. If the tree on the left
has focus then a new key will be added. If the list on the right has focus then the Create Registry
dialog will be displayed to add a registry value.

Edit
Click this button to change the selected registry value. The edit dialog varies depending on the type of
registry value; strings, multi-strings, number, or binary.

Remove
Click this button to remove keys and/or values from installation by this package. If the tree on the left
has focus then the selected key and all keys and values under that key will be removed. If the list on
the right has focus then all selected values will be removed.

Smart Packager
Administration Guide

Scalable Software, Inc.   22  


February 2013
 
Functions Registry Remove Dialog
This page displays registry keys and values removed by this package during installation. Keys are
& Features: displayed in a tree on the left and individual values in a list on the right.

Dialogs

Key & Values


Displays the registry keys and values removed by this package during installation.

Add
Click this button to add new keys and/or values for removal by this package during installation. If the
tree on the left has focus then a new key will be added. If the list on the right has focus then the
Remove Registry dialog will be displayed to add a registry value.

Edit
Click this button to change the selected registry value. The edit Remove Registry dialog will be
displayed to change the value.

Remove
Click this button to remove keys and/or values from removal by this package during installation. If the
tree on the left has focus then the selected key and all keys and values under that key will be
removed. If the list on the right has focus then all selected values will be removed.

Smart Packager
Administration Guide

Scalable Software, Inc.  


February 2013
  23  
   

 
Functions Shortcuts Dialog
This page displays shortcuts installed by this package.
& Features:
   

Dialogs

Shortcuts
Displays shortcuts installed by this package.

Add
Click this button to add a new shortcut for installation by this package. The create shortcut dialog
will be displayed to add a shortcut.

Edit
Click this button to change the selected shortcut. The edit shortcut dialog is displayed to change the
shortcut.

Remove
Click this button to remove a shortcut from installation by this package.

 
Smart Packager
Administration Guide
 
Scalable Software, Inc.
February 2013   24  
 

 
Functions Windows Services Dialog
This page displays Windows services installed by this package.
& Features:
 

Dialogs

Services
Displays services installed by this package.

Add
Click this button to add a new service for installation by this package. The create service dialog will be
displayed to add a service.

Edit
Click this button to change the selected service. The edit service dialog is displayed to change the
service.

Remove
Click this button to remove a service from installation by this package.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
  25  
 

 
Functions Tags Dialog
This page displays software identification tags installed by this package. For more details see software
& Features: identification tags.

Dialogs

Tags
Displays tags installed by this package.

Add
Click this button to add new tags for installation by this package. The create tags dialog will be
displayed to add tags.

Edit
Click this button to change the selected tags. The edit tags dialog is displayed to change the tags.

Remove
Click this button to remove tags from installation by this package.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   26  
 

 
Functions Advanced Windows Installer Dialog
This page displays and allows for the editing of advanced Windows Installer properties.
& Features:
Dialogs

Installation mode
Select the installation mode used for the package; per-user, per-machine, or automatic.
per-user: The new package is installed for a single user.
per-machine: The new package is installed for all users.
automatic: The new package is installed per-machine if possible, but if that fails the
package is installed per-user. This setting increases the reliability of the
package by ensuring installation even when the user lacks full install privileges.

Compression mode
This setting controls how the package is to be compressed; uncompressed, partially compressed,
or fully compressed.
uncompressed: The files to be installed are uncompressed and stored external to the
MSI file.
partially compressed: The files to be installed are compressed into one or more CAB files. The
CAB files are stored external to the MSI file.
fully compressed: The files to be installed are compressed into one or more CAB files. The
CAB files are stored internal to the MSI file. This option makes the MSI
file a single self-contained installation program not requiring additional
files for installation.

Reboot mode
This setting controls whether the package reboots after installation; never, prompt if necessary,
or always.
never: After installation the computer never reboots even if a reboot is
necessary. Note: a reboot may still be required to complete the
installation.
prompt if necessary: If a reboot is necessary to complete the installation it will prompt the
user. This is the default setting.
always: The installation will always prompt the user to reboot the computer.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   27  
 
 
 
Functions File Browse Dialog
This dialog allows the user to add a single new file to the package.
& Features:
Dialogs

File
Displays the full path of the new file to be added.

Browse
Click this button to search for and select a file on the local computer.

Install location
The folder where the new file will be placed when this package is installed. Use the drop-
down to select an existing folder or type a new folder location.

Files Browse Dialog


This dialog allows the user to add one or more files to the package.

Files
Displays the relative path of the new file(s) to be added.

File browse
Click this button to search for and select one or more files on the local computer for inclusion.

Folder browse
Click this button to search for and select a folder on the local computer. All files and folders
under the selected folder will be added to the list.

Remove
Click this button to remove the selected file from the list of files.
Smart Packager
Install location
Administration Guide
The folder where the new file(s) will be placed when this package is installed. Use the drop-
Scalable Software, Inc. down to select an existing folder or type a new folder location. The final install location for
February 2013   28  
  each file will be the relative path in the list above appended onto this install folder.

 
Functions Create Registry
This dialog allows the user to add a registry value to the package.
& Features:
Dialogs

Key
Displays the registry key where the new value will be added.

Name
The name of the registry value.

Type
The type of the new registry value.
REG_SZ: A string
REG_EXPAND_SZ: A string that contains unexpanded references to environment variables; e.g.
“%PATH%.”
REG_MULTI_SZ: A sequence of strings.
REG_DWORD: A 32-bit number.
REG_BINARY: Binary data in any form.

Data
The data for the new value. This data field varies depending on the selected data type. For
example, for REG_DWORD only a number can be entered.

Remove Registry
This dialog allows the user to add a registry value to be removed by the package during installation.

Key
Displays the registry key where the value will be removed.

Name
Smart Packager The name of the registry value to be removed during installation. The type of registry data does not
Administration Guide
matter, the value will be removed so long as the name and key match.
Scalable Software, Inc.  
February 2013   29  
 
 
 
Functions Edit Registry (Strings)
This dialog allows the user to edit an existing registry string value in the package, i.e. REG_SZ and
& Features: REG_EXPAND_SZ.

Dialogs

Key
Displays the registry key where the value will be added.

Name
The name of the registry value.

Data
The data for the value. This data can be any string value.

Edit Registry (Multi-Strings)


This dialog allows the user to edit an existing registry multi-string value in the package, i.e.
REG_MULTI_SZ.

Key
Displays the registry key where the value will be added.

Name
The name of the registry value.

Data
The data for the value. This data can be one or more strings.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   30  
 

 
Functions Edit Registry (Number)
This dialog allows the user to edit an existing registry number value in the package, i.e.
& Features: REG_DWORD.

Dialogs

Key
Displays the registry key where the value will be added.

Name
The name of the registry value.

Data
The data for the value. This data can be any 32-bit number.

Decimal
Display the data using decimal (base 10). The valid range is 0 to 4,294,967,295.

Hexadecimal
Display the data using hexadecimal (base 16). The valid range is 0 to 0xFFFFFFFF.

Edit Registry (Binary)


This dialog allows the user to edit an existing registry binary value in the package, i.e. REG_BINARY.
Key
Displays the registry key where the value will be added.
Name
The name of the registry value.
Data
The data for the value. This data can be any binary data.

Edit Remove Registry


This dialog allows the user to edit an existing registry value to be removed by the package during
installation.

Smart Packager Key


Administration Guide Displays the registry key where the value will be removed from.
  31  
Scalable Software, Inc. Name
February 2013
  The name of the registry value to be removed during installation.
Functions Create Shortcut
This dialog allows the user to add a shortcut to the package.
& Features:
   

Dialogs

Existing file
Select this option to create a new shortcut pointing at an existing file in the package.

New file
Select this option to create a new shortcut pointing at a new file. The new file will be added to the package.

Browse
Click this button to search for and select a file from the local computer.

Name
The name of the new shortcut.

Location
The folder where the shortcut will be placed when this package is installed. Use the drop-down to select an
existing folder or type a new folder location. Typically shortcuts are installed to either [ProgramMenuFolder]
for the Windows Start menu or [DesktopFolder] for the desktop.

Description
The description is displayed when viewing the installed shortcut's properties or by a popup tool tip.

Edit Shortcut
This dialog allows the user to edit the properties of an existing shortcut.

Target
Displays the full path to the target of the shortcut.

Name
The name of the shortcut.

Location
The folder where the shortcut will be placed when this package is installed. Use the drop-down to select an
existing folder or type a new folder location. Typically shortcuts are installed to either [ProgramMenuFolder]
Smart Packager for the Windows Start menu or [DesktopFolder] for the desktop.
Administration Guide
Description
Scalable Software, Inc. The description for the shortcut. The description is displayed when viewing the installed
February 2013 shortcut's properties or by a popup tool tip.
  32  
 

 
Functions Create Service
This dialog allows the user to add a service to the package.
& Features:
Dialogs

Existing file
Select this option to create a new service pointing at an existing file in the package. Use the drop-
down to select the target file.

New file
Select this option to create a new service pointing at a new file. The new file will be added to the
package.

File browse
Click this button to search for and select a file from the local computer.

Display name
The name of the new service.

Internal name
The internal name of the new service. This name is not viewable to the end user and is only used to
access the service programmatically.

Description
The description for the new service. The description is displayed when viewing the installed
service's properties using Windows Control Panel.

Startup type
Specifies how the new service will start; automatic, manual, or disabled.
automatic: The service starts up automatically every time the computer is booted.
Smart Packager manual: The service only starts on demand for another program or service.
Administration Guide disabled: The service is disabled and cannot be started.

Scalable Software, Inc.


February 2013   33  
 

 
Functions Create Service (cont.)
Local system account
& Features:
 
The service runs as the local system authority account.
 
This is the typical setting for most services.

Dialogs Specified account


The service runs as a specified user account. Use this setting if the service requires a specific
account to gain access to network resources.

Username
Enter the username for this service. Typically the account will be specified as "Domain\Username."
This option is only enabled if "specified account" is selected.

User browse
Click this button to search for and select a user account from the local computer or domain. This
option is only enabled if "specified account" is selected.

Password
Enter the password for the specified user account. This option is only enabled if "specified account"
is selected.

Confirm password
Reenter the password for the specified user account. This option is only enabled if "specified
account" is selected.

NOTE: Windows Installer files do not encrypt the username and password. Therefore any service
marked "specified account" will have the username and password viewable as clear text within the
MSI file.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   34  
 

 
Functions Edit Service
This dialog allows the user to edit the properties of an existing service.
& Features:
 

Dialogs

Target
Displays the full path to the target of the service.

Display name
The name of the service.

Internal name
The internal name of the service. This name is not viewable to the end user and is only used to
access the service programmatically.
Description
The description for the service. The description is displayed when viewing the installed service's
properties using Windows Control Panel.

Startup type
Specifies how the service will start; automatic, manual, or disabled.
automatic: The service starts up automatically every time the computer is booted.
manual: The service only starts on demand for another program or service.
disabled: The service is disabled and cannot be started.

Local system account


The service runs as the local system authority account. This is the typical setting for most services.

Specified account
The service runs as a specified user account. Use this setting if the service requires a specific
account to gain access to network resources.

Username
Enter the username for this service. Typically the account will be specified as "Domain\Username."
This option is only enabled if "specified account" is selected.

Smart Packager User browse


Administration Guide Click this button to search for and select a user account from the local computer or domain. This
option is only enabled if "specified account" is selected.   35  
Scalable Software, Inc.
February 2013
 
Functions Edit Service (cont.)
Password
& Features: Enter the password for the specified user account. This option is only enabled if "specified account"
is selected.

Dialogs Confirm password


Reenter the password for the specified user account. This option is only enabled if "specified
account" is selected.

NOTE: Windows Installer files do not encrypt the username and password. Therefore any service
marked "specified account" will have the username and password viewable as clear text within the
MSI file.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   36  
 

 
Functions Create Tags
This dialog allows the user to add software identification tags to the package. For more details see
& Features: software identification tags.
   

Dialogs

Location
The folder where the tag file (.SWIDTAG) will be placed when this package is installed. Use the
drop-down to select an existing folder or type a new folder location. Typically tags are installed to
[CommonAppDataFolder] for all versions of Windows.

Title
The name or title of the software.

Version
The version of the software. This is specified in the form of <major>.<minor>.<build>.<revision>.

Software Creator Name


The name of the company, organization, or individual that created the software.

Software Creator RegId


The registered identification of the company, organization, or individual that created the software.
See below for formatting notes.

Licensor Creator Name


The name of the company, organization, or individual that licensed the software. Typically this is
the same as the software creator, but can be different if the licensing body is not the same as the
software's creator.

Smart Packager Licensor Creator RegId


Administration Guide The registered identification of the company, organization, or individual that licensed the

Scalable Software, Inc. software. Typically this is the same as the software creator, but can be different if the
February 2013 licensing body is not the same as the software's creator. See below for formatting notes.   37  
 
 
 
Functions Create Tags (cont.)
& Features:
  Tag Creator Name
  The name of the company, organization, or individual that created the software tags.
   
Dialogs Tag Creator RegId
The registered identification of the company, organization, or individual that created the software
tags. See below for formatting notes.

Unique ID
The unique identification for the software. This can be any string that uniquely identifies the
software. This field is combined with Unique RegId to create the tag filename, so only characters
valid in a filename can be specified in this field.

Unique RegId
The unique registered identification for the software. Typically this is the same as the tag creator
regId. This field is combined with Unique Id to create the tag filename, so only characters valid in a
filename can be specified in this field. See below for formatting notes.

Entitlement Required
Specifies whether the software requires an entitlement. An entitlement is a guarantee of access to
benefits based on established rights.

Registered Identification (RegId) Formatting


RegIds must follow strict formatting guidelines to ensure consistent unique results. The format must
be "regid.YYYY-MM.domain" where domain is the company, organization, or individual's Internet
domain name (specified in reverse order), and MM and YYYY are the month and year when that
domain was registered. For example, the regId for Microsoft Software is "regid.1991-
06.com.microsoft" and Adobe Software is "regid.1986-12.com.adobe".
 

Smart Packager
Administration Guide

Scalable Software, Inc.   38  


February 2013
 
Functions Edit Tags
This dialog allows the user to edit the properties of existing software identification tags. For more
& Features: details see software identification tags.

Dialogs

Location
The folder where the tag file (.SWIDTAG) will be placed when this package is installed. Typically
tags are installed to [CommonAppDataFolder] for all versions of Windows.

Title
The name or title of the software.

Version
The version of the software. The first version field is a user-friendly version string. This can be a
number like "12.0" or another version string like "2009." The second version field is used by
software to identify the exact version of the software. This field is specified in the form of
<major>.<minor>.<build>.<revision>.

Software Creator Name


The name of the company, organization, or individual that created the software.

Software Creator RegId


The registered identification of the company, organization, or individual that created the software.
See below for formatting notes.

Licensor Creator Name


The name of the company, organization, or individual that licensed the software. Typically this is
the same as the software creator, but can be different if the licensing body is not the same as the
software's creator.
Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   39  
 

 
Functions Edit Tags (cont.)
Licensor Creator RegId
& Features: The registered identification of the company, organization, or individual that licensed the software.
Typically this is the same as the software creator, but can be different if the licensing body is not

Dialogs the same as the software's creator. See below for formatting notes.

Tag Creator Name


The name of the company, organization, or individual that created the software tags.

Unique Id
The unique identification for the software. This can be any string that uniquely identifies the
software. This field is combined with Unique RegId to create the tag filename, so only characters
valid in a filename can be specified in this field.

Unique RegId
The unique registered identification for the software. Typically this is the same as the tag creator
regId. This field is combined with Unique Id to create the tag filename, so only characters valid in a
filename can be specified in this field. See below for formatting notes.

Entitlement Required
Specifies whether the software requires an entitlement. An entitlement is a guarantee of access to
benefits based on established rights.

Registered Identification (RegId) Formatting


RegIds must follow strict formatting guidelines to ensure consistent unique results. The format must
be "regid.YYYY-MM.domain" where domain is the company, organization, or individual's Internet
domain name (specified in reverse order), and MM and YYYY are the month and year when that
domain was registered. For example, the regId for Microsoft Software is "regid.1991-
06.com.microsoft" and Adobe Software is "regid.1986-12.com.adobe".

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   40  
 

 
Functions Completion
This is a confirmation dialog before moving the selected package to the completion phase.
& Features:
Dialog

Move this package to the Package Editor


If selected the package will be removed from the Workflow page and added to the Editor page, else
the package will remain in the workflow list as a placeholder. The package can be moved to the
editor page at a later time.

Smart Packager
Administration Guide

Scalable Software, Inc.


  41  
February 2013
 
Options Dialog
Functions This dialog offers settings that affect how the Smart Packager operates.

& Features:
Dialogs

Cleanup package files when saving a compressed package


When this option is checked, Smart Packager will delete the uncompressed files from a
package when the package is saved. If this option is not checked, the uncompressed files
are not deleted when the package is saved. This includes when the package is saved as
either partially or fully compressed. Note: that adding or removing files to a compressed
package requires the package to first be uncompressed. Therefore if this option is not
checked and a compressed package is saved, it will expand the package and not remove the
uncompressed files.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   42  
 

 
Wizards: Wizards
New Package Welcome
New The welcome page is the introduction to the New Package wizard. Use the New Package wizard to

Package create a new package from scratch.

New Package Information


This page shows the new package information such as name and folder.

Package name
Enter the name for the new package. This is the name of the package (e.g. Firefox) not the
filename. Smart Packager will automatically append the ".msi" extension to the package name for
the new package filename.

Output folder

Smart Packager Enter the output folder for the new package and supporting package files. The folder will be
Administration Guide created if it does not exist.

Scalable Software, Inc. Browse


  43  
February 2013 Click "Browse" to search for and select a folder on the local computer.
 
Wizards: Wizards
New Package Options
New This page allows the setting of options for the new package.

Package

Architecture
Enter the target architecture for the new package. Select "x86" for a 32-bit package and "x64" for a
64-bit package.
Language
Select the language for the new package from the list of available languages. By default the
package will be created using the locale of the current user.
MSI schema version
The Windows Installer schema version to use for the new package. The default is the schema
corresponding to the version of Windows Installer installed on the currently machine, up to version
4.5. It will not default to version 5.0 since there is redistributable to support such packages on older
versions of Windows. For more see Windows Installer.
Installation mode
Select the installation mode used for the new package; per-user, per-machine, or automatic.
per-user: The new package is installed for a single user.
per-machine: The new package is installed for all users.
automatic: The new package is installed per-machine if possible, but if that fails the
package is installed per-user. This setting increases the reliability of the
package by ensuring installation even when the user lacks full install
privileges.
installed per-user: This setting increases the reliability of the package by ensuring
installation even when the user lacks full install privileges.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    44  

 
Wizards: Wizards
New Package Finish
New The finish page shows a brief summary of the information before the new package is created. Click

Package "Finish" to create the new package.

Add package to the workflow page


Select this item to add the newly created package to the Workflow page of the Smart Packager.

Add package to the editor page


Select this item to add the newly created package to the Editor page of the Smart Packager.

Open package for modification


Select this checkbox to open the newly created package in the editor. This allows for immediate
editing of the new package; e.g. adding files.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   45  
 

 
Wizards: Wizards
Test Package Welcome
Test The welcome page is the introduction to the Test Package wizard. This page shows a brief

Package summary of the package to be tested. The package can be tested by performing an installation on
the local machine or a remote machine.

Install locally on this machine


Select this item to test the package by performing an installation on the current machine.

Install remotely on another machine


Select this item to test the package by performing an installation on another machine.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   46  
 

 
Wizards: Wizards
Test Package Local
Test This page is used to test the package by performing the installation and optionally uninstallation on

Package the current machine. After the package has been installed on the current machine, please verify
the package was installed and functions correctly. Removal of the package can also be tested and
verified.

Note: This wizard page only appears if "Install locally" is selected on the Test Package Welcome
page.

Install
Click "Install" to begin the installation. If the package is already installed on the current machine it
will prompt to uninstall first.

Uninstall
Click "Uninstall" to remove the package.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   47  
 

 
Wizards: Wizards
Test Package Remote
Test This page is used to test the package by performing the installation on another machine. Because

Package of network security, installing a package onto a remote computer often fails. Therefore the user
must manually go to the remote test machine and perform the installation. Copy the Windows
Installer package to the remote machine and begin installation by double-clicking on the package.
The use of a virtual machine is a convenient way to test packages. After the package has been
installed on the remote machine, please verify the package was installed and functions correctly.

Note: This wizard page only appears if "Install remotely" is selected on the Test Package Welcome
page.

Package path
The full path to the package to be tested. This package should be copied to the test computer
before installation.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   48  
 

 
Wizards: Wizards
Test Package Finish
Test The finish page allows the workflow status of the package to be changed depending on the

Package success or failure of the package. If the package failed installation, the user may wish to move the
package back to the modification phase. If the package installation was a success; however,
additional testing is required, the package should remain in the testing phase. If the package
installation was a success and no additional testing is required, the user may wish to move the
package to the completion phase.

Move this package back to the modification phase


Select this item to set the package's workflow status back to the modification phase.

Keep this package in the testing phase


Select this item to keep the package in the testing phase.

Move this package onto completion


Select this item to set the package's workflow status to the completion phase.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013   49  
 

 
Discovery Discovery Overview
Discovery is a tool used to generate a new package based upon changes to the system.
  Discovery uses a low-level device driver to monitor the system for all changes. These
   
changes are then packaged into a new Windows Installer (MSI) file. See DiscoC for a
command line driven version designed for automated scripting of the repackaging process.

The following are typical changes to a system that a user might want to repackage using
Discovery:

• Installation of one or more Windows Installer based setup packages


• Installation of one or more setup packages not based upon Windows Installer
technology.
• Manual copy or moving files; e.g. “installation” of a program that does not include a
setup installer such as those distributed in a compressed file.
• Changing of user or system settings.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February  2013 50  
 

 
Discovery Best Practices
The following are the best practices in software repackaging. They yield the best possible
  results while minimizing the post-capture modification of the package.
 
  • Close all non-essential applications. This helps to ensure the changes added to the
  new package are only those changes made by the desired application and not other
  programs that were active on the system at the time of capture.
 
  • Use a clean system. Many applications do not fully uninstall, therefore subsequent
  reinstallations will not create the full set of files and registry keys associated with the
  package.
 
  • Stop anti-virus and other similar programs. It is not uncommon for anti-virus software
  to block applications from making changes to the system which would result in an
  incomplete repackaging.
 
  • Disable Windows update and other auto-updating programs.
 
• Ensure the system is not busy performing other tasks, e.g. search indexing.
 
  • After installation is complete, wait a few seconds before stopping the monitoring
 
process. Some installations continue modifying the system even after the installation
 
  program has completed. Non-MSI installations can spawn child processes which can
  continue to modify the system. Even MSI-based installations can use the Windows
  Installer Service to perform installation tasks after the initial setup has completed.
 
  • Perform the capture on a system that is very similar to the final target systems. For
  example, for an organization that uses Windows XP SP3 with .NET 4.0, do not
  perform the capture on Windows 7 SP1.
 
  • Consider handling dependencies separately from main applications.
 
• Consider the use of a virtual machine as the machine on which the package is
 
captured. For more details see virtual machines.
 
 
 
 
   
 
 
 
 
 
 
 
 
 
 
 
Smart Packager
Administration Guide

Scalable Software, Inc.


February  2013 51  
 

 
Discovery Dependencies
It is very common for software to depend on a common set of files and libraries, typically
  referred to as   "dependencies." Often times these dependencies are available in a Merge
Modules—a self-contained Windows Installer file with all the files and logic necessary to
install the dependency. Smart Packager includes a library of over 280 of the most common
merge modules for inclusion in new packages. When Discovery detects the installation of a
dependency it scans the library of available merge modules and includes the appropriate
merge modules in the new package.

1. The user can freely add or remove merge modules to the included library by
following these simple steps:
2. Add or remove files from the "Merge Modules" folder where the Smart Packager files
were installed.
Delete the file "mmcache.dat." This file contains a cached list of scanned merge modules.
The file will be automatically regenerated with the updated list of available merge modules.

Issues with Merge Modules

Although merge modules are a great way to handle dependencies, their use can lead to
problems with software repackaging. Merge modules were not designed with the inclusion of
multiple modules in mind. As such, some merge modules conflict with each other. The end
result is repackaging software that depends on multiple merge modules, especially different
versions of the same dependency, often fails. The best solution to this problem is to handle
dependencies separate from the software that requires it.

The first step is to repackage the software without any dependencies. To do this first identify
all dependencies of the software. Before running Discovery, manually install all dependencies
on the discovery computer or virtual machine. After installation a reboot may be required.
Next, run Discovery and repackage the software. Since the dependencies were previously
installed, this will repackage the software without any dependencies. The final step is to
handle dependencies manually on any machine the repackaged software is installed on to.
This can be done manually by installing the same dependencies used on the discovery
computer or virtual machine. Or one can use Discovery itself to repackage each individual
dependency into a new MSI file that can be installed on target computers.

Smart Packager
Administration Guide

Scalable Software, Inc.


 
February 2013 52  
 

 
Discovery Dependencies (cont.)
Redistributable dependency installations

Below are links to redistributable installers for the most common Microsoft dependencies.
These can be downloaded and installed on computers to allow manual handling of
dependencies.

Microsoft Visual C++ 2005 version 8.0.50727.42


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=3387
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=21254

Microsoft Visual C++ 2005 version 8.0.50727.762


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5638
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=18471

Microsoft Visual C++ 2005 version 8.0.50727.4053


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=14431

Microsoft Visual C++ 2005 version 8.0.50727.6195


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26347

Microsoft Visual C++ 2008 version 9.0.21022.8


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=29
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=15336

Microsoft Visual C++ 2008 version 9.0.21022.218


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=10430

Microsoft Visual C++ 2008 version 9.0.30411.0


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=10015
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=16771

Microsoft Visual C++ 2008 version 9.0.30729.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5582
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=2092

Microsoft Visual C++ 2008 version 9.0.30729.4148


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=11895

Microsoft Visual C++ 2008 version 9.0.30729.6161


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26368

Microsoft Visual C++ 2010 version 10.0.30319.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5555
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=14632

Microsoft Visual C++ 2010 version 10.0.30319.415


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=21576

Microsoft Visual C++ 2010 version 10.0.40219.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=8328
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=13523

Microsoft Visual C++ 2010 version 10.0.40219.325


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26999

Microsoft XML Services (msxml) 6.0


Download link (x86 and x64): http://www.microsoft.com/en-us/download/details.aspx?id=3988

Smart Packager
Administration Guide

Scalable Software, Inc.  


February  2013 53  
 

 
Discovery Command Line Syntax
SmartPackager.exe
   
/w:<package path>
Adds the specified package to the list of packages on the Workflow page.

/e:<package path>
Adds the specified package to the tree of packages on the Editor page.

Examples:

SmartPackager.exe /w:"C:\Packages\libre_office.msi"

SmartPackager.exe /e:"C:\Program
Files\Scalable\SmartPackager\Packages\firefox.msi"

Discovery.exe

/u Sets the default installation mode for the new package to "per user." This option
cannot be specified with /m.

/m Sets the default installation mode for the new package to "per machine." This option
cannot be specified with /u.

/r Sets the default packaging mode for the new package to "regular." This option
cannot be specified with /s.

/s Sets the default packaging mode for the new package to "smart repackaging." This
option cannot be specified with /r.

/c- Creates the new package uncompressed. By default new packages are created fully
compressed.

/r- Prevents creation of the results HTML files. By default a results HTML file is
generated with details of the newly created package.

/d Enables diagnostic mode. When diagnostic mode is enabled, Discovery does not
cleanup the temporary files used to create the package.

Examples
Discovery.exe /m /c-
Discovery.exe /d

Note: For a greater control and scripted use of Discovery, see the DiscoC command line
options.

Smart Packager
Administration Guide

Scalable Software, Inc.


 
February 2013 54  
 

 
Discovery: License Key Dialog
This dialog displays the Smart Packager license key as well as allows the user to enter a new
  Dialog license key. For more details see Smart Packager licensing.
 
 

Existing License Key


Displays the existing license key (if any), as well as product edition and the date and day count
until expiration. If no license has been entered the product functions as Smart Package CE.

New License Key


Enter a new license key for the Smart Packager.

Validate
Click this button to validate the license key to ensure the key was typed correctly into the product.
After validation it will display the date and day count until expiration. Click OK to accept the new
license key or Cancel to retain the existing key.

 
 

Smart Packager
Administration Guide

Scalable Software, Inc.


 
February 2013
55  
 

 
Discovery: Evaluation
In accordance with the licensing agreement, Smart Package CE will not repackage installations
Dialogs based upon the Windows Installer. This dialog is displayed allowing the user to evaluate Smart
Packager Pro for 7 days. Please fill out the form and a new license key will be emailed to the email
address supplied.

First name
Enter your first name.

Last name
Enter your last name.

Organization
Enter your organization's name.

Email
Enter your email address. A new license key will be sent to this address.

Phone
Enter your phone number.

Note: Your privacy is important to us. We will not sell, transfer, or otherwise disclose your personal
information to any third party.

Smart Packager
Administration Guide

Scalable Software, Inc.  


February  2013 56  
 

 
Discovery Welcome Page

The welcome page is the introduction to the Discovery wizard. This is a good time to ensure all
non-essential programs are closed before beginning the repackaging process.

The user can also view the best practices to ensure the most reliable results when repackaging.
 
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
  57  
 

 
Discovery Package Page  
This page shows the new package information such as name and folder.

Package name
Enter the name for the new package. This is the name of the package (e.g. Firefox) not the
filename. Discovery will automatically append the ".msi" extension to the package name for the
new package filename.

Output folder
Enter the output folder for the new package and supporting package files. The folder will be
created if it does not exist.

Browse
Click "Browse" to search for and select a folder on the local computer.

Show advanced options


Select this item to show additional options during package creation. If this item is not selected then
the Discovery wizard will be greatly simplified and package creation will use the default options.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
 
  58  

 
Discovery Options Page  
This page allows the setting of advanced options for the new package.

Note: This wizard page only appears if "Show advanced options" is selected on the Package page.

Create compressed MSI package


Create a fully compressed Windows Installer package. If this item is not selected the new package
will be uncompressed. The default is to create a fully compressed package.

MSI schema version


The Windows Installer schema version to use for the new package. The default is the schema
corresponding to the version of Windows Installer installed on the currently machine, up to version
4.5. It will not default to version 5.0 since there is redistributable to support such packages on older
versions of Windows. For more see Windows Installer.

Generate results HTML file


Generate an HTML results during package creation. This results file contains all packaging settings
used, plus a full list of files, folders, registry keys, and registry values.

Packaging mode
Select the packaging mode used when creating the new package; regular, smart repackaging, or
automatic.
regular: Create an entirely new package based upon the monitored changes to
the system.
smart repackaging: The new package is generated in such a way as to preserve Windows
Installer features such as auto-repair and patching. This is the
recommend setting when repackaging a Windows Installer installation.
For more information see smart repackaging.
automatic: Discovery automatically uses the best packaging setting depending on
what is being repackaged. If a Windows Installer package is being
repackaged it will use smart repackaging, otherwise it will use the
regular packaging mode.
Installation mode
Select the installation mode used for the new package; per-user, per-machine, or automatic.
per-user: The new package is installed for a single user.
Smart Packager per-machine: The new package is installed for all users.
Administration Guide automatic: The new package is installed the same as the original package. If
the original package installs per-user the new package will be
Scalable Software, Inc. created per-user, and the same with per-machine. However, some
February 2013 installation packages may install both per-user and per-machine
    59  
files, in this case "automatic" attempts to determine the best setting
for the new package.
 
 
Discovery Signing Page  
Use this page to optionally add a digital signature to the new package. If an organizations has a
  code-signing   certificate, then they can use that certificate to sign the new package. The package
can also be "self-signed." For more details see creating a self-signing certificate. All certificates,
regardless of the type, must be added to the current machine's certificate store to be accessible for
package signing.

Note: This wizard page only appears if "Show advanced options" is selected on the Package page.

Sign package with a digital signature


Select this item to apply a digital signature to the new package.

Signing Certificate
Shows the name of the certificate that will be used to digitally sign the new package.

Browse
Browse the current machine's certificate store to select the certificate. It will only show certificates
installed in the certificate store available to the current user and local machine.

Time Server
Enter the URL of an Internet time server. The dropdown is pre-populated some several of the most
common code-signing time servers. This field is optional but recommend to ensure valid signing.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February  2013 60  
 

 
Discovery File Exclusions Page  
This page allows files and folders to be excluded from the monitoring process. Discovery monitors
all file and folder activity except files and folders listed here. These files and folders will be
   
excluded from the new package. Discovery comes pre-populated with exclusions that omit typical
background Windows activity thereby preventing normal Windows operations from being added to
the new package. Some users may need to add additional exclusions to this list.

Depending on the type of software being repackaged, some of the existing exclusions may need to
be removed. For example, by default Discovery excludes Internet Explorer activity. However, to
correctly capture a package that installs an Internet Explorer plug-in may requires one or more of
these filters to be removed.

Exclusion filters can be one of 4 types; begins with, ends with, contains, and exact match.
begins with: Items will be excluded if they begin with the same path as this filter.
ends with: Items will be excluded if they end with the same path as this filter.
contains: Items will be excluded if any part of the path matches this filter.
exact match: Items will be excluded if they are an exact match with this filter.

Note: This wizard page only appears if "Show advanced options" is selected on the Package page.

Exclusion list
Shows the current list of file and folder exclusions.

Add
Adds a new file exclusion to the list.

Remove
Removes the selected exclusion(s) from the list.
 

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    61  

 
Discovery Registry Exclusions Page  
This page allows registry keys to be excluded from the monitoring process. Discovery monitors all
   
registry key activity except keys listed here. These keys will be excluded from the new package.
Discovery comes pre-populated with exclusions that omit typical background Windows activity
thereby preventing normal Windows operations from being added to the new package. Some users
may need to add additional exclusions to this list.

Depending on the type of software being repackaged, some of the existing exclusions may need to
be removed. For example, by default Discovery excludes Internet Explorer activity. However, to
correctly capture a package that installs an Internet Explorer plug-in may requires one or more of
these filters to be removed.

Exclusion filters can be one of 4 types: begins with, ends with, contains, and exact match.
begins with: Items will be excluded if they begin with the same path as this filter.
ends with: Items will be excluded if they end with the same path as this filter.
contains: Items will be excluded if any part of the path matches this filter.
exact match: Items will be excluded if they are an exact match with this filter.

Note: This wizard page only appears if "Show advanced options" is selected on the Package page.

Exclusion list
Shows the current list of registry key exclusions.

Add
Adds a new registry key exclusion to the list.

Remove
Removes the selected exclusion(s) from the list.

Smart Packager
Administration Guide

Scalable Software, Inc.


 
February 2013 62  
 

 
Discovery App-V Page  
Discovery can simultaneously create both a Windows Installer package and a Microsoft Application

  Virtualization (App-V)
  package. Creating an App-V package requires that the App-V Sequencer is
installed on the local computer. For more details see App-V.

Note: This wizard page only appears if "Show advanced options" is selected on the Package page
and if the App-V Sequencer is installed on the local machine.

Create App-V package


Select this item to create an App-V package in addition to a Windows Installer package.

Output Folder
Enter the output folder for the new App-V package files. The folder will be created if it does not
exist.

Browse
Click "Browse" to search for and select an existing folder.

Create compressed App-V package


Create a compressed App-V package. If this item is not selected the new App-V package will be
uncompressed.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
  63  
 

 
Discovery Sequence Page  
On this page the package will be installed during which time all changes to the computer will be
recorded. From this data the new repackaged installation will later be created.
   

Note: This wizard page only appears if "Show advanced options" is selected on the Package page
and if the App-V Sequencer is installed on the local machine.

Package to install
Enter the path to the installation package. The path can be to an executable file (.EXE, .BAT, etc.)
or a Windows Installer MSI file.

Browse
Click "Browse" to search for and select an installation package on the local computer.

Start Discovery
Click "Start Discovery" to begin the repackaging process. The specified setup will be launched and
the changes from that package will be captured. After installation is complete, Discovery will
automatically stop the live system capture. In order to capture the installation of multiple packages
while using App-V, you must place all the setup packages into a single batch file and specify that
file in the "Package to install" field.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    64  

 
Discovery Monitor Page  
On this page the package will be installed during which time all changes to the computer will be
recorded. From this data the new repackaged installation will later be created. Repackaging an
   
installation is a three step process.

Step 1: Click "Start Discovery" to start monitoring the system for changes.
Step 2: Modify the computer with the files, settings, and actions that are to be packaged.
Typically this involves installing one or more applications. However, Discovery will
repackage anything including system and user settings, deleting files, uninstalling
programs, etc.
Step 3: Click "Stop Discovery" to stop monitoring the system for changes.

Start Discovery
Click "Start Discovery" to begin monitoring the system for changes.

Stop Discovery
After the package is installed and all changes are complete, click "Stop Discovery" to stop
monitoring the system for changes.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    65  

 
Discovery Results Page  
This page shows the results of the system monitoring. All new, modified, and deleted files, folders,

  and registry keys


  and values are displayed. Folders are shown in the left pane and individual items
are shown in the right pane. The user can view the results and optionally remove items to prevent
them from being added to the new package.

Modified Files
Select this tab to view the newly created and modified files and folders.

Deleted Files
Select this tab to view the deleted files and folders.

Modified Registry
Select this tab to view the newly created and modified registry keys and values.

Deleted Registry
Select this tab to view the deleted registry keys and values.

Remove
Removes the selected item so it will not be added to the new package. If the selected item is a
folder or registry key it will perform a recursive delete.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
  66  
 

 
Discovery Finish Page  
The finish page shows a brief summary of the information before the new package is created. Click
"Finish" to begin the package creation.
   

Add new package to the Smart Packager


Select this checkbox to automatically add the newly created package to the Smart Packager
Workflow page.

Open package folder after creation


Select this checkbox to open a Windows Explorer window in the directory of the newly created
package.

Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
    67  

 
Discovery Overview
Command Discovery Command Line version (or DiscoC) functions like Discovery in that it generates a
  new package based upon changes to the system. However, it has no user interface and is
Line driven entirely from the command line. This allows for automated scripting of the repackaging
process. DiscoC uses a low-level device driver to monitor the system for all changes. These
changes are then packaged into a new Windows Installer (MSI) file.

The following are typical changes to a system that a user might want to repackage using
DiscoC:
• Installation of one or more Windows Installer based setup packages.
• Installation of one or more setup packages not based upon Windows Installer
technology.
• Manual coping or moving of files; e.g. "installation" of a program that does not
include a setup installer such as those distributed in a compressed file.

Best Practices
The following are the best practices in software repackaging. They yield the best possible
results while minimizing the post-capture modification of the package.

• Close all non-essential applications. This helps to ensure the changes added to the
new package are only those changes made by the desired application and not other
programs that were active on the system at the time of capture.

• Use a clean system. Many applications do not fully uninstall, therefore subsequent
reinstallations will not create the full set of files and registry keys associated with the
package.

• Stop anti-virus and other similar programs. It is not uncommon for anti-virus software
to block applications from making changes to the system which would result in an
incomplete repackaging.

• Disable Windows update and other auto-updating programs.

• Ensure the system is not busy performing other tasks, e.g. search indexing.

• After installation is complete, wait a few seconds before stopping the monitoring
process. Some installations continue modifying the system even after the installation
program has completed. Non-MSI installations can spawn child processes which can
continue to modify the system. Even MSI-based installations can use the Windows
Installer Service to perform installation tasks after the initial setup has completed.

• Perform the capture on a system that is very similar to the final target systems. For
example, for an organization that uses Windows XP SP3 with .NET 4.0, do not
perform the capture on Windows 7 SP1.

• Consider handling dependencies separately from main applications.

Smart Packager • Consider the use of a virtual machine as the machine on which the package is
Administration Guide captured. For more details see virtual machines.

Scalable Software, Inc.  


February   2013 68  
 

 
Discovery Dependencies
Command Itreferred
is very common for software to depend on a common set of files and libraries, typically
   
to as "dependencies." Often times these dependencies are available in a Merge
Line Modules—a self-contained Windows Installer file with all the files and logic necessary to
install the dependency. Smart Packager includes a library of over 280 of the most common
merge modules for inclusion in new packages. When Discovery detects the installation of a
dependency it scans the library of available merge modules and includes the appropriate
merge modules in the new package.

1. The user can freely add or remove merge modules to the included library by
following these simple steps:
2. Add or remove files from the "Merge Modules" folder where the Smart Packager files
were installed.
Delete the file "mmcache.dat." This file contains a cached list of scanned merge modules.
The file will be automatically regenerated with the updated list of available merge modules.

Issues with Merge Modules


Although merge modules are a great way to handle dependencies, their use can lead to
problems with software repackaging. Merge modules were not designed with the inclusion of
multiple modules in mind. As such, some merge modules conflict with each other. The end
result is repackaging software that depends on multiple merge modules, especially different
versions of the same dependency, often fails. The best solution to this problem is to handle
dependencies separate from the software that requires it.

The first step is to repackage the software without any dependencies. To do this first identify
all dependencies of the software. Before running Discovery, manually install all dependencies
on the discovery computer or virtual machine. After installation a reboot may be required.
Next, run Discovery and repackage the software. Since the dependencies were previously
installed, this will repackage the software without any dependencies. The final step is to
handle dependencies manually on any machine the repackaged software is installed on to.
This can be done manually by installing the same dependencies used on the discovery
computer or virtual machine. Or one can use Discovery itself to repackage each individual
dependency into a new MSI file that can be installed on target computers.

Smart Packager
Administration Guide

Scalable Software, Inc.


 
February 2013 69  
 

 
Discovery Dependencies (cont.)
Command Redistributable dependency installations
    to redistributable installers for the most common Microsoft dependencies.
Line Below are links
These can be downloaded and installed on computers to allow manual handling of
dependencies.

Microsoft Visual C++ 2005 version 8.0.50727.42


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=3387
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=21254

Microsoft Visual C++ 2005 version 8.0.50727.762


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5638
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=18471

Microsoft Visual C++ 2005 version 8.0.50727.4053


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=14431

Microsoft Visual C++ 2005 version 8.0.50727.6195


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26347

Microsoft Visual C++ 2008 version 9.0.21022.8


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=29
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=15336

Microsoft Visual C++ 2008 version 9.0.21022.218


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=10430

Microsoft Visual C++ 2008 version 9.0.30411.0


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=10015
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=16771

Microsoft Visual C++ 2008 version 9.0.30729.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5582
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=2092

Microsoft Visual C++ 2008 version 9.0.30729.4148


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=11895

Microsoft Visual C++ 2008 version 9.0.30729.6161


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26368

Microsoft Visual C++ 2010 version 10.0.30319.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=5555
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=14632

Microsoft Visual C++ 2010 version 10.0.30319.415


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=21576

Microsoft Visual C++ 2010 version 10.0.40219.1


Download link (x86): http://www.microsoft.com/download/en/details.aspx?id=8328
Download link (x64): http://www.microsoft.com/download/en/details.aspx?id=13523

Microsoft Visual C++ 2010 version 10.0.40219.325


Download link (x86 and x64): http://www.microsoft.com/download/en/details.aspx?id=26999

Microsoft XML Services (msxml) 6.0


Download link (x86 and x64): http://www.microsoft.com/en-us/download/details.aspx?id=3988

Smart Packager
Administration Guide

Scalable Software, Inc.  


February 2013
  70  
 

 
Discovery DiscoC Command Line
Command DiscoC.exe
/Config:<filename.ini>
Line Specifics the configuration file containing all the settings for repackaging. See below for the
config file syntax.

Examples
DiscoC.exe /Config:"FirefoxRepackage.ini"

Configuration INI File Settings


The config INI file follows the standard syntax for Windows INI files. Below are the valid
sections and values.

[General]
PackageName=Firefox
The name for the new package. This is the name of the package (e.g. Firefox) not the
filename. DiscoC will automatically append the ".msi" extension to the package name for the
new package filename. This setting is required.

PackageFolder=Packages\Firefox
The output folder for the new package and supporting package files. The folder will be
created if it does not exist. The path can be specified relative (as shown here), a full path
(C:\Packages\Firefox), or as a UNC path. If this setting is omitted DiscoC will default to the
"Packages" folder under the folder containing DiscoC.exe.

InstallPackage="C:\Install\Firefox Setup.exe"
Specifies the program to be installed or executed for repackaging (executable file, MSI file, or
batch file). Do not add command line options to this field. In order specify command line
options for installation, create batch file containing the command line and options and specify
that file in this field. This setting is required.

Compressed=0
Specifies whether the output package is to be fully compressed or uncompressed. Values
are 0 for uncompressed and 1 for fully compressed. If omitted the default value is 1 (fully
compressed).

Results=0
Specifies whether to create a results HTML file during package creation. This results file
contains all packaging settings used, plus a full list of files, folders, registry keys, and registry
values. Values are 0 for no log file and 1 to create a log file. If omitted the default is 1 (create
a log file).

MsiVersion=300
The Windows Installer schema version to use for the new package. Values are 300, 400,
405, and 500 for MSI versions 3.0, 4.0, 4.5, and 5.0 respectively. The default is the schema
corresponding to the version of Windows Installer installed on the currently machine, up to
version 4.5. It will not default to version 5.0 since there is redistributable to support such
Smart Packager
packages on older versions of Windows. For more see Windows Installer.
Administration Guide

Scalable Software, Inc.


February  2013 71  
 

 
Discovery DiscoC Command Line (cont.)
Command Specifies the packaging mode used when creating the new package. Values are Regular, Smart,
PackagingMode=Smart

Line and Auto.


regular: Create an entirely new package based upon the monitored changes to the system.
smart: The new package is generated in such a way as to preserve Windows Installer
features such as auto-repair and patching. This is the recommend setting when repackaging a
Windows Installer installation. For more information see Smart Repackaging.
auto: Discovery automatically uses the best packaging setting depending on what is being
repackaged.

If a Windows Installer package is being repackaged it will use smart repackaging, otherwise it will
use the regular packaging mode.

InstallMode=Machine
Specifies the installation mode used for the new package. Values are User, Machine, and Auto.
user: The new package is installed for a single user.
machine: The new package is installed for all users.
auto: The new package is installed the same as the original package.
If the original package installs per-user the new package will be created per-user, and the
same with per-machine. However, some installation packages may install both per-user and
per-machine files. In this case, "automatic" attempts to determine the best setting for the new
package.

EnableMergeModules=0
Specifies whether the merge modules folders will be used during repackaging. Since some Merge
Modules conflict with each other, this setting allows all merge modules to be ignored. Values are 0
to disable merge modules and 1 to enable merge modules. If omitted the default value is 1(enabled
merge module support).

DiagMode=1
Enables diagnostic mode. When diagnostic mode is enabled, DiscoC does not cleanup the
temporary files used to create the package. If omitted the default value is 0.

[AppV]
Capture=1
Enables the simultaneous creation of an App-V package. Values are 0 to only create a Windows
Installer package or 1 to also create an App-V package. The default value is 0. Creating an App-V
package requires that the App-V Sequencer is installed on the local computer. For more details see
App-V.

PackageFolder=C:\Output\AppV
Specifies the output folder for the new App-V package. DiscoC will append the package name to
the path (e.g. C:\Output\AppV\Firefox) and will create the folder. If the folder already exists it will be
overwritten. The path can be specified relative (as shown here) or a full path (C:\Packages\Firefox).
If this setting is omitted DiscoC will default to the current user's desktop.

Smart Packager
Administration Guide

Scalable Software, Inc.


February   2013 72  
 

 
Discovery DiscoC Command Line (cont.)
Command Specifies whether the output App-V package is to be compressed or uncompressed. Values are 0 for
Compressed=0

 
Line uncompressed and 1 for compressed. If omitted the default value is 0 (uncompressed).
AdditionalParams=/MSI
Specifies additional parameters for the App-V Sequencer. Any additional parameters will be passed
to App-V without validation, so check the App-V Sequencer command line syntax for valid options.

[MergeModuleFolders]
0=Merge Modules
1=C:\MMCache
2=\\server\share\MSMs
Specifies the location of one or more merge module cache folders. The folders can be specified a
relative path, full path, or a UNC path. These folders are scanned and an index file named
"mmcache.dat" is created. If the file mmcache.dat exists, the merge module folders are not
rescanned. So if there is a change to the merge module folders delete the file mmcache.dat to ensure
the new folders are scanned.

[FileFilter.Add]
0=0,C:\Files
1=3,C:\DiscoC.ptl
2=2,\Temp\
This section specifies additional file exclusion filters.
The syntax is "<type>,<filter>"
Type can be:
0 = Begins with
1 = Ends with
2 = Contains
3 = Exact match
So "2,Adobe\Temp" is any path which contains "Adobe\Temp"

[FileFilter.Remove]
0=0,C:\Windows\Temp
1=3,C:\Windows\system32\perfc009.dat
This section specifies default file exclusion filters to be removed. The syntax is the same as the
FileFilter Add section.

[RegFilter.Add]
0=0,HKEY_CURRENT_USER\Printers
1=2,\ControlSet002\
This section specifies additional registry exclusion filters. The syntax is the same as the FileFilter.Add
section.

[RegFilter.Remove]
0=0,HKEY_CURRENT_USER\SessionInformation
1=0,HKEY_LOCAL_MACHINE\SECURITY
This section specifies default registry exclusion filters to be removed. The syntax is the same as
FileFilter.Add section.
Smart Packager
Administration Guide

Scalable Software, Inc.


February 2013
  73  
 

Вам также может понравиться