具有按钮调用脚本的Powershell论坛

问题描述

我有一个用于1级的Powershell论坛。 现在,要求添加一个按钮,该按钮调用用于解决自动Outlook问题的脚本。

当我直接在计算机本身上调用脚本时(通过。\ outlook.ps1),脚本可以工作

当我将其添加到按钮时,它不起作用。

按钮本身可以工作并且可见。

示例代码:

$button_Outlookrest_Click={
    Get-ComputerTXTBOX
    Add-logs -text "$ComputerName - Create new Outlook profile"
    function button{
    Copy-Item -Path "D:\path\Repair_outlook_Profile.ps1" -Destination "\\$ComputerName\C$\local" -Recurse
    Invoke-Command -ComputerName $ComputerName -ScriptBlock  {C:\local\Repair_outlook_Profile.ps1}
    }
    }

我已经对代码进行了单独测试,并且可以正常工作:

Copy-Item -Path "D:\path\Repair_outlook_Profile.ps1" -Destination "\\replaced-with-targetcomputer\C$\local" -Recurse

当我想调用脚本时,我使用以下内容:

Invoke-Command -ComputerName $ComputerName -ScriptBlock  {C:\local\Repair_outlook_Profile.ps1}

但是,以上文字为我提供了以下错误:

PS C:\ Users \ admin>调用命令-ComputerName目标计算机-ScriptBlock {C:\ local \ Repair_outlook_Profile.ps1}

[目标计算机]连接到远程服务器目标计算机失败,并显示以下错误消息:WinRM无法 完成操作。验证指定的计算机名称有效,并且可以通过以下方式访问该计算机: 网络,并且启用了WinRM服务的防火墙例外,并允许从此计算机进行访问。通过 默认情况下,公共配置文件的WinRM防火墙例外将限制对同一本地内的远程计算机的访问 子网。有关更多信息,请参见about_Remote_Troubleshooting帮助主题。 + CategoryInfo:OpenError :(客户端目标:字符串)[],PSRemotingTransportException + FullyQualifiedErrorId:WinRMOperationTimeout,PSSessionStateBroken

我想避免使用Powershell,因为这不是该按钮的想法。

在脚本本身中,它不会将文件复制到目标计算机,也不会使用invoke命令运行脚本。 这被公司防火墙阻止了吗? 我的代码有问题吗? 一个没有任何问题的示例按钮是:

    $button_DriverQuery_Click={
    $button_DriverQuery.Enabled = $False
    Get-ComputerTxtBox
    $DriverQuery_command="cmd.exe"
    $DriverQuery_arguments = "/k driverquery /s $ComputerName"
    Start-Process $DriverQuery_command $DriverQuery_arguments
    $button_DriverQuery.Enabled = $true
}

仅此附加按钮不起作用。我目前无法弄清楚。 我在这里做什么错了?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...