-2
我在下面的代码中有一个UnmanagedMemoryStream
,我怎样才能得到它的对象去钝化它。我是从一个Assembly
试图获得Resource
(rd.xaml):ResourceDictionary来自外部程序集[从UnmanagedMemoryStream中读取对象]
string address = @"WpfControlLibrary1.dll";
Assembly skinAssembly = Assembly.LoadFrom(address);
string name = skinAssembly.GetName().Name +".g";
var manager = new ResourceManager(name, skinAssembly);
ResourceSet rs = manager.GetResourceSet(CultureInfo.CurrentCulture, true, true);
UnmanagedMemoryStream stream = (UnmanagedMemoryStream)rs.GetObject("rd.baml", true);
我无法deserialize
的Stream
内容到.NET Object
(在上述情况下,Resource Dictionary
)。我怎样才能做到这一点?
PS:BinaryFormatter
正在抛出异常,而Deserialize
操作。
什么异常?在哪一行? – cassandrad
{“输入流不是有效的二进制格式,起始内容(以字节为单位)为:0C-00-00-00-4D-00-53-00-42-00-41-00-4D-00- 4C-00-00 ...“} –
在我的代码中添加这些行:BinaryFormatter binForm = new BinaryFormatter(); Object obj =(Object)binForm.Deserialize(stream); –