有没有办法让c#程序成为一个单一的,可执行的文件,人们可以下载和播放,而不是安装?如何组合一个程序的所有资源?
-3
A
回答
1
你的问题不是很清楚,但我认为你正在寻找embedded resources。
概述
.NET框架可以封装文件作为已编译的程序集的一部分。这些文件被称为嵌入式资源。这些资源与与程序集关联的.resources和.resx文件完全分离。您可以在运行时通过System.Reflection命名空间的Assembly类访问这些资源。
将资源嵌入清单的一个主要优点是,因为这些文件是编译程序集的一部分,所以用户不会意外删除或放错对应用程序至关重要的文件,这在某些情况下可能会阻止执行程序。这种方法的一个限制是,如果不重新编译程序,您不能将此文件的任何更改保存到程序集中。因此,只包含在应用程序生命周期中不会更改为嵌入式资源的文件。
读取嵌入资源示例代码:
_assembly = Assembly.GetExecutingAssembly(); _imageStream = _assembly.GetManifestResourceStream("MyNamespace.MyImage.bmp"); _textStreamReader = new StreamReader(_assembly.GetManifestResourceStream("MyNamespace.MyTextFile.txt"));
0
检查项目的bin文件夹,它应该有,你可以只运行一个可执行文件。
1
你可以使用微软研究院developped的ILMerge tool
多个组件组合成一个。
相关问题
- 1. WinApi - >如何创建一个组合框(没有资源)
- 2. 如何在启动应用程序时加载所有资源?
- 3. 如何确保下载所有应用程序缓存资源?
- 4. 如何从silverlight程序集加载所有资源?
- 5. 如何获取资源文件中所有资源的名称
- 6. 如何获得一个数组列表的所有组合?
- 7. 查找另一个程序集中的所有嵌入式资源
- 8. 如何将所有dll合并为一个应用程序?
- 9. iPhone/iOS:如何列出资源组中的所有文件?
- 10. 合并应用程序资源 - mac
- 11. 组合优化资源
- 12. 如何从另一个脚本使用资源处理程序
- 13. 如何从另一个应用程序加载资源?
- 14. 如何释放进程的所有资源?
- 15. 如何组织资源在Web应用程序的URL结构
- 16. 为程序提供所有可能的资源
- 17. 检索程序集中的所有资源管理器
- 18. Java不会释放应用程序中的所有资源close
- 19. 如何使用double数组的资源创建wpf组合框?
- 20. 哪里有适合HTML5的所有Javascript API的优秀资源
- 21. 程序获得球箱应用程序的所有组合
- 22. 如何匹配除一个之外的所有组合?
- 23. 如何从所有组合中随机选取多个组合?
- 24. 如何列出所有月份名称,例如一个组合?
- 25. 如何在Azure资源组中没有标签的情况下获取所有Azure资源
- 26. 程序集资源
- 27. 如何管理应用程序资源?
- 28. 如何处理应用程序资源
- 29. 资源本地化:使用x:UID引用另一个程序集的资源
- 30. 如何在Cilk Plus中组织非线程安全资源池(每个工作者一个资源)?
是的。编译它。 – mawburn 2012-07-08 19:00:40