首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Powershell 'runspace‘不从Powershell控制台运行。

Powershell 'runspace‘不从Powershell控制台运行。
EN

Stack Overflow用户
提问于 2015-05-22 09:04:21
回答 1查看 1.3K关注 0票数 2

我试图理解为什么这段代码将在Powershell ISE中运行,而不是从Powershell控制台运行。

代码语言:javascript
复制
function close-window (){
    # close
    $hash.window.Dispatcher.Invoke("Normal",[action]{ $hash.window.close() })
    # clean up
    $powershell.EndInvoke($handle) | Out-Null
    $runspace.Close() | Out-Null
    $powershell.Dispose() | Out-Null
}

    $hash = [hashtable]::Synchronized(@{})
    $runspace = [runspacefactory]::CreateRunspace()
    $runspace.ApartmentState = "STA"
    $Runspace.ThreadOptions = "ReuseThread"
    $runspace.Open()
    $runspace.SessionStateProxy.SetVariable("hash",$hash)
    $Powershell = [PowerShell]::Create()
    $powershell.AddScript({ 
    $xaml = [xml]@"
        <Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        x:Name="Window" Title="Splash Screen" WindowStyle="None" WindowStartupLocation="CenterScreen"
        Width="499" Height="272" BorderBrush="#FF2AA0F1" ShowInTaskbar = "False" AllowsTransparency="True"
        ResizeMode = "NoResize" BorderThickness="1" >
    </Window>
"@

    $reader = New-Object System.Xml.XmlNodeReader $xaml
    $hash.window = [Windows.Markup.XamlReader]::Load($reader)
    $hash.window.Add_MouseRightButtonUp({ $hash.window.close() })
    $hash.window.ShowDialog()
})

    $Powershell.Runspace = $runspace
    $handle = $Powershell.BeginInvoke()

从ISE运行它,您将得到一个XAML窗口出现的预期结果。保存该文件并从控制台运行它,它将失败,将其复制并粘贴到控制台中,然后它就会以静默方式失败。

它包含一个带有同步哈希表的单个运行空间,因为它是XAML,所以我将运行空间作为单个线程单元启动。当从控制台运行时,尝试了MTA和STA。

目的是使用这段代码作为启动屏幕的一部分。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-26 09:29:24

脚本缺少对任何程序集名称的引用,这不是ISE中的问题,而是控制台所必需的。

代码语言:javascript
复制
 Add-Type -AssemblyName PresentationCore, PresentationFramework
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30392577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档