Generates an object identifier (OID) using a GUID and the OID prefix 1.2.840.113556.1.8000.2554. This is a PowerShell equivalent of VBScript published here: http://gallery.technet.microsoft.com/scriptcenter/56b78004-40d0-41cf-b95e-6e795b2e8a06/
VBScript is quite aged technology, so I said myself: "Why not to have PowerShell version for those who do not care for VBScript anymore?"
 
PowerShell
Edit|Remove
#--- 
$Prefix="1.2.840.113556.1.8000.2554" 
$GUID=[System.Guid]::NewGuid().ToString() 
$Parts=@() 
$Parts+=[UInt64]::Parse($guid.SubString(0,4),"AllowHexSpecifier"$Parts+=[UInt64]::Parse($guid.SubString(4,4),"AllowHexSpecifier"$Parts+=[UInt64]::Parse($guid.SubString(9,4),"AllowHexSpecifier"$Parts+=[UInt64]::Parse($guid.SubString(14,4),"AllowHexSpecifier"$Parts+=[UInt64]::Parse($guid.SubString(19,4),"AllowHexSpecifier"$Parts+=[UInt64]::Parse($guid.SubString(24,6),"AllowHexSpecifier"$Parts+=[UInt64]::Parse($guid.SubString(30,6),"AllowHexSpecifier"$OID=[String]::Format("{0}.{1}.{2}.{3}.{4}.{5}.{6}.{7}",$prefix,$Parts[0],$Parts[1],$Parts[2],$Parts[3],$Parts[4],$Parts[5],$Parts[6]) 
$oid 
#---