我一直试图通过游戏控制面板TCAdmin来实现这一点。
$ModPg1 = Invoke-WebRequest "http://steamcommunity.com/sharedfiles/filedetails/?id=731604991"
$ModVer1 = ($ModPg1.ParsedHtml.getElementsByTagName('div') | Where{ $_.className -eq 'detailsStatRight' } ).innerText | Select -Last 1
如果我通过TCAdmin(或任务调度程序)等程序运行此cmdlet,则会出现以下错误....
Invoke-WebRequest:无法解析响应内容,因为Internet Explorer引擎不可用,或者Internet Explorer的首次启动配置未完成。指定UseBasicParsing参数,然后重试。
已安装并设置资源管理器。如果我手动运行它,该脚本工作正常。
我的猜测是有一种方法让TCAdmin以与Windows用户相同的方式运行脚本。
无法找到一种方法,几乎可以轻松查找正在寻找的信息。
答案 0 :(得分:1)
至于......
让TCAdmin以与Windows用户相同的方式运行脚本。
对于以用户身份运行的任何应用程序,必须在要运行代码的主机上使用该用户配置文件。您无法在主机上本机运行PoSH作为另一个用户上下文。这不是PoSH问题,它是Windows用户主体安全边界。有一些工具可以让你这样做。例如SysInternal PSExec和AutoIT。然而如上所述,错误是非常具体的。尚未创建Internet Explorer的用户配置文件,只有在至少使用IE一次时才会发生这种情况。
因此,正如Adam指出的那样,使用错误消息所声明的设置或使用您的代码至少启动IE一次。
OAuth Clients
同样,如果试图在另一个用户的上下文中运行它,上面的两个工具会让你到那里,但你仍然需要启动IE以获得它的配置文件。