Bot*_*elo 10 c# embedded-resource
我已经创建了一个完美的项目.我的问题涉及安装项目.当我在另一台计算机上使用它时,即使它们在部署期间位于资源文件夹内,也无法找到该文本文件!
在另一台计算机上安装软件后,如何确保我的程序能够找到这些文本文件!
我一直在寻找这个解决方案但是徒劳无功.请帮我解决这个问题.如果我能得到一个完整的代码,我将非常高兴!
Sim*_*ens 22
首先将文本文件的构建操作设置为"EmbeddedResource".
然后阅读代码中的文件:
var assembly = Assembly.GetExecutingAssembly();
var resourceName = "AssemblyName.MyFile.txt";
using (Stream stream = assembly.GetManifestResourceStream(resourceName))
{
using (StreamReader reader = new StreamReader(stream))
{
string result = reader.ReadToEnd();
}
}
Run Code Online (Sandbox Code Playgroud)
如果您无法找出嵌入式资源的名称,请执行此操作以查找名称,并且应该明确您的文件是:
assembly.GetManifestResourceNames();
Run Code Online (Sandbox Code Playgroud)
这假设您希望将文本文件嵌入到程序集中.如果没有,那么您可能只想更改安装项目以在安装期间包含文本文件.
假设您的意思是您的项目中有一个文件已设置为 EmbeddedResource,您想要
using (var stream = Assembly.GetExecutingAssembly()
.GetManifestResourceStream(path))
{
...
}
Run Code Online (Sandbox Code Playgroud)
其中path应该是程序集名称,后跟项目文件夹层次结构中文件的相对路径。使用的分隔符是句点.。
因此,如果您有一个名为 的程序集MyCompany.MyProject,然后在该项目中您有一个Test包含 的文件夹Image.jpg,您将使用该路径MyCompany.MyProject.Test.Image.jpg来获取Stream它的 a 。
| 归档时间: |
|
| 查看次数: |
16605 次 |
| 最近记录: |