08 December 2016

Display a MessageBox from PowerShell


[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | Out-Null
[System.Windows.Forms.MessageBox]::Show("Hello there !")
[System.Windows.Forms.MessageBox]::Show("Hello there !", "Some title")


you can also have buttons like:

0: OK
1: OK Cancel
2: Abort Retry Ignore
3: Yes No Cancel
4: Yes No
5: Retry Cancel

[System.Windows.Forms.MessageBox]::Show("Hello there !", "Some title", 4)



you can olso read the unswer from the user:

$Unswer = [System.Windows.Forms.MessageBox]::Show("Hello there !", "Some title", 4)
if ($Unswer -eq "YES" ) { # perform sone task }
else { # perform some other task}

more info on msdn

20 October 2016

Grant sharing permissions for multiple users with net share

net share sharename=path_to_folder /GRANT:username,FULL /GRANT:username2,FULL

18 October 2016

Get computer manufacturer and model

command prompt
wmic computersystem get model, manufacturer


powershell
Get-WmiObject Win32_ComputerSystem | Select-Object Manufacturer, Model


visual

msinfo32.exe

17 October 2016

Retrieve HBA information with powershell

$Params = @{
        Namespace = 'root\WMI'
        class = 'MSFC_FCAdapterHBAAttributes'
        ComputerName = $Computer
        ErrorAction = 'Stop'
}
 
$HBAAdapters = Get-WmiObject @Params

foreach($HBA in $HBAAdapters){
    $HBAInfo=@{
            ComputerName = $HBA.__SERVER
            NodeWWN = (($HBA.NodeWWN) | ForEach-Object {"{0:X2}" -f $_}) -join ":"
            Active = $HBA.Active
            DriverName = $HBA.DriverName
            DriverVersion = $HBA.DriverVersion
            FirmwareVersion = $HBA.FirmwareVersion
            Model = $HBA.Model
            ModelDescription = $HBA.ModelDescription
}
New-Object psobject -Property $HBAInfo

source

13 October 2016

Find users with active sync enabled

Get-CASMailbox -ResultSize Unlimited | Where-Object { $_.ActiveSyncEnabled -eq 'True'} | Select-Object name, activesyncenabled