ConfigMgr - An Administrator's Guide to Deploying Applications using PowerShell
ConfigMgr - An Administrator's Guide to Deploying Applications using PowerShell
About the Book
My manager asked me to deploy an application: "Should be simple", he said. "It's a Setup.exe and part-way through the installer, the user has to make a choice from a drop-down menu - they must select 'Sage Enterprise Management' and you know they wont, so make sure that part's automated"
"After that, I have one more urgent deployment; you'll need to customise an xml file which needs to be copied to a specific folder structure that may or may not already exist on the computer. And there's an Excel Add-in - so we'll need it to be automatically picked up by Excel and activated so that the tab appears with no end-user config. Should be a piece of cake."
Fed up of sand being kicked in your face? Exactly how do you deploy a PowerShell script? What if it's a function? What if it's not? What if it accepts parameters? How do you know which properties of your MSI can be tweaked and even more importantly, how do you know what values can be passed to them? What about detection rules? What if there's nothing to detect? Help!
If you would like to know how to achieve all of this and much, much more using Microsoft Configuration Manager (SCCM) and PowerShell then you will want to read this book.
Reader Testimonials
Nathan L
Developer
Woah I had no idea about all these flags and properties available via MSIEXEC! Thanks Oz, I can see this being really useful for getting a base VM from 0 to Infor installation ! Thanks very much. It’s really clear and concise too. You should write more!
Table of Contents
-
- Introduction
- Who This Book Is For
-
How This Book is Organised
- Code
- The Sum of Its Parts
-
Part 1: Why Use PowerShell?
-
PowerShell Cmdlets
- Write-Host
- Get-Location
- Set-Location
- Push-Location \ Pop-Location
- Get-Process \ Stop-Process
- Start-Process
- New-Item
- New-ItemProperty
- Get-Item
- Test-Path
- Try \ Catch
- Copy-Item
- The Story so Far
-
PowerShell Cmdlets
-
Part 2: MSIEXEC
-
Fundamentals
- View the help
- Where Is It?
- Better to use $Env:
-
Parameters
- Installation
- Silent Install
- No Restart
- Uninstall
-
Properties
- Which Properties Can I Set?
- How to Find Valid Property Values
-
Uninstall GUIDs
- 32-bit Installations
- 64-bit Installations
-
Setup.exe
- Example MSI Extraction
- The Story so Far
-
Fundamentals
-
Part 3: Detection Rules
- Why Use PowerShell?
-
Detection Fundamentals
- The Microsoft “Rules”
- In Practice
- Where Do I Put My Detection Rules Anyway?
- Silently Continue
-
Detection Rule Context
- Why Context Matters
- The Solution
- To Summarise
-
Detection Types
- File \ Folder Presence
- Executable Presence
- Executable Version
- Registry Key
- Registry Value
-
Custom Detection
- Why Use Custom Detection?
- By File
- By Registry
-
Branching
- By Office Bitness
-
Examples
- Mimecast Detection (Branching Example)
- Java Detection (This and This)
- The Story so Far
-
Part 4: Location, Location, Location
-
Where Is This Script Running from Anyway?
- How We Used to Do Things
- The Various Solutions
- A Better Way
-
File Placement
- Where to Place Your Files for Deployment
-
Referencing Files
- Referencing Files in a Flat Structure
- Referencing Files in Subdirectories
- If You’re Elsewhere…
- And Finally…
- The Story so Far
-
Where Is This Script Running from Anyway?
-
Part 5: Installing the Program
- Calling the MSI or Setup.exe
- Start Your Engines Please
-
Parameters
- -FilePath
- -ArgumentList
- -NoNewWindow
- -Wait
- Dealing with Spaces
-
Putting It All Together
- Example 1 - Simple MSI
- Example 2 - MSI with Properties
- Example 3 - Setup.Exe
- The Story so Far
-
Part 6: Deploying the Script
-
Calling Your Script
- Standard Script (Top to bottom)
- Script with Entry Point
- Function
- Function Accepting Parameters
- The Story so Far
-
Calling Your Script
-
Part 7: Deployment Template
-
How to Use
- Deploying Based on Office ‘Bitness’
- Deploying Based on Operating System Architecture
- Pre-Deployment Tasks
- Post-Deployment Tasks
- Logging
- How to Call the Template
- Lead by Example
- The Story so Far
-
How to Use
-
Part 8: Useful Code Snippets
-
- Detect Office ‘Bitness’
- Detect Operating System Architecture
- Obtaining the Current Logged in User Name
- Copying Files
- No Include
- Register \ Unregister DLL’s
- Use the Template!
-
-
Part 9: Real-World Examples
-
Ready to go Scripts
- Adobe Reader
- Java
- Firefox
- Mimecast
- Fusion Excel Connect Client
-
Ready to go Scripts
- Tips
-
Bonus Chapter 1
-
A Step-by-Step Guide to Deploying a CCMCache Resize
- The Scenario
-
A Step-by-Step Guide to Deploying a CCMCache Resize
-
Bonus Chapter 2
-
A Step-by-Step Guide to Deploying EMC SourceOne Agent for Offline Files
- Objectives
- Download and Extract the Files!
- Move the Files to the SCCM Source Location
- Discover the Silent Deployment Switches
- The Deployment Template
- Download the Pre-Configured Deployment Template
- Create The Application
- Installation Program
- The Detection Rule
- Traditional Method
- PowerShell Method
- Lock and Load
- Summary
-
A Step-by-Step Guide to Deploying EMC SourceOne Agent for Offline Files
-
Bonus Chapter 3
-
A Step-by-Step Guide to Deploying RSAT Components for Windows 10
- Background
- Get the Script
- Install-RSATCapabilities
- Uninstall-RSATCapabilities
- Season to Taste
- Move the Script to the SCCM Source Location
- Create The Application
- Installation Program
- The Detection Rule
- Distribute and Deploy
- The Result
-
A Step-by-Step Guide to Deploying RSAT Components for Windows 10
-
Afterword
- Don’t Be a Stranger!
- Suggested Reading
Authors have earned$10,091,628writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.
Learn more about writing on Leanpub
The Leanpub 45-day 100% Happiness Guarantee
Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them
Top Books
C++20
Rainer GrimmC++20 is the next big C++ standard after C++11. As C++11 did it, C++20 changes the way we program modern C++. This change is, in particular, due to the big four of C++20: ranges, coroutines, concepts, and modules.
The book is almost daily updated. These incremental updates ease my interaction with the proofreaders.
A Guide to Artificial Intelligence in Healthcare
Dr. Bertalan MeskoCan we stay human in the age of A.I.? To go even further, can we grow in humanity, can we shape a more humane, more equitable and sustainable healthcare? This e-book aims to prepare healthcare and medical professionals for the era of human-machine collaboration. Read our guide to understanding, anticipating and controlling artificial intelligence.
C++ Best Practices
Jason TurnerLevel up your C++, get the tools working for you, eliminate common problems, and move on to more exciting things!
Atomic Kotlin
Bruce Eckel and Svetlana IsakovaFor both beginning and experienced programmers! From the author of the multi-award-winning Thinking in C++ and Thinking in Java together with a member of the Kotlin language team comes a book that breaks the concepts into small, easy-to-digest "atoms," along with exercises supported by hints and solutions directly inside IntelliJ IDEA!
Sockets and Pipes
Type ClassesSockets and Pipes is not an introduction to Haskell; it is an introduction to writing software in Haskell. Using a handful of everyday Haskell libraries, this book walks through reading the HTTP specification and implementing it to create a web server.
Introducing EventStorming
Alberto BrandoliniThe deepest tutorial and explanation about EventStorming, straight from the inventor.
node-opcua by example
Etienne RossignonGet the best out of node-opcua through a set of documented examples by the author himself that will allow you to create stunning OPCUA Servers or Clients.
Ansible for DevOps
Jeff GeerlingAnsible is a simple, but powerful, server and configuration management tool. Learn to use Ansible effectively, whether you manage one server—or thousands.
Functional Design and Architecture
Alexander GraninSoftware Design in Functional Programming, Design Patterns and Practices, Methodologies and Application Architectures. How to build real software in Haskell with less efforts and low risks. The first complete source of knowledge.
Composing Software
Eric ElliottAll software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Most developers have a limited understanding of compositional techniques. It's time for that to change.
Top Bundles
- #1
Software Architecture for Developers: Volumes 1 & 2 - Technical leadership and communication
2 Books
"Software Architecture for Developers" is a practical and pragmatic guide to modern, lightweight software architecture, specifically aimed at developers. You'll learn:The essence of software architecture.Why the software architecture role should include coding, coaching and collaboration.The things that you really need to think about before... - #2
All the Books of The Medical Futurist
6 Books
We put together the most popular books from The Medical Futurist to provide a clear picture about the major trends shaping the future of medicine and healthcare. Digital health technologies, artificial intelligence, the future of 20 medical specialties, big pharma, data privacy, digital health investments and how technology giants such as Amazon... - #3
PowerShell
3 Books
Buy every PowerShell book from Adam Bertram at a 20% discount! - #4
Cisco CCNA 200-301 Complet
4 Books
Ce lot comprend les quatre volumes du guide préparation à l'examen de certification Cisco CCNA 200-301. - #5
Linux Administration Complet
4 Books
Ce lot comprend les quatre volumes du Guide Linux Administration :Linux Administration, Volume 1, Administration fondamentale : Guide pratique de préparation aux examens de certification LPIC 1, Linux Essentials, RHCSA et LFCS. Administration fondamentale. Introduction à Linux. Le Shell. Traitement du texte. Arborescence de fichiers. Sécurité... - #6
Modern C++ by Nicolai Josuttis
2 Books
- #7
Django for Beginners/APIs/Professionals
3 Books
- #8
Learn Git, Bash, and Terraform the Hard Way
3 Books
Learn Git, Bash and Terraform using the Hard Way method.These technologies are essential tools in the DevOps armoury. These books walk you through their features and subtleties in a simple, gradual way that reinforces learning rather than baffling you with theory. - #9
Software Architecture and Beautiful APIs
2 Books
There is no better way to learn how to design good APIs than to look at many existing examples, complementing the Software Architecture theory on API design. - #10
Digital Future of Healthcare and Pharma
3 Books
These three popular e-books from The Medical Futurist describes how digital health technologies will shape the future of health, healthcare, medicine and pharma with exciting infographics in a digestible format.