Language agnostic 什么是Windows脚本语言:不依赖.NET,提供最多的OOP支持,部署最简单?

Language agnostic 什么是Windows脚本语言:不依赖.NET,提供最多的OOP支持,部署最简单?,language-agnostic,vbscript,oop,Language Agnostic,Vbscript,Oop,什么是Windows脚本语言:不依赖.NET,提供最多的OOP支持,部署最简单 它不一定是一种脚本语言;它可以是编译的可执行文件的形式,但是它需要是自包含的——只有一个文件,没有DLL,并且不能声明为“包含”其他文件。我不能指望用户安装了任何.NET,它需要能够在64位Windows 7上运行 我所说的“大多数OOP支持”,基本上是指任何比VBScript更好的OOP支持 一点背景:到目前为止,我所做的一切都是在VBScript中完成的,并将一组数据写入一个.html文件,最终将由Interne

什么是Windows脚本语言:不依赖.NET,提供最多的OOP支持,部署最简单

它不一定是一种脚本语言;它可以是编译的可执行文件的形式,但是它需要是自包含的——只有一个文件,没有DLL,并且不能声明为“包含”其他文件。我不能指望用户安装了任何.NET,它需要能够在64位Windows 7上运行

我所说的“大多数OOP支持”,基本上是指任何比VBScript更好的OOP支持

一点背景:到目前为止,我所做的一切都是在VBScript中完成的,并将一组数据写入一个.html文件,最终将由Internet Explorer查看。它还可以压缩一堆目录和文件。它严重依赖于访问注册表、文件系统和WMI(不过,只要我有良好的注册表访问权限,我可能不需要访问WMI)

我可以用任何一种语言写作,只要它符合我上述的要求


我期待那些比我更有经验的人给我一些好的答案。

有OOP支持。没有.Net。而且安装非常简单:双击MSI。

PowerShell非常棒。当然,你应该有.NET。但是你看:它已经安装在Windows7和Vista上,被广泛使用,在网上有大量的文档和样本。

我建议。它可以编译成单个exe,允许VBS提供的许多功能,以及更多功能。能够构建简单而复杂的gui,并可在所有Windows系统上运行(较旧的autoit v3版本支持较旧的gui,最新版本支持
win2k/xp
及以上)。它同时支持32/x64

最好的是他们的。就像这样,它们可以帮助你完成简单和复杂的任务。它还有一个很好的帮助文件,描述了所有命令,并举例说明了如何使用它们

AutoIt v3是一种类似于基本免费软件的脚本语言,旨在实现Windows GUI和通用脚本的自动化。它结合使用模拟按键、鼠标移动和窗口/控件操作,以其他语言(如VBScript和SendKeys)无法实现或不可靠的方式自动化任务。AutoIt也是非常小的、独立的,可以在所有版本的开箱即用Windows上运行,无需烦人的“运行时”

AutoIt最初设计用于PC“推出”情况,以可靠地自动化和配置数千台PC。随着时间的推移,它已成为一种强大的语言,支持复杂表达式、用户函数、循环以及资深脚本编写人员所期望的一切

特点:

* Easy to learn BASIC-like syntax
* Simulate keystrokes and mouse movements
* Manipulate windows and processes
* Interact with all standard windows controls
* Scripts can be compiled into standalone executables
* Create Graphical User Interfaces (GUIs)
* COM support
* Regular expressions
* Directly call external DLL and Windows API functions
* Scriptable RunAs functions
* Detailed helpfile and large community-based support forums
* Compatible with Windows 95 / 98 / ME / NT4 / 2000 / XP / 2003 / Vista / 2008
* Unicode and x64 support
* Digitally signed for peace of mind
* Works with Windows Vista's User Account Control (UAC)

它可能不是面向对象的,但它可以实现您的目标。

请注意,这本质上是用于windows脚本的javascript,这对传统的面向对象编程来说可能比vbscript更糟糕。@Joel-它可能不是传统的面向对象编程,但它确实提供了面向对象的功能。是的-我不是有意贬低,我确实投票支持您,但它触及了问题的核心,因此令人厌烦。如果我没记错的话,至少JScript允许继承,那么这是VBScript I的一个进步think@JoelJavaScript具有OOP:函数充当类,变量可以是私有的,它具有继承性,接口可以模拟,等等。我发现它本质上非常OOP,虽然对它不严格,但它不符合他的“只有一个文件”和“不能声明为‘包含’其他文件”的要求。Python对大多数功能使用
import
,这要求它查找特定的模块。@John Feminella:使用py2exe或类似工具,您肯定可以将所有内容(Python解释器、使用的库、代码、数据等)打包到一个自包含的可执行文件中+1对于Python回答:考虑到imo的假设,这将是一个非常好的选择。啊,我希望有人会说Python!我想也有人提供了COM模块。然而,我需要完成部署——我认为用户需要安装解释器引擎之类的东西。@ChristopheD,这并不完全可靠。例如,您可以动态加载库,如果您的Python应用程序使用这些库,它将在运行时崩溃。不过,我想我同意Python是一种可能性,所以+1。一旦安装了Python,脚本就可以是单个文件。我不知道这是否符合令人费解的要求“只有一个文件,没有DLL,不能声明为“包含”其他文件”,我肯定会使用PowerShell;如果我知道每个人都有.NET+1。我一直在用它来快速修补补丁。我能够编写库,将它们编译成一个不需要任何特定框架的Exe,并且能够将文件打包到Exe中进行部署。读取注册表,使用文件系统,使用文件。。。使用AutoIt对象的AutoIt可以实现OOP和AutoIt。这是一个非常聪明的UDF/DLL组合。您可以在此处找到有关它的更多信息: