Introduction
This blog series is comprised of 3 parts. In part 1 you reviewed a video of the solution and then carried out the initial steps to set everything up. In this part, you’ll see how you can modify files, text and graphics to fit in with your company look and feel.
- Migrate to the cloud – Part 1. Setup
- Migrate to the cloud – Part 2. Customization <- you are here
- Migrate to the cloud – Part 3. Troubleshooting
Step 1. Add a custom icon in Software Center
Right now the app looks pretty generic in Software Center and doesn’t have a custom icon.
To create one open sweepback.png (found in C:\dev\autopilot_sweepback\encode files) in MsPaint. Resize/crop the graphic to 256×256 pixels. Save that resized file as sweepback_icon.png.
Using an online website like this one upload the sweepback_icon.png file and download the converted sweepback_icon.ico and copy the saved file to your package source
In ConfigMgr, locate the Application (or package) that you created the original app with, and change the icon there to point to our new sweepback_icon.ico file.
click Apply when done.
After updating policy on the client, the app will show in Software Center with the new custom icon.
Much nicer!
Step 2. adding your company logo to the status screens
During the migration the end user will see various status screens showing what is currently happening, and those screens include a company logo which is currently set to the windows-noob.com egg.
To edit the logo open the CompanyLogo.png file in MSPaint.
and paste in your company logo, I’d recommend that you try and retain this exact size otherwise you’ll have to modify each of the following files with any new dimensions.
- Win.AP.Sweepback.status_part1.ps1
- Win.AP.Sweepback.status_part2.ps1
- Win.AP.Sweepback.status_part3.ps1
If you do decide to change the logo size then you’ll need to modify the $PictureBox.width and $PictureBox.height section of the scripts, that in turn may need other modifications to the other parts of the script that displays text/graphics.
Once you are done modifying the CompanyLogo.png file save it to your script source, eg: C:\Dev\autopilot_sweepback\Encode files
Below is my ‘new’ company logo.
To add the new company logo to your solution, you’ll need to encode it, so start Powershell ISE as Administrator and open encode.ps1 located in C:\Dev\autopilot_sweepback\Encode files
enter the following
Set-ExecutionPolicy unrestricted
and then run the encode script. After it has run, locate the Encoded_CompanyLogo text document as shown here.
Open it in notepad and press CTRL+A followed by CTRL+C (to select all and copy)
Paste the encoded text into the corresponding section of your Win.AP.Sweepback_part1.ps1 script as shown here:
Note: If you modified the text or graphics dimensions in any of the status scripts then you’ll need to copy/paste the encoded data from those files also into this main script.
Step 3. Adding/changing steps in the status screens
Each status screen is tied to it’s corresponding script like so
- Win.AP.Sweepback._part1.ps1 >>>> Win.AP.Sweepback.status_part1.ps1
- Win.AP.Sweepback._part2.ps1 >>>> Win.AP.Sweepback.status_part2.ps1
- Win.AP.Sweepback._part3.ps1 >>>> Win.AP.Sweepback.status_part3.ps1
If you want to modify the number of steps in a status script, then you will have to do so first in the status_partx script and if needed in the associated partx script within the takeaction function. Below you can see some of the steps that are displayed during the third status screen script. You could add or modify the text here to suit your own needs.
the status scripts do count the number of steps so if you add or remove a step then you’ll need to also modify these two values.
Step 4. Modify the initial warning message
When users select to start the migration, they’ll get an initial popup informing them what is about to happen and what is expected of them.
If you want to modify that text, find it in the main script in this section, and make and edits that you feel are appropriate. Save the file when done.
Note: After making your edits, don’t forget to update any encoded files into the main script, and to copy that main script to your package source, once done, update that source to your distribution points.
Then test and verify your changes on a virtual machine.
Job done!
Please do join me in the final part where we’ll look at troubleshooting the solution.