4

Simple script shown below causes an exception on my computer:

Import-Module WebAdministration
Get-ChildItem IIS:\Sites

Results:

powershell -NonInteractive .\test.ps1
Get-ChildItem : Could not load file or assembly 'Microsoft.PowerShell.Commands.Management' or one of its dependencies. The system cannot
find the file specified.
At C:\...\test.ps1:3 char:1
+ Get-ChildItem IIS:\Sites
+ ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Get-ChildItem], FileNotFoundException
    + FullyQualifiedErrorId : System.IO.FileNotFoundException,Microsoft.PowerShell.Commands.GetChildItemCommand

But if I add Write-Host at the beginning of the script it works fine:

Write-Host '!!!'
Import-Module WebAdministration
Get-ChildItem IIS:\Sites

Unfortunately, I have no idea what may cause this problem. Could somebody help me?

Sergey Popov
  • 199
  • 1
  • 3
  • 10

2 Answers2

1
Import-Module WebAdministration 
# adding sleep here resolves the issue for me
sleep 2
Get-ChildItem IIS:\Sites
1

I know it is an old question but today I faced the same issue. Found a solution in the following form and it worked for me.

Dmitry said

try 
{ 
    $serviceSite = Get-Item "IIS:\sites\$siteName" -ErrorAction "SilentlyContinue" 
} 
catch [System.IO.FileNotFoundException] 
{ 
# Try again (workaround for System.IO.FileNotFoundException issue) 
    $serviceSite = Get-Item "IIS:\sites\$siteName" -ErrorAction "SilentlyContinue" 
}
Sunil
  • 95
  • 8