Posts Tagged ‘Download’

  1. Setup an Azure subscription if you haven’t got this already, this will be used for Billing. The storage is under a 1$/Month for 1 GB space 
  2. Create a Storage Container in the right Azure Region with the correct redundancy ( Local Redundancy Storage in Cheaper ) . Use General Purpose V2!
  3. Create a Blob Container in this Storage Resource
  4. Use Storage Explorer to upload files here

  5. Upload what file you would like to deploy
  6. Right click on the file and choose “Get Shared Access Signatue”

I set a 100 Year Expiry , and leave access as Read Only

It will give you URI and query string

Copy the URI ONLY up to the file name ( nothing after e.g. the example below )  and put in $BlobUri

Copy the FULL Query String and put in $Sas

Change the Output Path which will need to exist with a trailing \, this example I have used the Users Desktop

#Variables ( Use the Azure Storage Explorer to get the URI ( Shared Access Signature ) of the file and copy the first part up to the file name in BlobURI and the Query String to the Sas) 
#You will need a new Sas for each file

$BlobUri = ''
#Output Path with \ on the end
$OutputPath = 'C:\Users\' + $env:UserName + '\Desktop\'

#Gets full Uri
$FullUri = "$BlobUri$Sas"
#Downloads file to outpath with correct file type and file found in BlobURI
(New-Object System.Net.WebClient).DownloadFile($FullUri, $OutputPath + ($BlobUri -split '/')[-1])

Deploy this powershell file via Device Config Scripts

GD Star Rating
GD Star Rating


Click here to Download the software


Install 32bit or 64bit depending on server , install ALL the Management Tools

Open Powershell as Administrator and with Domain Admin Writes and run

Import-module AdmPwd.PS  



Make sure the above says Sucess

In the same Powershell Window you need to declare the OU’s where the computers will live

Set-AdmPwdComputerSelfPermission -OrgUnit <name of the OU to delegate permissions>

Now you want to see who have access to look at the password in the OU

Find-AdmPwdExtendedrights -identity “OU NAME”

Add or remove permissions via : 

Set-AdmPwdReadPasswordPermission -OrgUnit <name of the OU to delegate permissions> -AllowedPrincipals <users or groups>

Group Policy

On the PC you installed the LAPS tool to ,  copy the following files : 

C:\Windows\PolicyDefinitions\AdmPwd.admx to ( ON a domain controller ) C:\Windows\SYSVOL\domain\Policies\PolicyDefinitions\

C:\Windows\PolicyDefinitions\en-US\AdmPwd.adml to ( ON a domain controller ) C:\Windows\SYSVOL\domain\Policies\PolicyDefinitions\en-US\AdmPwd.adml 

Now create a Group Policy and Apply to the computers you would like to have self managed local Administrator Password



How to find password using Gui

On the PC installed with LAPS , run  : C:\Program Files\LAPS\AdmPwd.UI.exe and enter the computer name to find the password

Use Powershell : 

Get-AdmPwdPassword -Computername "%COMPUTERNAME%"

To reset password Immediately :

 Reset-AdmPwdPassword -ComputerName <computername>


GD Star Rating
GD Star Rating

Reason #1 > Add in is Disabled

  • iManage Ribbon is missing
  • Save and open default to local dialogs
  • Document does not check in on close
  • History shows checkin was application DeskSite or Outlook vs. Word, Excel, PPT
  • Application Crash
  • Load Behavior: 0 or 2 = Disabled ( 3 = Enabled ) 

Solution 9.x
  • Add iManage Add ins to the DoNotDisableAddinList for each application
  • (Only available for Office 2013 and later)
Solution 9.3.2 and later
Installer now adds Work addins to these registry keys automatically
User clicks Yes to disable the Addin , it can still be disabled.

9.x Office Add in

Name of Add IN : 
Its a Com-integration

Work 10 Office Addin

Its a VSTO

Adobe Reader

Work 9.x Adobe Addin

  • iManAcrobat10.api (!HZQUBAJT!zVK9TphY6HLlnlv98Gzvgp7lIkRqiCkALEtRqMSLzJI ) 
  • iManAcrobatReader10.api (!6FByFA6Q!njcPUo2eMEeuE2Kw-ebJhfXzRKEIQaYuaoNU1rqA0Yg ) 
  • iManAcrobatRes.dll (!WMBQSCCT!d52KsDZNZjC4h8awHtmXOQ ) 

Work 10 Adobe Addin

  • iManageWorkPlugin.api
  • iManageWorkPluginRd.api
  • iManageWorkPluginRes.dll

Reason #2 > PRF is left behind

Work 9.X

Checkout: File and PRF copied from File Store to NrPorbl
Checkin : File and PRF copied to NRTEcho
PRF can be modified
Software keeps handle on the PRF

Work 10

Checkout: Hidden PRF attached
Checkin  Document and PRF stay in folder

GD Star Rating
GD Star Rating

I logged into

To download the latest firmware for my 2040 , however, I needed to link my Device warranty to my HP Passport account

With only remote access to the Unit, I needed the Chasis Serial and Product Number

To get this on an MSA if you SSH into the device and do a “SHOW CONFIG”

Press Enter until you hit the SKU

Product Number for MSA 2040 is : K2R80A

GD Star Rating
GD Star Rating

OneDriveForBiz2Just had a customer install office 2016 Home which wiped the 2013 installation of One drive for Business

Turns out this is a bug where both Office 365 (2016) and One Drive for Business 2013 cannot coexisting on the same computer

Work around : Install Office 365 ( 2016 ) for Home , then after download and run the easy fix located on this site.

It has to re-package the office installer and re download Office for Business 2016 so it can take 30 minutes depending on the installer.

GD Star Rating
GD Star Rating

You can loign to here for upgrade advisor for OnTap Data Upgrades , should have shout home stuff about your drives firmware recommendations 

Drive Firmware

Use to find the current firmware

*> storage show disk -x

To do the disk FW upgrade on the background, check the following is enabled:

options raid.background_disk_fw_update.enable

Disk Firmware Update Location :

Download the .LOD files to \\fascontrollerip\c$\etc\disk_fw

Disk firmware files should have been installed correctly to the system. Within two minutes the system should detect and begin updating any eligible drives.

Shelf Firmware 

Check this setting is enabled

options shelf.fw.ndu.enable



Disk Shelf Update Location :

Download the .SFW files to \\fascontrollerip\c$\etc\shelf_fw


storage download shelf

GD Star Rating
GD Star Rating

Wow , possible my biggest EWS Powershell script, Big thanks go to Glen for the missing piece of the jigsaw. The project started as a way to copy Quick Copy settings between users when needed.

Outlook doesn’t provide much functionality to do this itself, you can use the famous redemtion.dll for this task , but I’m more of a server side guy than a client side, Our Outlook Enviroment has too many macros already!

I knew how to get more Inbox items , but have never dived into the “Associated Contents Table”. Using the free MFCMAPI.exe tool , I explored the mailbox to find the folder I need as well as the table and after hours or tinkering and borrowing code we are good!

You will need to go through and change the values in %

This is the download script , I will paste the SOAP upload script in another post

$mailbox = Get-Mailbox %mailbox%
$mailAddress = $mailbox.PrimarySmtpAddress.ToString();
[Reflection.Assembly]::LoadFile("C:\Program Files (x86)\Microsoft\Exchange\Web Services\2.1\Microsoft.Exchange.WebServices.dll") | Out-Null
$s = New-Object Microsoft.Exchange.WebServices.Data.ExchangeService([Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2010_SP1)
#needed for XML Soap
$cred = New-Object System.Net.NetworkCredential("%username%","%password%")
$windowsIdentity = [System.Security.Principal.WindowsIdentity]::GetCurrent()
$sidbind = "LDAP://<SID=" + $windowsIdentity.user.Value.ToString() + ">"
$aceuser = [ADSI]$sidbind
$s.Credentials = $cred
$MailboxRootid = new-object  Microsoft.Exchange.WebServices.Data.FolderId([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::MsgFolderRoot,$mailAddress)
$MailboxRoot = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($s,$MailboxRootid)
# Get Folder ID from Path
Function GetFolder()
	# Return a reference to a folder specified by path
	$RootFolder, $FolderPath = $args[0];
	$Folder = $RootFolder;
	if ($FolderPath -ne '\')
		$PathElements = $FolderPath -split '\\';
		For ($i=0; $i -lt $PathElements.Count; $i++)
			if ($PathElements[$i])
				$View = New-Object  Microsoft.Exchange.WebServices.Data.FolderView(2,0);
				$View.Traversal = [Microsoft.Exchange.WebServices.Data.FolderTraversal]::Deep;
				$View.PropertySet = [Microsoft.Exchange.WebServices.Data.BasePropertySet]::IdOnly;
				$SearchFilter = New-Object Microsoft.Exchange.WebServices.Data.SearchFilter+IsEqualTo([Microsoft.Exchange.WebServices.Data.FolderSchema]::DisplayName, $PathElements[$i]);
				$FolderResults = $Folder.FindFolders($SearchFilter, $View);
				if ($FolderResults.TotalCount -ne 1)
					# We have either none or more than one folder returned... Either way, we can't continue
					$Folder = $null;
					Write-Host "Failed to find " $PathElements[$i];
					Write-Host "Requested folder path: " $FolderPath;
				$Folder = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($s, $FolderResults.Folders[0].Id)
#choose the folder name you want to download the Configuration items from
$folderobject = GetFolder($MailboxRoot, "\Quick Step Settings\");
$sfSearchFilter = new-object Microsoft.Exchange.WebServices.Data.SearchFilter+IsEqualTo([Microsoft.Exchange.WebServices.Data.ItemSchema]::ItemClass, "IPM.Microsoft.CustomAction")
$Itemview = new-object Microsoft.Exchange.WebServices.Data.ItemView(20)
$ItemView.PropertySet = new-object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.BasePropertySet]::FirstClassProperties)
$ItemView.Traversal = [Microsoft.Exchange.Webservices.Data.ItemTraversal]::Associated
#$folderid = new-object  Microsoft.Exchange.WebServices.Data.Folderid([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::Root,$mailAddress)
$folderid = $folderobject.Id
$InboxFolder = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($s,$folderid)
$pspropset = New-Object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.ItemSchema]::MimeContent)
$mails  = $inboxFolder.finditems($sfSearchFilter,$Itemview)
#loop to go through all the items in the folder
foreach($Item in $mails.Items)
#gets the id for the SOAP XML Request
$itemid = $mails.Items[$count].Id.Uniqueid
$expRequest = @"
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:xsi=""
    <t:RequestServerVersion Version="Exchange2010_SP1" />
        <t:ItemId Id="$itemid"/>
$mbMailboxFolderURI = New-Object System.Uri($s.url)
$wrWebRequest = [System.Net.WebRequest]::Create($mbMailboxFolderURI)
$wrWebRequest.KeepAlive = $false;
$wrWebRequest.Headers.Set("Pragma", "no-cache");
$wrWebRequest.Headers.Set("Translate", "f");
$wrWebRequest.Headers.Set("Depth", "0");
$wrWebRequest.ContentType = "text/xml";
$wrWebRequest.ContentLength = $expRequest.Length;
$wrWebRequest.Timeout = 60000;
$wrWebRequest.Method = "POST";
$wrWebRequest.Credentials = $cred
$bqByteQuery = [System.Text.Encoding]::ASCII.GetBytes($expRequest);
$wrWebRequest.ContentLength = $bqByteQuery.Length;
$rsRequestStream = $wrWebRequest.GetRequestStream();
$rsRequestStream.Write($bqByteQuery, 0, $bqByteQuery.Length);
$wrWebResponse = $wrWebRequest.GetResponse();
$rsResponseStream = $wrWebResponse.GetResponseStream()
$sr = new-object System.IO.StreamReader($rsResponseStream);
$rdResponseDocument = New-Object System.Xml.XmlDocument
$Datanodes = @($rdResponseDocument.getElementsByTagName("m:Data"))
if ($Datanodes.length -ne 0){
	$Data = [System.Convert]::FromBase64String($Datanodes[0].'#text')
#file location
	$fsFileStream = new-object C:\%folder%\quickcopy$count, ([io.filemode]::create), ([io.fileaccess]::write), ([io.fileshare]::none)
	$fsFileStream.Write($Data, 0, $Data.Length);
$count= $count+1 


GD Star Rating
GD Star Rating