我有一个小代码,使用提供的文本数据进行一些重新计算。我还编写了一个自述文件,其中包含功能描述和“操作方法”说明。主要的想法是使程序独立,只有一个.exe文件。
我做了一些谷歌搜索,但发现只有如何使用外部文件或创建安装程序。
问题是如何将文本文件包含到已编译的.exe文件中以及如何通过单击按钮打开它。
到目前为止,我发现如何嵌入资源并使用Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName)
将其作为流读取。
虽然,当我尝试通过StreamReader
阅读它时,它返回System.ArgumentNullException
Stream streamS = Assembly.GetExecutingAssembly().GetManifestResourceStream(ProjectName.Properties.Resources.Readme);
StreamReader rdr = new StreamReader(streamS);
string text = rdr.ReadToEnd();
将其添加为嵌入式资源。然后,您可以使用Assembly.GetManifestResourceStream
访问它。如果您想在应用程序的窗口中显示它,那就足够了;如果要在外部程序(如记事本)中打开它,则必须将其解压缩到临时文件(Path.GetTempFileName
),然后使用Process.Start
启动Notepad.exe。