/PSWinGlue

An assortment of useful PowerShell scripts & functions

Primary LanguagePowerShellMIT LicenseMIT

PSWinGlue

pwsh ver pwsh dl license

A PowerShell module consisting of an assortment of useful scripts.

Requirements

  • PowerShell 3.0 (or later)
    Some functions require a later PowerShell version

Installing

PowerShellGet (included with PowerShell 5.0)

The module is published to the PowerShell Gallery:

Install-Module -Name PSWinGlue

ZIP File

Download the ZIP file of the latest release and unpack it to one of the following locations:

  • Current user: C:\Users\<your.account>\Documents\WindowsPowerShell\Modules\PSWinGlue
  • All users: C:\Program Files\WindowsPowerShell\Modules\PSWinGlue

Git Clone

You can also clone the repository into one of the above locations if you'd like the ability to easily update it via Git.

Did it work?

You can check that PowerShell is able to locate the module by running the following at a PowerShell prompt:

Get-Module PSWinGlue -ListAvailable

Usage

This module has been written to support two methods of using the functions it includes:

  • As a regular PowerShell module (i.e. install module and call the commands it exports)
  • Calling individual functions directly via their script file independent of the module

To support the latter, each exported function resides in its own script file and has no dependencies on code elsewhere in the module. This allows for easy usage of the functions in scenarios where it may not be desirable to install the entire module (e.g. logon scripts or in other automated contexts). A given script can simply be copied to the desired location and directly called, typically with no additional setup beyond any documented external dependencies.

Functions

Add-VpnCspConnection

Adds a VPN connection using the VPNv2 CSP via the MDM Bridge WMI Provider.

Supported OS(s) Windows 10 1607 or later
Minimum PowerShell version 5.1
Required 3rd-party module(s) None
Required 3rd-party software None

Find-OrphanDependencyPackages

Locates orphan dependency packages in the system package cache.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Get-ControlledGpoStatus

Check Windows domain GPOs and AGPM server controlled GPOs are in sync.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) GroupPolicy
Microsoft.Agpm
Required 3rd-party software None

Get-Fonts

Retrieves registered fonts.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Get-InstalledPrograms

Retrieves installed programs.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Get-TaskSchedulerEvent

Retrieves events matching the specified IDs from the Task Scheduler event log.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Hide-SilverlightUpdates

Hides Silverlight updates.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Install-ExcelAddin

Installs Excel add-ins.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software Microsoft Excel

Install-Font

Installs a specific font or all fonts from a directory.

Supported OS(s) Windows
Minimum PowerShell version 4.0
Required 3rd-party module(s) None
Required 3rd-party software None

Install-VSTOAddin

Install a Visual Studio Tools for Office (VSTO) add-in.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software Microsoft Visual Studio Tools for Office (VSTO) Runtime

Register-MicrosoftUpdate

Register the Microsoft Update service with the Windows Update Agent.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Remove-AlternateDataStream

Remove common unwanted alternate data streams from files.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Remove-OrphanDependencyPackages

Removes orphan dependency packages in the system package cache.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Set-SharedPCMode

Configures Shared PC Mode using the SharedPC CSP via the MDM Bridge WMI Provider.

Supported OS(s) Windows 10 1607 or later
Minimum PowerShell version 5.1
Required 3rd-party module(s) None
Required 3rd-party software None

Sort-RegistryExport

Lexically sorts the exported values for each registry key in a Windows Registry export.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Uninstall-Font

Uninstalls a specific font by name.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software None

Uninstall-ObsoleteModule

Uninstalls obsolete PowerShell modules.

Supported OS(s) Linux, macOS, Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) PowerShellGet
Required 3rd-party software None

Uninstall-VSTOAddin

Uninstall a Visual Studio Tools for Office (VSTO) add-in.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software Microsoft Visual Studio Tools for Office (VSTO) Runtime

Update-GitRepository

Updates a Git repository.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software Git

Update-OneDriveSetup

Update OneDrive during Windows image creation.

Supported OS(s) Windows
Minimum PowerShell version 3.0
Required 3rd-party module(s) None
Required 3rd-party software Microsoft OneDrive

License

All content is licensed under the terms of The MIT License.