2011-04-05 59 views
1

我想创建一个不应该使用.Net或VB的exe应用程序。 这应该是一个单独的exe文件,不需要安装,只需双击exe就可以启动。创建单个EXE独立应用程序无需安装即可运行

不知道要使用哪种技术,因为它应该在任何Windows操作系统上运行,而无需安装任何额外的安装。

如果有人能帮我解决这个问题,我会很感激。

感谢&问候,

Smruti兰詹Sahoo

+0

你将很难编写一个程序,编译为一个可在“任何Windows操作系统”上正常工作的可执行文件。 – 2011-04-05 15:04:50

回答

3

你可以写你的C或C++应用程序,对C库和任何GUI库要使用(如果有的话)静态链接;作为轻量级的,静态的,现代的C++ GUI工具包,我喜欢SmartWin ++,但遗憾的是,它似乎不再开发。

请注意一些较新的编译器版本,据我所知,因为某些版本的VC++(IIRC 2005)对旧版Windows(9x/ME)的支持已被删除,并且无法运行使用此类版本VC++在这些平台上,因为CRT使用更新的API调用。

如果您需要的软件,甚至在这样的老平台上工作,你也应该抓住MSDN的旧副本,因为当前没有提到的API是否存在在Windows 9x/NT的“兼容性”框似乎认为有史以来第一个Windows版本发布是Windows 2000.

恕我直言,最好的VC++发布,为任何Windows构建可执行文件是VC++ 2003(7.1):它仍然具有兼容性较旧的Windows版本,但有一个很好的支持C++ 98(03?)标准(与VC++ 6相比,它具有非常差的模板支持)。 IIRC VC++ 7.1编译器已经由微软免费提供,它可以用于Code :: Blocks之类的IDE。

另外,MinGW是另一种值得考虑的选择,它应该能够为任何Win32目标构建可执行文件。

+1

我想在此添加的另一件事是应用程序还应该有一个用于用户交互的GUI。其实主要目的是创建一个像DOS的GUI界面,它可以运行DOS命令并将结果显示在同一个容器中(可以是多行文本框)。它应该在双击exe时运行。 :) – 2011-04-06 06:48:23

+1

@Smruti:没有问题,GUI的“基本”API或多或少稳定自Windows 95以来。 – 2011-04-06 11:46:26

+0

静态链接MSVCRT而不是动态链接是一种可行的方式。 – selbie 2011-04-07 04:00:41

0

那么你应该为此写一个C/C++应用程序。但是如果你使用核心的.NET库,你可以假定Windows机器将拥有.NET运行时,至少那些具有所有必要补丁的那些。

+0

OP表示他的可执行文件需要在“任何Windows操作系统”上运行,并且由于.NET自Windows 98以来才存在,所以您的答案是错误的。 – 2011-04-05 15:04:23

+0

但我也需要应用程序的GUI应该在那里... – 2011-04-06 06:45:15

0

把你的手放在Visual C++ 1.52的副本上,然后编写Win16代码。有机会你可以在Win3上完成这项工作。让编译器在Win1或2上成功定位真实模式可能会很有挑战性 - 特别是如果你想使用DLL,因为我怀疑VC1.52是否会发出必要的thunk。当然,这些代码不会在Win64上运行 - 我敢肯定,生成一个可以在Windows 1和Win64上运行的EXE是不可能的。

+0

另一件我想在这里添加的应用程序也应该有一个用户交互的GUI。其实主要目的是创建一个像DOS的GUI界面,它可以运行DOS命令并将结果显示在同一个容器中(可以是多行文本框)。它应该在双击exe时运行。 :) - – 2011-04-06 06:50:48

+0

为什么投票?这个问题说“任何Windows操作系统”。那不包括Win3.11? – Stewart 2011-04-11 10:34:04

相关问题