Skip to content

Conversation

@XxMrTyronexX
Copy link

  • Fixed Wilcard bug - Removed wildcards surrounding $appName from Get-AppList, because previously, even without wildcards, it would return every app containing the same string which causes issues when -NoOGV is specified, since it would target all apps containing the $appName with no way to filter it. (Users can still add * to -AppName if they want to use wildcards)

  • Fixed ExcludePMPC bug - In Get-AppList the Get-CMApplication cmdlets were using $Pmpc_Comment (undefined) instead of $PmpcComment so when $ExcludePMPC was true, it would return nothing since it omits results containing '' (everything)

  • Added "-logFileName" parameter (defaults to 'Main.log') to New-Win32App to give the user the option to specify a custom log file name - When running multiple instances of the New-Win32App in the same working directory, it attempts to write to Main.log in parallel, causing all instances to throw a file in use error. This parameter is useful for creating different log files for each instance of the migration tool.

  • Added "-NoConsoleOutput" switch to New-Win32App - When specified it overrides Write-Host and Write-Progress to do nothing, still writes to a log file but does not show in console output

  • Added -Win32ContentPrepToolSilentMode switch to New-Win32App, when specified it appends "WindowStyle:Hidden" to Start-Process which runs IntuneWinAppUtil without opening a window - Since I was running a multi-threaded script, without this it would flood my screen with IntuneWinAppUtil windows while packaging apps

  • Added .msp handing in New-IntuneWin - Previously when building a intunewin file using a .msp installer, if it contained "msiexec.exe" (eg: msiexec.exe /p "example.msp" /qn) it would attempt to pass msiexec.exe into the IntuneWinAppUtil or if the install command contained just msiexec (eg: msiexec /p "example.msp" /qn) it would fail at "No matching extension found."

…omment exclusion, and adds handling for .msp files

- Wilcard bug - Removed wildcards surrounding $appName in Get-AppList because when typing an app name, even without wildcards, it would return everything containing the same string, so when -NoOGV was specified, it would target apps I didn't want it to. (Users can still add * to -AppName if they want to use wildcards)

- In Get-AppList the Get-CMApplication cmdlets were using $Pmpc_Comment instead of $PmpcComment so when $ExcludePMPC was true, it would return nothing since it omits results containing ''

- Added -logFileName parameter (defults to 'Main.log') to New-Win32App to give the user the option to specify a custom log file name - When running multiple instances of the New-Win32App in the same working directory, it attempts to write to Main.log in parallel, causing all instances to throw a file in use error. This parameter is useful for creating different log files for each instance of the migration tool.

- Added -NoConsoleOutput switch to New-Win32App, when specified it overrides Write-Host and Write-Progress to do nothing, still writes to a log file but does not show in console output

- Added -Win32ContentPrepToolSilentMode switch to New-Win32App, when specified it appends "WindowStyle:Hidden" to Start-Process which runs IntuneWinAppUtil without opening a window

- Added .msp handing in New-IntuneWin - Previously when building a intunewin file using a .msp installer, if it contained "msiexec.exe" (eg: msiexec.exe /p "example.msp" /qn) it would attempt to pass msiexec.exe into the IntuneWinAppUtil or if the install command contained just msiexec (eg: msiexec /p "example.msp" /qn) it would fail at "No matching extension found."
Added documentation for:
-logFileName
-NoConsoleOutput
-Win32ContentPrepToolSilentMode

Added example usage of -logFileName
Updated help messages for -Win32ContentPrepToolSilentMode and -logFileName
@QMUL-JayHay
Copy link

Wow... This is balla! The exit code method is sure frustrating when an app fails during my batch run script. I tend to use Out-Gridview in my scripts to select apps to process, so would be all for adding a "Get-CMApplication ... | Out-Gridview" input method to your other 3 (if there's enough demand for it).

@XxMrTyronexX
Copy link
Author

XxMrTyronexX commented Sep 1, 2025

Wow... This is balla! The exit code method is sure frustrating when an app fails during my batch run script. I tend to use Out-Gridview in my scripts to select apps to process, so would be all for adding a "Get-CMApplication ... | Out-Gridview" input method to your other 3 (if there's enough demand for it).

If use wildcards (e.g. *Microsoft*) and leave out the -NoOgv parameter, when running New-Win32App it will present a gridview with all apps containing your search (e.g. all apps containing "Microsoft"). Not sure if that's what you meant though.

At the bottom of my issue I have my powershell script which I'm using to perform bulk exports. Because it's running on separate threads, when it exits, it only kills that thread and logs the error instead of killing the script.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants