在.NET程序集或可执行文件中嵌入文本文件

时间:2013-01-17 03:03:56

标签: c# winforms visual-studio-2010

  

可能重复:
  How to embed a text file in a .NET assembly?

我有一个使用多个文本文件的c#winforms应用程序。

我想以某种方式将这些文件嵌入到exe或dll中,以便在部署应用程序时用户无法看到它们。

visual studio可以做那样的事吗?

2 个答案:

答案 0 :(得分:13)

使用文本文件,您还可以按以下步骤操作:

  1. 双击Properties - > Resources.resx文件打开资源设计器。
  2. 从顶部的第一个小下拉列表中选择“文件”作为资源类型。
  3. 点击Add Resource - > Add Existing File...并选择您的文字文件。
  4. 假设你添加的TXT被称为Foo.txt ...你可以像这样访问它的内容:

    String foo = Properties.Resources.Foo;
    

    然后,您还可以在资源设计器中更改te文件名,它们将在您的代码中自动重构。从Resources目录中,它们现在位于项目中,您也可以编辑它们。 我建议您将访问级别设置为internal

答案 1 :(得分:2)

我是这样做的:

  1. 在解决方案资源管理器中,右键单击Properies / Resources.resx。
  2. 选择“视图设计器”。
  3. 可以使用“添加资源”按钮,但我经常只是将文件拖到设计器窗口上。
  4. Visual Studio将执行代码生成,以便您可以使用Properties.Resources.YourFileName
  5. 访问您的文件

    警惕:Visual Studio会将您选择的文件复制到项目的Resources文件夹中。它不会创建指向文件最初存储位置的链接。