是否可以将.NET 2.0应用程序部署为可移植可执行文件? 这样我的程序就可以在没有在目标机器上安装.NET Framework 2.0的Flash Disk中运行。或者也许可以使用所需的.NET DLL分发我的程序,这样就不需要安装框架了吗?
我知道有一些替代工具可以将我的.NET exe转换为单个本机可执行文件,如RemoteSoft Salamander,Xenocode Postbuild和Thinstall,但不幸的是我买不起。
我也尝试使用Mono的mkbundle嵌入依赖项,但是我把程序弄乱了= \(没有XP视觉风格,破坏了一些控件及其功能)
任何形式的帮助将不胜感激:)
感谢。
fyi:我的IDE是Microsoft Visual C#2008 Express Edition,以.NET Framework 2.0为目标框架。
答案 0 :(得分:9)
好吧,除了Salamander和Thinstall(现在是VMWare ThinApp)之外,如果你真的想要运行.NET,你必须安装.NET。
可以 运行Mono而无需实际安装它(不是静态链接您的程序,但包括闪存驱动器上的Mono)。我怀疑它会很棘手,因为你必须告诉运行时有关GAC位置的事情。
我在单声道常见问题解答中看不到任何相关内容,但您可能想要ping一个Mono邮件列表 - 这听起来像是一个可能有趣且有用的东西。
答案 1 :(得分:8)
没有;你需要安装框架,或者你提到的工具。
你可以看看mono的新静态链接器,但那是关于它的......
答案 2 :(得分:1)
Thinstall非常昂贵,并不适用于所有情况。如果你想在不安装.Net的情况下运行你的应用程序,你可能会遇到麻烦,尽管有一些Xenocode has a tool的工具可以为你做到这一点并且它比瘦机更便宜。
但如果你问我的意见,使用它们是个坏主意。更好地说服您的目标市场安装.Net 2(这几天非常普遍),然后使用更便宜的Obfuscator工具将所有库文件打包到一个文件中(Smartassembly有一个很好的。)
我已经使用了很长时间的Thinstall,而且我已经开发了很多技术,所以没有经验我就不会拍摄。
答案 3 :(得分:1)
我自己没试过,但这是程序:
- 资料来源:http://www.codeproject.com/Tips/392308/Csharp-Portable-Exe-File