diff --git a/adapters/powershell/psDscAdapter/win_psDscAdapter.psm1 b/adapters/powershell/psDscAdapter/win_psDscAdapter.psm1 index 2317e5e0a..8ce5ebfd6 100644 --- a/adapters/powershell/psDscAdapter/win_psDscAdapter.psm1 +++ b/adapters/powershell/psDscAdapter/win_psDscAdapter.psm1 @@ -628,7 +628,13 @@ function GetTypeInstanceFromModule { [Parameter(Mandatory = $true)] [string] $classname ) - $instance = & (Import-Module $modulename -PassThru) ([scriptblock]::Create("'$classname' -as 'type'")) + try { + $instance = & (Import-Module $modulename -PassThru) ([scriptblock]::Create("'$classname' -as 'type'")) + } catch { + if ($_.FullyQualifiedErrorId -eq "CommandNotFoundException") { + $instance = & (Import-Module $modulename -PassThru -Force) ([scriptblock]::Create("'$classname' -as 'type'")) + } + } return $instance }