77 lines
1.7 KiB
PowerShell
77 lines
1.7 KiB
PowerShell
<#
|
|
.SYNOPSIS
|
|
Checks whether the running system is a QEMU virtual machine.
|
|
#>
|
|
function Test-Qemu {
|
|
((Get-WmiObject win32_computersystem).Manufacturer) -eq "QEMU";
|
|
}
|
|
|
|
<#
|
|
.SYNOPSIS
|
|
Checks whether the active session is executed with admin rights.
|
|
#>
|
|
function Test-Admin {
|
|
net session 2> $null | Out-Null;
|
|
return $?;
|
|
}
|
|
|
|
<#
|
|
.SYNOPSIS
|
|
Removes desktop icons which apply to the specified pattern.
|
|
|
|
.PARAMETER Pattern
|
|
The pattern to match the icons to delete.
|
|
#>
|
|
function Remove-DesktopIcon {
|
|
param(
|
|
[string] $Pattern
|
|
)
|
|
|
|
$path = "Desktop/$Pattern";
|
|
|
|
foreach ($userDir in @("~", $env:PUBLIC, "$env:SystemDrive/Users/Default")) {
|
|
$fullName = "$userDir/$path";
|
|
|
|
if (Test-Path -PathType Leaf $fullName) {
|
|
Remove-Item -Force $fullName;
|
|
}
|
|
}
|
|
}
|
|
|
|
<#
|
|
.SYNOPSIS
|
|
Adds a new shortcut to the start menu.
|
|
|
|
.PARAMETER Name
|
|
The name of the icon to create.
|
|
|
|
.PARAMETER Target
|
|
The file to link to.
|
|
#>
|
|
function Add-StartMenuIcon {
|
|
param(
|
|
[string] $Name,
|
|
[string] $Target
|
|
)
|
|
|
|
Import-Module KnownFolders;
|
|
Import-Module "$env:ChocolateyInstall/helpers/chocolateyInstaller.psm1";
|
|
Install-ChocolateyShortcut -ShortcutFilePath "$((Get-KnownFolder "Common Programs").Path)/$Name.lnk" -TargetPath ((Get-Item $Target).FullName);
|
|
}
|
|
|
|
<#
|
|
.SYNOPSIS
|
|
Removes icons from the task bar.
|
|
|
|
.PARAMETER Pattern
|
|
The pattern of the icon names to remove.
|
|
#>
|
|
function Remove-TaskbarItem {
|
|
param(
|
|
[string] $Pattern
|
|
)
|
|
|
|
Import-Module -UseWindowsPowerShell PinnedItem;
|
|
Get-PinnedItem -Type TaskBar | Where-Object { $_.Name -like "$Pattern" } | ForEach-Object { Remove-PinnedItem $_ };
|
|
}
|