我正在尝试使用DetachBuffer()的方法Windows.Storage.Streams.DataWriter,但 PowerShell 只识别它应该返回的 IBuffer __ComObject。我已经成功地使用了其他 WinRT 对象,但这个对象给我带来了麻烦。
[void][Windows.Storage.Streams.DataWriter, Windows.Storage.Streams, ContentType = WindowsRuntime]
$dataWriter = [Windows.Storage.Streams.DataWriter]::new()
$dataWriter.WriteByte(0x01)
$buffer = $dataWriter.DetachBuffer()
$buffer
System.__ComObject
$buffer | Get-Member
TypeName: System.__ComObject
Name MemberType Definition
---- ---------- ----------
CreateObjRef Method System.Runtime.Remoting.ObjRef CreateObjRef(type requestedType)
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetLifetimeService Method System.Object GetLifetimeService()
GetType Method type GetType()
InitializeLifetimeService Method System.Object InitializeLifetimeService()
ToString Method string ToString()
Run Code Online (Sandbox Code Playgroud)
我假设我需要“导入” DetachBuffer() 实际上返回的一些 WinRT 类,但除了它实现 IBuffer 接口之外,我不知道它是什么。