我想从通用windows平台库中使用数据types,如何在PowerShell中引用包含的名称空间或程序集?
例如,我想使用windows.Data.Json.JsonObject类来parsing一些Json。
如果这是一个普通的.NET类,我会做类似的
add-type -Assemblyname windows.Data.Json $JsonObject = [windows.Data.Json.JsonObject]::Parse('{data:["powershell","rocks"]}')
但是这个策略使我失败:
在安装期间为每个客户端分配唯一的ID
如何从windowslockingwindows(如“windows + L”)?
我可以使用C#/ .NET以编程方式禁用窗口自动播放function吗?
如何以编程方式禁用系统设备?
80040154类即使clsID在registry中也没有注册错误
add-type : Cannot add type. The assembly 'windows.Data.Json' Could not be found. At line:1 char:1 + add-type -Assemblyname windows.Data.Json + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + categoryInfo : ObjectNotFound: (windows.Data.Json:String) [add-type],Exception + FullyQualifIEdErrorID : ASSEMBLY_NOT_FOUND,Microsoft.PowerShell.Commands.AddTypeCommand
现在,可能是因为我错在假定windows.Data.Json命名空间的程序集是windows.Data.Json.dll ,但是API引用实际上并不包含任何对包含文件的引用,我相信一个DLL文件实际上不是我应该找的。
我认为UWP有它自己的酷GAC样商店,我可以加载共享库,我只是不知道如何。
所以基本上我的问题是, 我怎样才能加载一个UWP共享库到PowerShell中,我应该如何引用UWPtypes文字?
在windows 10上运行PowerShell 5.1(内部版本1703)
windows每秒进行一次线程切换的频率如何?
检查用户是否具有windows中文件的读取权限
Mono在Ubuntu上抛出OutOfMemoryException,而不是OSX或windows
跨进程事件 – 可靠地释放所有服务员
有没有办法来检查用户是否有特定的权利?
发布这个问题后不久,我偶然发现了BurntToast的GitHub仓库 ,它是一个允许从PowerShell中引发UWP Toast Notifications的模块,它引用了WinRT Toastnotificationmanager类型,如下所示:
[windows.UI.Notifications.Toastnotificationmanager,windows.UI.Notifications,ContentType = windowsRuntime]
所以,它看起来像我后面的UWP类的语法是:
[<class name>,<namespace>,ContentType = windowsRuntime]
考虑到这一点,我以我在问题中给出的例子来尝试,并瞧瞧:
PS C:> $JsonObjectClass = [windows.Data.Json.JsonObject,windows.Data.Json,ContentType=windowsRuntime] PS C:> $JsonObject = $JsonObjectClass::Parse('{"data":["powershell","rocks"]}') PS C:> $JsonObject Key Value --- ----- data ["powershell","rocks"]
在引用一次类型名称之后,我似乎可以在类型文字中使用类名,而无需限定它:
[windows.Data.Json.JsonObject]::Parse("{}") # works without throwing errors Now
尽管如此,仍然非常热衷于找到任何文档
总结以上是内存溢出为你收集整理的我如何在PowerShell中引用UWP类全部内容,希望文章能够帮你解决我如何在PowerShell中引用UWP类所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)