Windows支持的语言开箱即用

时间:2011-10-05 07:10:54

标签: windows programming-languages installation cross-compiling

我被要求为一组Windows机器(XP认为)编写一个(非常)简单的程序 - 这么简单,语言的选择并不是真正的问题。但是,我希望能够分发直接在Windows机器上运行的二进制文件/脚本,而无需预先安装任何解释器或虚拟机。我正在Linux机器上开发,我不知道Windows支持哪种语言“开箱即用”。有人可以建议吗?

例如

  • Perl会很棒,但我不相信Windows机器预装了Perl吗?要求用户安装Perl才能使用我的脚本。
  • 我相信Python有同样的问题? (虽然也许我可以使用PyInstaller? - as in this question
  • 同样是Java?是否在大多数Windows发行版上预安装了虚拟机? (我知道在与Sun Microsystems发生争执后它被删除了吗?)

到目前为止,我能想到的唯一选择是

  • c / c ++与MinGW交叉编译器。

虽然我很乐意用c ++编写代码,但我想先检查一下我的语言选项。

4 个答案:

答案 0 :(得分:3)

Delphi和Lazarus / FreePascal生成MSVCRT甚至不需要的本机应用程序

其他一些系统对相对较新的MSVCRT版本有要求,这可能是旧版Windows的负担。

然而,最近的Lazarus和Delphi版本停止支持Windows NT4和Win9x,win2000处于灰色区域(不支持但是工作正常)

拥有内部win32 / 64链接器,使其成为从* nix到Windows进行交叉编译的绝佳选择。

答案 1 :(得分:2)

开箱即用的唯一脚本语言是批量解释器,vbscript和jscript。除此之外,你是编译语言。一个很好的选择可能是C#,但要确保你的目标是XP附带的.net版本。

答案 2 :(得分:1)

任何编译为纯本机程序集的语言(没有特殊的运行时依赖性)应该没问题。例如:许多C变体(但不是全部),Microsoft Visual C ++,Microsoft Visual Basic 6,OCaml,Haskell等。

要求.NET Framework(它还提供C#,VB.NET和F#)是合理的,JVM也非常标准(因此你得到Java,Closure和Scala)。

答案 3 :(得分:1)

我认为Java不会预装在Windows上。

我现在几年没有使用Windows了,但是如果我正确记得你可以使用VBScript或JScript开发脚本并部署它们而无需客户端安装任何东西。