Обязательно укажите протокол (https://
или http://
), как в статье, на которую вы ссылались:
# Tested with Developer Edition of Firefox
$domain = "example"
$domainName = example.com"
$screenshotdir = "C:\SO\56572800"
# This works
Start-Process -FilePath "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList "--screenshot $screenshotdir\$domain-with-https.png", "https://$domainName" -Wait
# But doesn't work
Start-Process -FilePath "C:\Program Files\Firefox Developer Edition\firefox.exe " -ArgumentList " --screenshot $screenshotdir\$domain-no-https.png ", "$domainName" -Wait
Из того, что я проверил, если вы не укажете https://
префикс (или http://
, если применимо), он будет зависать в течение длительного времени, поэтому у вас может сложиться впечатление, что он работает.
Как @ lloyd , упомянутый в комментариях,Вы должны убедиться, что значение $screenshotdir
правильно назначено и доступно для функции.
Кроме того, рекомендуется обрезать начальные / конечные пробелы в вашей команде, даже если в вашем примере это все еще работаетс пробелами.Я имею в виду эти:
HERE | HERE | HERE |
Start-Process -FilePath "C:\Program Files\Mozilla Firefox\firefox.exe " -ArgumentList " --screenshot $screenshotdir\$domain.png ", "$domainName" -Wait