如何在c中读取存储在外部DLL资源中的文本文件#

如何在c中读取存储在外部DLL资源中的文本文件#,dll,resources,external,Dll,Resources,External,我正在尝试读取存储在外部DLL上的文本文件(.xml)。 我可以通过以下方式获取存储在DLL中的文件: 但是,当我想使用以下方法读取文本文件时,我遇到了一个问题: File.OpenRead(Uri.AbsoluteUri); Uri类似于: pack://application:,,,/Library;component/catalog.xml 在我的DLL上有更多类似于图像的元素。当我尝试加载它们时,它工作得很好 BitmapImage bmp = new BitmapImage(new

我正在尝试读取存储在外部DLL上的文本文件(.xml)。 我可以通过以下方式获取存储在DLL中的文件:

但是,当我想使用以下方法读取文本文件时,我遇到了一个问题:

File.OpenRead(Uri.AbsoluteUri);
Uri类似于:

pack://application:,,,/Library;component/catalog.xml
在我的DLL上有更多类似于图像的元素。当我尝试加载它们时,它工作得很好

BitmapImage bmp = new BitmapImage(new Uri("pack://application:,,,/Library;component/image.png"));
图像显示得很好


为什么它不能与我的文本文件一起使用?

我已使用类似以下的StreamResourceInfo解决了此问题:

System.Windows.Resources.StreamResourceInfo streamResourceInfo = System.Windows.Application.GetResourceStream("pack://application:,,,/Library;component/catalog.xml");
感谢这篇文章: