Application Packaging Workflow
Requirements
Tech Review
Apply Packaging Method
Test / Correct
Deploy To pilot users
Mass Deployment
Methods
Application Repackaging:
1. Apps which are only Exe. Capture changes after the installation.
a. Find if exe contains MSI (Turn off Windows installer from services).
b. Try installing exe, if the file contains msi, it will call Windows Installer service.
c. With exe packaging - No self-healing, no repair, difficult to handle upgrade, no rollbacks,
difficult to get reports of failed installation, no transparency of installed files/folder/registry.
Process
1. Pre-snapshot
a. Clean Machine snapshot.
b. Installation
2. Post-Snapshot
a. Snapshot After snapshot.
Change in system = Post Snapshot – Pre Snapshot = Change.msi
Open MIS with Install Shield.
Changes from Install Shield
1. Take pre-snapshot -> Capture Installation using re-packaging wizard – Use
“Snapshot” -> “Multiple Steps”.
2. Install the application.
3. Take Post snapshot -> Capture an installation -> Snapshot -> Multiple Steps-> Analyse
status changes -> Product Name (Name_Version, Version, Company Name).
4. Output Location.
5. Open Admin Studio -> Post snapshot.
6. Check “Files and Folders” -> Exclude unnecessary folders and files.
7. Same with Registry Entries – Remove everything from “Current Users”.
8. In HKEY_Local_Machine -> Remove anything not related to the program eg –
Microsoft Folder, Wow643, System.
9. Same with “Shortcuts” folder.
10. Give “Package Information”.
11. Save.
12. Build -> Produce MSI out of it.
Use MSI to change settings
Open MIS with ‘Install Shield’.
1. General Information.
2. Copy Product Code.
3. Install Condition -> To change the install location.
4. Title -> Change to Name of app.
5. Author -> Company Name Packaging Team.
6. Template summary -> Sows bits and 1033 as English language.
7. Add or Remove Programs ->
a. Disable Change Button.
b. Disable Remove Button.
c. only provide repair options.
8. Shortcut -> Make sure it is “Advertised” for self heal.
9. Registry
10. Property Manager.
a. Agree to licence -> Yes.
b. AllUsers ->1 (For machine level), 2 – Only for current user.
c. RebootYESNO -> No.
d. Add new property -> REBOOT : REALLYSUPRESS
e. Add ROOTDRIVE : C:\
11. Save.
Open CMD as Admin.
PackageName_Context.msi /?
For list of commands to install with command line.
misexec.exe /i appname.msi /q /norestart /i*v c:/temp/logfile.log
Application Transform
- Only with MSI app.
- Customize installation behaviour.
- User can Change, Repair, Uninstall from control panel.
misexec.exe /i appname.msi /q /norestart
Change i to x to uninstall the application.
Edit MSI with Installshield.
1. General Information: Change Product Name standard (Manufacturer Name Appname
Version).
2. Same title as above.
3. Subject : Same
4. Author: Comanyname Packaging team.
5. Disable Change Button, Disable Remove Button to “Yes”.
6. Disable Repair Button to “No”.
7. Publisher: Manufacturer name.
8. Shortcut: Remove unnecessary shortcuts.
9. Propery Manager
a. Licence Accepted : “1” (Yes”
b. AllUser: 1
c. REBOOT = REALLYSUPPRESS
d. ROOTDRIVE = C:\
10. Save.
11. Install and test.
Authoring or Building MSI from loose file application
1. Open Shield.
2. New Project -> Project Name.
3. Application Information.
4. Installation Designer.
a. Change Title and Subject.
b. Template summary (Intel)
c. Disable Change and Remove Button.
d. INSTALLDIR
5. Files and Folder -> Copy content to Destination computer folders.
6. Project Assistant -> Application Shortcuts -> Locate exe –> Rename ->
7. Installation Interview
a. License Agg -> No
8. Build Installation.
9. Tool -> Open Release File.
10. If exe -> Extract MIS from exe.
11. CMD: setupfile.exe
12. Go to %temp% to get msi file.
Silent Installation of EXE
Package Microsoft Office Application
1. Go to setup.exe folder location in CMD admin.
2. Cmd: setup.exe /admin
3. You’ll office customization tool
4. Modify Setup Properties: Add (SETUP_REBOOT, NEVER), (ALLUSER, 1).
5. Configure Shortcut.
PSADT
PSAppDeployToolkit_v3.9.3\Toolkit\Deploy-Application.ps1
Modify below.
Variable Declaration
1. $appVendor = “Google”
2. $appName=”Google Chrome”
3. $appVersion = “101.3”
4. $appArch=”x64”
5. Etc
Pre-Installation:
Installation:
Execute-MSI -Action Install -Path Chrome.MSI
Post Installation:
Pre-Uninstall
Uninstallation
Once all the details are completed, run cmd as admin and go to the folder Toolkit.
Cmd: deploy-application.exe Install
Deploy-application.exe Uninstall
Application with Pre-requisite
Application Deployment using MECM
1. Download file from vendor.
2. Put file on a shared location
3. Upload to MECM.
4. Distribute to the distribution point.
5. Deploy
App Deployment in Available Mode (App will be there in SC, user will have
option to install or uninstall)
Create Application
Under Application –> Create Application –> Give location -> Enter General Information -> Installation
Program (msiexec /i /q /norestart appname.msi /l*v c:\temp\log.log ) -> Install behavior ->
Distribute the app
Right click -> Distribute Content ->Next -> Next -> Distribution Point -> Next -> Close
Change icon from properties.
Deployments Types -> Update Content (New version get’s distributed after any changes)
Deploy
Right Click on app -> Deploy -> Collections (Choose Collections) -> Device Collections -> Windows 10
-> If you forgot to distribute before you can click on ‘Add’ and add distribution point -> Next -> Install
or Uninstall -> Purpose “Available” -> Leave schedule -> Display notifications -> Next -> Alerts -> Next
Collections -> User Collections, Device Collections
Application installation Required Mode (Install automatically, forceful)
Global Conditions
EXE application deployment
App Name
Publisher
Version
Icon
Content Location
Install Program
Uninstall Program: UninstallString from below location (use in double quotes)
Detection Method: Regedit -> Local Machine -> Software -> Microsoft -> Windows -> CurrentVersion
-> Uninstall -> Rightclick find app name -> [For 64 bit] -> VLC -> Copy KeyName
For 32 bits: Hkey L M -> wow32Node -> Microsoft -> Windows -> CurrentVersion -> Uninstall ->
Log file is C:\windows\ccm\logs\AppEnforce.log
Installing Packages
Package Name:
Manufacturer Name:
Language:
Version:
Source Folder:
1. Program Name: Install_Java
a. Command Line
3. Program Name: Uninstall_Java
Command Line: Get from Registry
Exe Deployment using Package
Execmgr -> Log file for package
MIS -> Create from package definition as msi contains all the details automatically. Just give file
location and go next next next.
For exe: You’ll need to enter all the details.