将.ps1转换为.exe无法正常工作

时间:2015-02-02 08:44:16

标签: powershell exe

我在这个论坛上的第一篇文章,因为我总是在这里找到一个解决方案,但不是这次。

我有一个PowerShell脚本的问题,我需要将其转换为.exe文件。它在powershell中应该工作但是当转换为.exe时我得到一个错误。

我正在使用软件' PowerGUI脚本编辑器'将脚本转换为.exe。

在我的脚本中,我采用一个url参数,然后检查网站是否响应。只要我得到答案,它就会恢复正常。 这是脚本:

$returnStateOK = 0
$returnStateWarning = 1
$returnStateCritical = 2
$returnStateUnknown = 3


try
{

$url = $args[0]
Write-Host $args[0]

$webRequest = [net.WebRequest]::Create($url)

$status = $webRequest.GetResponse()

exit $returnStateOK

}
catch
{
## If the request generated an exception (i.e.: 500 server
## error or 404 not found), we can pull the status code from the
## Exception.Response property
$errorstring = "$($error[0])"

try
{
    $status = (($errorstring.split('\(')[2]).split(')\')[0]).Trim()
    Write-Host $status
    exit $returnStateOK
}
catch
{
Write-Host "Critical"
exit $returnStateCritical
}

}

这可以正常工作,但在运行转换后的.exe文件时,我收到以下错误:

Exception calling "Create" with "1" argument(s): "Value cannot be null.
Parameter name: requestUri"

似乎.exe文件不理解我的论点。

/ Muffe

0 个答案:

没有答案