Java 为windows创建独立程序而无需安装必备组件的最佳方法?

Java 为windows创建独立程序而无需安装必备组件的最佳方法?,java,.net,winforms,Java,.net,Winforms,我负责创建一个小型GUI启动器应用程序,将其放在CD上,为用户提供一些软件和视频。它不是专门针对精通技术的人,所以它需要非常简单。我想这里真正的症结在于它将以形式为基础 我非常希望启动器只从exe运行,而不必安装任何.net东西或安装java。我知道ClickOnce相当简单,如果有必要,我会求助于它,但我认为有没有什么简单的方法可以做到这一点值得一问 现在我主要使用visual c编程,但我有java和c方面的经验,而且我学习速度相对较快,所以可以随意推荐其他语言。为Windows创建无依赖性

我负责创建一个小型GUI启动器应用程序,将其放在CD上,为用户提供一些软件和视频。它不是专门针对精通技术的人,所以它需要非常简单。我想这里真正的症结在于它将以形式为基础

我非常希望启动器只从exe运行,而不必安装任何.net东西或安装java。我知道ClickOnce相当简单,如果有必要,我会求助于它,但我认为有没有什么简单的方法可以做到这一点值得一问


现在我主要使用visual c编程,但我有java和c方面的经验,而且我学习速度相对较快,所以可以随意推荐其他语言。

为Windows创建无依赖性可执行文件最简单的方法是使用c(或c++)中的普通Win32函数。或者,您可以使用C++的MFC,因为您可以将MFC右键链接到可执行文件中,以避免依赖于MFC DLL。
可能还有其他C/C++框架可以链接到可执行文件中。但是,如果希望依赖性最小,您可能希望避免使用Java和C#或任何其他.Net语言。

如果您使用Java编写,您可以将JRE捆绑在CD上,只需使用捆绑的JRE启动应用程序的批处理文件即可。这应该行得通,但是JRE有点大,所以你需要确保CD上有足够的空间放它

Net可能也能做类似的事情,但我从来没有研究过


最简单的方法可能是用C/C++编写一个简单的本机应用程序(或用编译成独立EXE的其他语言编写),然后使用它。

只需静态链接到C运行时库和您可能需要的任何其他库(如MFC):/MT或/MTd,位于Visual Studio中的命令行和项目属性>C/C++>代码生成>运行时库中。

现在所有windows操作系统(从win 2003开始)都预装了.Net Framework。。。因此,您可以继续使用任何CLR语言编写代码


你是说你的客户端不是技术ppl,所以从他们的机器上卸载.net框架的机会很低

> P>你可以使用C++来实现GUI,静态地链接应用程序

,这取决于最小的目标OS,如果它不给你太多的麻烦,你可以选择VB6,因为VB6运行时已经被包括在Windows 2000中的Windows中。但是,您需要坚持使用附带的控件以保持简单。

虽然Vista中包含.NET 3.0,但在此之前,Microsoft在Windows中没有安装.NET framework,请参见,即使您得到预装有.NET framework的新XP笔记本电脑,原因将是制造商附带的广告软件,而不是Microsoft,所以这不是保证。我还认为你的逻辑是错误的——用户不懂技术并不意味着它不会被(任何人)卸载,只是他们很难安装/卸载任何东西。XP的使用率仍然在60%左右。(来源:)。这是一个不容忽视的群体。