Windows Script Host

Microsoft Windows Script Host (WSH) là một công nghệ tự động của hệ điều hành Microsoft Windows cung cấp các kịch bản thực thi các file batch, nhưng với nhiều tính năng được hỗ trợ. Ban đầu nó được gọi là "Windows Scripting Host", nhưng đã được đổi tên cho bản phát hành thứ hai.

Nó là ngôn ngữ độc lập ở chỗ nó có thể làm cho việc sử dụng các công cụ ngôn ngữ Active Scripting khác nhau. Theo mặc định, nó diễn giải và chạy văn bản thuần JScript (các file.JS và.JSE) và VBScript (các file.VBS và.VBE).

Người dùng có thể cài đặt công cụ scripts khác nhau để kích hoạt các script trong các ngôn ngữ khác, ví dụ như PerlScript. Ngôn ngữ độc lập với phần mở rộng WSF cũng có thể được dùng.  Ưu điểm của Windows Script File (WSF) là nó cho phép người dùng sử dụng một sự kết hợp của ngôn ngữ scripts trong một tập tin duy nhất.

WSH engines hỗ trợ thi hành cho REXX, BASIC, Perl, Ruby, Tcl, PHP, JavaScript, Delphi, Python, XSLT, và một số ngôn ngữ khác.

Windows Script Host phân phối và cài đặt mặc định trên Windows 98 và phiên bản mới nhất của Windows. Nó cũng được cài đặt nếu Internet Explorer 5 (hoặc bản sau) được cài đặt. Bắt đầu từ Windows 2000, Windows Script Host xuất hiện để sử dụng với scripts đăng nhập của người dùng.
Cách sử dụng
Windows Script Host có thể được sử dụng cho nhiều mục đích, Bao gồm các scripts đăng nhập, quản lý và tự động hóa nói chung. Microsoft mô tả nó như là một công cụ quản trị.WSH là gì? WSH cung cấp một môi trường để chạy các scripts – Nó sẽ gọi script engine thích hợp và cung cấp một tập hợp các dịch vụ, đối tượng để làm việc với các script. Các script có thể được chạy trong chế độ GUI (WScript.exe) hoặc chế độ dòng lệnh (CScript.exe) cung cấp sự linh hoạt cho người sử dụng với các script tương tác hoặc không tương tác.Windows Script Host Basics WSH thực hiện một mô hình đối tượng đưa ra một tập hợp các giao diện Component Object Model (COM).Windows Script Host Object Model

Ví dụ

Ví dụ đầu tiên là rất đơn giản; nó cho thấy một số VBScript sử dụng các đối tượng gốc COM WSH "WScript" để hiển thị một tin nhắn với một nút 'OK'. Sau khi tung ra kịch bản này, các công cụ CScript hoặc WScript sẽ được gọi và môi trường thời gian chạy được cung cấp.

Nội dung của một file hello0.vbs
WScript.Echo "Hello world"
WScript.Quit
Lập trình WSH cũng có thể sử dụng ngôn ngữ JScript.

Nội dung file hello1.js
WSH.Echo("Hello world");
WSH.Quit();

Hoặc, code có thể được trộn lẫn trong một file SWF, chẳng hạn như VBScript và JScript, hoặc bất kỳ khác:
Nội dung của một tập tin  hello2.wsf 
<job>
<script language="VBScript">
  MsgBox "hello world (from vb)"
</script>
<script language="JScript">
  WSH.echo("hello world (from js)");
</script>
</job>

Lo ngại về An ninh
Các ứng dụng và tiến trình trong Windows có thể được tự động bằng cách sử dụng một script trong  Windows Script Host. Virus và malware có thể được viết để khai thác khả năng này. Vì vậy,đã có một số đề nghị vô hiệu hóa nó vì lý do an ninh. Ngoài ra, các chương trình chống virus có thể cung cấp tính năng kiểm soát.vbs và các script khác chạy trong môi trường WSH.
Từ phiên bản 5.6 of WSH, các script có thể là Chữ ký số được lập trình bằng cách sử dụng các đối tượng Scripting.Signer trong một script của chính nó, cung cấp mộtchứng thực khóa công khai là có mặt trên hệ thống. Ngoài ra, các công cụ signcode từ  SDK Platform, đã được mở rộng để hỗ trợ các định dạng tập WSH, có thể được sử dụng tại các dòng lệnh.In-depth discussion of the security features in WSH 5.6

Bằng cách sử dụng Software Restriction Policies được giới thiệu với Windows XP, một hệ thống có thể được cấu hình để thực thi chỉ là những script mà đã có chữ ký số, do đó ngăn ngừa việc thi hành của các kịch bản không đáng tin cậy.Windows Script Host 5.6 Boasts Windows XP Integration, Security, New Object Model

Script engines có sẵn

 Tên Ngôn ngữ Phần mở rộng Availability Produced By Tình trạng Thời gian Ghi chú VBScript Microsoft Visual Basic, Scripting Edition.vbs Cài đặt mặc định Microsoft Cài đặt mặc định 1999  JScript Microsoft JScript.js Cài đặt mặc định Microsoft Cài đặt mặc định 1999  PerlScript Perl.pls với ActiveState Perl ActiveState  1999  ooRexxScript REXX.rxs với Open Object Rexx Open Object Rexx team Mã nguồn mở   PythonScript Python.pys SourceForge The Pywin32 project Mã nguồn mở   TclScript Tcl/Tk.tcls SourceForge ActiveState hoặc bên thứ 3 Mã nguồn mở   ActivePHPScript PHP.phps với PHP PHP team Mã nguồn mở   RubyScript Ruby.rbs with Ruby Ruby team Mã nguồn mở   Object REXX engine Object REXX  với IBM Object REXX IBM Thương mại 2002  Delphi scripting engine Delphi Trong một số bản phân phối hoặc gói mã nguồn Delphi  Thương mại 2003 

Lịch sử các phiên bản
 Windows version Shipped with WSH version Last redistributable version Windows 95 None (separate redistributable) 5.6 Windows NT 4.0 None (separate redistributable) 5.6 Windows 98 1.0 5.6 Windows 2000 2.0 (cũng được gọi là WSH 5.1) 5.7 Windows Me 2.0 (cũng được gọi là WSH 5.1) 5.6 Windows XP, Windows Server 2003 5.6 5.7 Windows Vista, Windows Server 2008, Windows XP SP3 5.7 Không áp dụng Windows 7, Windows Server 2008 R2 5.8 Không áp dụng

Bản phân phối của WSH 5,6 có thể được cài đặt trên Windows 95/98/Me và Windows NT 4.0/2000.
WSH 5,7 là miễn phí cho Windows 2000, Windows XP và Windows Server 2003. Gần đây, các phiên bản phân phối chung cho các hệ thống điều hành cũ hơn (Windows 9x và Windows NT 4.0) không còn có sẵn từ Microsoft Download Center.

Với Windows XP Service Pack 3, bản phát hành 5,7 là không cần thiết vì nó được bao gồm.

Xem thêm
HTML Components
JScript.NET
Microsoft Script Debugger
Shell script
Windows PowerShell

Tham khảo

Liên kết ngoài
WSH Primer trên Microsoft TechNet – Bắt đầu với WSH
Trang chủ WSH tại MSDN
WSH Reference
Ghi chú phân phối của Windows Script 5.7

Thể loại:Windows components
Thể loại:Windows administration
Thể loại:Internet Explorer
Thể loại:Quản trị Windows
Thể loại:Thành phần Windows