เปิดกรุ รูปแบบการเขียน JAVA Script และการใช้งานเบื้องต้น
สิ่งที่ต้องคำนึงถึงและให้ความสำคัญก่อนลงมือเขียน JScript 
คือองค์ประกอบของรูปแบบและการจัดวางสคริ๊ปที่ถูกต้อง
ก่อนเริ่มการเขียนควรสร้างจุดประสงค์ไว้ก่อนว่า
เขียนแล้วนำไปใช้ทำอะไร? เช่น เขียนออกมาเป็นโปรแกรมใช้งานเลย หรือ
นำไปใช้งานร่วมกับโปรแกรมภาษาอื่นๆ เป็นต้น. 
----------------------------------------------------------------------
ลำพังเพียงJScript เพียงอย่างเดียว ไม่สามารถสั่งงานอะไร?บนวินโดว์ได้ 
JScript ต้องอาศัยทำงานร่วมกับโปรแกรมคำสั่งหลักอื่นๆที่อยู่ภายในวินโดว์ 
จึงจะสามารถสั่งให้วินโดว์ทำงานได้ ซึ่งได้แก่..WScript และ CScript 
WScript (Windows Script Host - window based (WScript.exe)) ใช้สั่งงานกับวินโดว์โดยตรง 
CScript (Windows Script Host - command line (CScript.exe)) ใช้สั่งงานกับวินโดว์ผ่านทางโปรแกรม Command Prompt
และยังมีโปรแกรมคำสั่งภายในวินโดว์อื่นๆอีก เช่น Microsoft Script Control (embedded) , Microsoft Internet Explorer เป็นต้น
เรามาดูกันซิว่า คำสั่งต่างๆนั้นมีรูปแบบอย่างไรบ้าง
----------------------------------------------------------------------
นี่คือรูปแบบสคริ๊ปคำสั่งของ JScript ..คำประกาศตัวแปรใช้คำว่า.. var 
ActiveXObject Object ..เขียนออกมาเป็นรูปแบบได้ ดังนี้
รหัส:
newObj = new ActiveXObject(servername.typename[, location])
ภายในคำสั่งที่เป็น Statement ต้องใส่เครื่องหมาย { } ครอบหัว-ท้ายไว้
---------------------------------------------------------------------
เรามาลองเขียนคำสั่งง่ายๆ ..ในกรณีย์นี้ใช้เป็น JAVA Popup Message ก็แล้วกัน
ใครจะใช้ Notepad หรือ Script editor เขียนก็ได้ตามสดวก
เขียนเสร็จแล้วให้ Save As เป็นไฟล์สกุล .js 
----------------------------------------------------------------------
ตัวอย่างการเขียนJScript (คำสั่งรัน Popup Message)
Popup Message เป็น Object ของคำสั่ง WScript.Shell
รูปแบบของ Popup Message มีดังนี้
รหัส:
object.Popup(strText,[nSecondsToWait],[strTitle],[nType])
--------------------------------------------------------
JScript แบบเขียนเต็ม ..เมื่อเขียนเสร็จให้ Save As เป็นไฟล์สกุล .js
รหัส:
var ShellObj; ShellObj=new ActiveXObject("WScript.Shell");ShellObj.Popup("Hello World!1");WScript.Echo("Hello World!2");
----------------------------------------------------------------------
คำอธิบาย:
ShellObj คือชื่อตัวแปรที่ตั้งขึ้น
new ActiveXObject("WScript.Shell"); หมายถึง รูปแบบคำสั่งที่ใช้เขียน 
โดยอ้างหรือใช้คำสั่งภายใน ของวินโดว์ร่วมด้วย อันประกอบไปด้วย
ActiveXObject และ servername.typename
ShellObj.Popup("Hello World!"); คำสั่งรัน Popup Message.. Hello World!
ส่วนคำสั่ง WScript.Echo นั้นเป็นคำสั่งจาก Windows โดยตรง (WSH) 
----------------------------------------------------------------------
popup Message แบบมีเงื่อนไข ใช้ตัวเลือก Switch Case
รูปแบบ: Popup Message
รหัส:
intButton = object.Popup(strText,[nSecondsToWait],[strTitle],[nType])
---------------------------------------------------------------------
Switch Statement
รูปแบบ: ตัวเลือก Switch Case
รหัส:
switch (expression) {case label :statementlistcase label :statementlist...default :statementlist}
------------------------------------------------------------------ 
ตัวอย่าง:แบบเขียนเต็ม
จุดประสงค์: ต้องการให้ยืนยันคำตอบว่า..'ต้องการรันโปรแกรมเครื่องคิดเลขใช่หรือไม่?'
รหัส:
var Shell,BtnCode;Shell = new ActiveXObject("WScript.Shell");BtnCode = Shell.Popup("ท่านต้องการเปิดโปรแกรมเครื่องคิดเลขใช่หรือไม่?",0,"Test Project",36);switch (BtnCode) {case 6:Shell.Run("Calc.exe");break;case 7:Shell.Popup("เปิดใหม่ภายหลัง",0,"",64);break;}
__________________
 
 Scripting FileSystemObject
ต่อไปเป็นคำสั่งการจัดการเกี่ยวกับไฟล์และโฟลเดอร์
รูปแบบคำสั่งหลัก:

รหัส:
fso = new ActiveXObject("Scripting.FileSystemObject");
คำอธิบาย:เมื่อจะจัดการข้อมูลต่างๆ.. สังเกตุคำสั่งที่อยู่ในวงเล็บจะเปลี่ยนไป 
--------------------------------------------------------------------
คำสั่ง:ก๊อบปี้ไฟล์
รูปแบบคำสั่ง:

รหัส:
object.CopyFile ( source, destination[, overwrite] )

คำอธิบาย:
object หมายถึง ตัวแปร
.CopyFile หมายถึง คำสั่งก๊อบปี้ไฟล์
source หมายถึง พาทไฟล์ต้นทาง
destination หมายถึง พาทที่อยู่หรือที่เก็บไฟล์ปลายทาง
overwrite หมายถึง เขียนทับไฟล์ ซึ่งมีคำสั่งให้เลือกเขียนดังนี้
true ..ถ้าใช้คำสั่งนี้ หมายถึง ให้เขียนทับไฟล์เดิมที่มีชื่อซ้ำกัน
false ..ถ้าใช้คำสั่งนี้ หมายถึง ละเว้น ..ใช้ได้กับไฟล์ที่ใช้อ่านเท่านั้น
ถ้าไม่ใส่คำสั่ง true หมายถึง ไม่ต้องเขียนทับ
--------------------------------------------------------------
ตัวดำเนินการ,สัญญลักษณ์ และความหมาย:
\\ หมายถึง backslash ลำดับพาทไฟล์,โฟลเดอร์
*. หมายถึง ระบุไฟล์ทั้งหมดที่มีสกุลเดียวกัน
*.* หมายถึง ระบุไฟล์ทั้งหมด ทุกสกุล
\n หมายถึง line feed(newline)ใช้ใส่คั่นในข้อความที่ยาวๆ เพื่อขึ้นบันทัดใหม่ให้ข้อความ ดังรูป



-------------------------------------------
ตัวอย่าง:การเขียนคำสั่งก๊อบปี้ไฟล์ โดยใช้ เงื่อนไข Popup Message Yes No
กรณีย์นี้สั่งก๊อบปี้ไฟล์ทุกสกุลที่อยู่ใน My Documents มาวางไว้บนหน้าจอ

รหัส:
var ShellObj, fso, BtnCode;ShellObj = new ActiveXObject("WScript.Shell");fso = new ActiveXObject("Scripting.FileSystemObject");BtnCode = ShellObj.Popup("ท่านต้องการก๊อบปี้ไฟล์ทุกสกุลใน My Documents ใช่หรือไม่?",0,"Test Copy",36);switch (BtnCode) {case 6: fso.CopyFile ("C:\\Documents and Settings\\Administrator\\My Documents\\*.*", "C:\\Documents and Settings\\Administrator\\Desktop", true);ShellObj.Popup("ก๊อบปี้เรียบร้อย.",0,"",64);break;case 7:ShellObj.Popup("ก๊อบปี้ใหม่ภายหลัง.",0,"",64);break;}

--------------------------------------------------------------
Tip:การนำไฟล์สคริ๊ปคำสั่ง .js ไปใช้งานโดยตรง อาจเสี่ยงต่อการถูกแก้ไขสคริ๊ป ทำให้เกิด Error! ได้

ฉนั้นควรแปลงไฟล์(convert)จาก .js เป็น .exe ก่อน นำไปใช้งานตามปกติ

 คำสั่งก๊อบปี้โฟลเดอร์

รูปแบบ:
รหัส:
object.CopyFolder ( source, destination[, overwrite] );
------------------------------------------------------------------
ในกรณีย์นี้ สั่งก๊อบปี้โฟลเดอร์ทั้งหมด ที่มีอยู่ใน My Documents มาไว้ที่เดสก์ทอป

รหัส:
var ShellObj, fso, BtnCode;ShellObj = new ActiveXObject("WScript.Shell");fso = new ActiveXObject("Scripting.FileSystemObject");BtnCode = ShellObj.Popup("ท่านต้องการก๊อบปี้โฟลเดอร์ทั้งหมดใน My Documents ใช่หรือไม่?",0,"Test Copy",36);switch (BtnCode) {case 6:fso.CopyFolder ("C:\\Documents and Settings\\Administrator\\My Documents\\*.*", "C:\\Documents and Settings\\Administrator\\Desktop", true)ShellObj.Popup("ก๊อบปี้เรียบร้อย.",0,"",64);break;case 7:ShellObj.Popup("ก๊อบปี้ใหม่ภายหลัง.",0,"",64);break;}

  คำสั่งสร้างโฟลเดอร์

รูปแบบ:
รหัส:
object.CreateFolder(foldername)
กรณีย์นี้ ต้องการสร้างโฟลเดอร์ขึ้นมาใหม่ ชื่อ NewFolder และวางไว้บนหน้าจอ
รหัส:
var fso;fso = new ActiveXObject("Scripting.FileSystemObject");fso.CreateFolder("C:\\Documents and Settings\\Administrator\\Desktop\\NewFolder");
__________________
 
อันนี้เป็นการรวม2คำสั่งเข้าด้วยกัน
กรณีย์นี้สั่งสร้างโฟลเดอร์ขึ้นมาแล้วก๊อบปี้ไฟล์ทั้งหมดที่มีอยู่ใน My Documents มาไว้ในโฟลเดอร์ที่สร้างขึ้น
รหัส:
var fso;fso = new ActiveXObject("Scripting.FileSystemObject");fso.CreateFolder("C:\\Documents and Settings\\Administrator\\Desktop\\NewFolder");fso.CopyFile("C:\\Documents and Settings\\Administrator\\My Documents\\*.*","C:\\Documents and Settings\\Administrator\\Desktop\\NewFolder",true);
__________________
 
ที่มา forums.overclockzone.com
 
และยังสามารถนำไปใช้เขียนโปรแกรมร่วมกับ Visual Basic ได้ด้วย 

Comment

Comment:

Tweet