Forum Discussion

ShaneCal_162988's avatar
ShaneCal_162988
Icon for Altocumulus rankAltocumulus
Dec 16, 2014
Solved

iControlSnapIn Problems

I'm at the end of my wits here, I've read through all the guides, followed each of them to a word, I've been through several uninstalls and restarts and I'm still nowhere near getting this snapin to ...
  • ShaneCal_162988's avatar
    Apr 26, 2017

    Thanks to DeniceJ for necromancing this thread, I would have forgotten about it if I didn't get the alert

    Here's the code I've been using for the last few years to register the iControlSnapIn.dll and add the snap-in to the current session

     

    $PSScriptRoot = Split-Path -Parent -Path $MyInvocation.MyCommand.Definition
    $snapinPath = "$PSScriptRoot\f5-icontrol-powershell-snapin-12_1_0\iControlSnapIn.dll"
    $snapinName = "iControlSnapIn"
    
    if (Get-PSSnapIn -name $snapinName -ErrorAction Ignore)
    {
        Write-Output "Verified that '$snapinName' snap-in is currently registered to this session"
    }
    else
    {
        Write-Output "The '$snapinName' snap-in is not currently registered to this session, installing assembly for this snap-in from the following path now:`n$snapinPath"
        $installUtil = "$env:windir\Microsoft.Net\Framework${platform}\v2.0.50727\installUtil.exe";
        if ( [System.IO.File]::Exists($installUtil) )
        {
            Set-Alias installUtil $installUtil;
            installUtil $snapinPath /LogToConsole=false /LogFile=;
        }
        Write-Output "The '$snapinName' snap-in assembly has been registered, adding snap-in to this session now..."
        Add-PSSnapIn $snapinName  Add F5 iControl Library
        Write-Output "The '$snapinName' snap-in has been added to this session, continuing...`n"
    }
    

     

    Note that I store the f5-icontrol-powershell-snapin-12_1_0 folder which contains the iControlSnapIn.dll in my script directory, as the script needs to run from different machines that may not have any F5 software installed.