Announcement

Collapse
No announcement yet.

VBscript & JScript เทคนิค

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Common Files Dialogเป็นคำสั่งที่ใช้เปิดหน้าต่างBrowse เพื่อเลือกและเปิดไฟล์ต่างๆ

    Code:
    var dialog = new ActiveXObject("MSComDlg.CommonDialog");
    var FsoObj=new ActiveXObject("Scripting.FileSystemObject");
    var objShell = new ActiveXObject("Shell.Application");
    var ShellObj=new ActiveXObject("WScript.Shell");
    dialog.Filter = "Program Files (*.exe;*.msi)|*.exe;*.msi|All Files (*.*)|*.*|";
        dialog.MaxFileSize = 260;
        dialog.DialogTitle = "Open";
        dialog.InitDir = "C:\\Documents and Settings\\Administrator\\Desktop";
     dialog.ShowOpen();
     if (dialog.FileName != "") {
    tFiles = dialog.FileName
    objShell.ShellExecute(tFiles);
     }
    Last edited by sak2005; 1 Nov 2009, 10:40:13.

    Comment


    • #17
      อันนี้เป็นโค๊ดคำสั่ง Auto Installer & Silent Mode ใช้ติดตั้งโปรแกรมต่างๆแบบอัตโนมัติ

      Code:
      var dialog = new ActiveXObject("MSComDlg.CommonDialog");
      var objShell = new ActiveXObject("Shell.Application");
      var inputDlg = new ActiveXObject("InputDlg.Dialog");
      ShellObj=new ActiveXObject("WScript.Shell");
      dialog.Filter = "Program Files (*.exe;*.msi)|*.exe;*.msi|All Files (*.*)|*.*|";
      dialog.MaxFileSize = 260;
      dialog.DialogTitle = "Browse a file to Install";
      Dest ="C:\\Documents and Settings\\Administrator\\Desktop";
      dialog.InitDir = "Dest";
      dialog.ShowOpen();
      silent = inputDlg.InputBox("Parameter","Silent Switches");
      if (dialog.FileName != "") {
      if (silent != "") {
      source = dialog.FileName;
      btn = ShellObj.Popup("ท่านต้องการติดตั้งใช่หรือไม่?",0, "File path=" + source,36);
      switch (btn) {
      case 6:
      objShell.ShellExecute(source, silent);
      }
      }
      }
      Last edited by sak2005; 2 Nov 2009, 12:12:03.

      Comment


      • #18
        เมื่อไม่มีคำถามจากผู้ใด?!? เกี่ยวกับ JScript ผมขอเริ่มต้น VBScript เลยก็แล้วกัน
        จะใช้ Notepad หรือ Script editor เขียนคำสั่งก็ได้ เมื่อเขียนคำสั่งเสร็จแล้วก็ให้ Save as เป็นไฟล์สกุล .vbs
        ----------------------------------------------------------------------------
        MsgBox และ Popup Message มีลักษณะคล้ายกัน คือ
        เป็นกล่องหรือกรอบแสดงข้อความ จะแตกต่างกันที่ รูปแบบคำสั่งเท่านั้น
        เรามาดูตัวอย่างแรก อย่างง่ายกัน
        ---------------------------------------------------------
        Code:
        MsgBox "ยินดีต้อนรับสู่บทเรียน VBScript"
        Last edited by sak2005; 2 Nov 2009, 13:01:16.

        Comment


        • #19
          รูปแบบเต็ม: MsgBox

          Code:
          MsgBox(prompt[, buttons][, title][, helpfile, context])
          ------------------------------------------------------------------------------
          รูปแบบ: แบบมีเงื่อนไข

          Code:
          ฺBtnCode = MsgBox(prompt[, buttons][, title][, helpfile, context])
          ------------------------------------------------------------------------------------------
          รายละเอียด:
          prompt หมายถึง ข้อความที่แสดงบนหน้าต่าง
          title หมายถึง ข้อความที่แสดงบนไตเติลบาร์
          buttons หมายถึง รูปไอคอนและปุ่มต่างๆ ที่ต้องการให้แสดงบนหน้าหน้าต่าง ซึ่งมีรายละเอียดดังนี้


          -----------------------------------------------------------------
          สมมุติถ้าเราใส่หมายเลข 36 หรือ 4+32 ที่ตำแหน่ง buttons
          ก็จะปรากฏ ปุ่ม yes,no และรูปไอคอนเครื่องหมายคำถาม อยู่บนหน้าต่าง ดังตัวอย่าง

          Code:
          MsgBox"ทดสอบ?", 36, "Sample"
          -------------------------------------------------------------
          ถ้าต้องการใช้งานปุ่ม yes,no ให้เป็นประโยชน์ ก็ต้องใส่ 'เงื่อนไขตัวแปร' และ If ..statement ดังนี้
          Code:
          Dim BtnCode
          BtnCode = MsgBox("ท่านต้องการทดสอบกดปุ่ม?", 4+32, "Confirm Message")
          If BtnCode = VByes Then
          MsgBox "ท่านกดปุ่มYES"
          Else
          MsgBox "ท่านกดปุ่มNO"
          End if

          Comment


          • #20
            Windows Script Host Popup Method
            รูปแบบ:

            Code:
            intButton = object.Popup(strText,[nSecondsToWait],[strTitle],[nType])
            รายละเอียด:
            strText หมายถึง ข้อความบนหน้าต่าง
            strTitle หมายถึง ข้อความบนไตเติลบาร์
            nSecondsToWait หมายถึง ตั้งเวลาปิดหน้าต่าง/วินาที
            nType หมายถึง รูปไอคอนและปุ่มบนหน้าต่าง
            -----------------------------------------------------------------------------------
            Popup Message เป็นคำสั่ง Wscript Shell Object ที่มีอยู่ในวินโดว์ แต่เราต้องสร้างขึ้นด้วยคำสั่ง ดังนี้

            Code:
            Set ShellObj=CreateObject("WScript.Shell")
            ShellObj.Popup
            อันนี้เป็นการเขียน นำpopupไปใช้งานแบบง่าย

            Code:
            Set ShellObj=CreateObject("WScript.Shell")
            ShellObj.Popup("Hello World!")
            Last edited by sak2005; 4 Nov 2009, 09:07:56.

            Comment


            • #21
              InputBoxเป็นหน้าต่างโต้ตอบ ที่ให้ผู้ใช้กรอกข้อความลงในช่องว่าง
              รูปแบบ:

              Code:
              InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context])
              ---------------------------------------------------------------------------------
              ตัวอย่างการใช้งาน:กรณีย์นี้เป็นการสร้างเงื่อนไขคำถามว่า..ท่านชื่ออะไร?

              Code:
              Dim StrName
              StrName=InputBox("กรุณากรอกชื่อของท่านลงในช่องว่าง", "Test inputbox")
              MsgBox"ท่านชื่อ" & StrName

              Comment


              • #22
                Scripting File System Object เป็นคำสั่งที่มีอยู่ในวินโดว์ เมื่อจะใช้งาน ต้องสร้างคำสั่งขึ้นมาใหม่ ดังนี้
                รูปแบบ:

                Code:
                CreateObject(servername.typename [, location])
                --------------------------------------------------------------
                สร้างคำสั่ง:

                Code:
                Set FsoObj=CreateObject("Scripting.FileSystemObject")

                Comment


                • #23
                  คำสั่ง:สร้างโฟลเดอร์ใหม่
                  รูปแบบ:
                  Code:
                  object.CreateFolder(foldername)
                  --------------------------------------------------
                  ตัวอย่าง:สร้างโฟลเดอร์ใหม่ ชื่อ newfolder แ้ละวางไว้ที่หน้าจอ
                  Code:
                  Dim FsoObj
                  Set FsoObj=CreateObject("Scripting.FileSystemObject")
                  FsoObj.CreateFolder("C:\Documents and Settings\Administrator\Desktop\newfolder")
                  Set FsoObj=Nothing
                  ---------------------------------------------------------
                  หรือเขียนแบบนี้ก็ได้ผลเช่นเดียวกัน
                  Code:
                  Dim FsoObj
                  Set FsoObj=CreateObject("Scripting.FileSystemObject")
                  StrName="C:\Documents and Settings\Administrator\Desktop\newfolder"
                  FsoObj.CreateFolder(StrName)
                  Set FsoObj=Nothing

                  Comment


                  • #24
                    คำสั่ง:ย้ายโฟลเดอร์ (จากที่หนึ่ง? ไปยังอีกที่หนึ่ง!)
                    รูปแบบ:
                    Code:
                    object.MoveFolder ( source, destination )
                    -----------------------------------------------------------
                    ตัวอย่าง:ย้ายโฟลเดอร์ชื่อ newfolder ที่อยู่บนหน้าจอ ไปไว้ในไดร์ C:\
                    Code:
                    Dim FsoObj
                    Set FsoObj=CreateObject("Scripting.FileSystemObject")
                    FsoObj.MoveFolder"C:\Documents and Settings\Administrator\Desktop\newfolder", "C:\"
                    Set FsoObj=Nothing
                    ----------------------------------------------------------------------------------
                    อันนี้เป็นคำสั่งย้าย newfolder กลับมาที่เดิม
                    Code:
                    Dim FsoObj
                    Set FsoObj=CreateObject("Scripting.FileSystemObject")
                    FsoObj.MoveFolder"C:\newfolder", "C:\Documents and Settings\Administrator\Desktop\"
                    Set FsoObj=Nothing

                    Comment


                    • #25
                      คำสั่ง:ก๊อบปี้โฟลเดอร์
                      รูปแบบ:
                      Code:
                      object.CopyFolder ( source, destination[, overwrite] )
                      -----------------------------------------------------------------
                      รายละเอียด:
                      source หมายถึง โฟลเดอร์ที่จะก๊อบปี้ หรือ ไฟล์ต้นทาง
                      destination หมายถึง โฟลเดอร์ที่ถูกก๊อบปี้ หรือ ไฟล์ปลายทาง
                      overwrite หมายถึง คำสั่งที่เป็น Option ให้เลือกใช้ในการก๊อบปี้ไฟล์ มี True กับ False
                      ถ้าใช้ True เป็นการสั่งให้ก๊อบปี้ทับไฟล์เดิม ถ้าใช้ False ก็ไม่ต้องก๊อบปี้ทับ (ปกติใช้คำสั่ง True)
                      ---------------------------------------------------------------
                      ตัวอย่าง:สั่งก๊อบปี้โฟลเดอร์ชื่อ newfolder ที่อยู่บนหน้าจอ เมื่อก๊อบปี้แล้ว วางไว้ใน My Documents
                      Code:
                      Dim FsoObj
                      Set FsoObj=CreateObject("Scripting.FileSystemObject")
                      FsoObj.CopyFolder "C:\Documents and Settings\Administrator\Desktop\newfolder", _
                      "C:\Documents and Settings\Administrator\My Documents\", True
                      Set FsoObj=Nothing

                      Comment


                      • #26
                        คำสั่ง:ลบโฟลเดอร์
                        รูปแบบ:
                        Code:
                        object.DeleteFolder ( folderspec[, force] )
                        ---------------------------------------------------------------
                        รายละเอียด:
                        folderspec หมายถึง โฟลเดอร์ที่ต้องการลบ
                        force หมายถึง Option ในการลบ ใช้ True และ False (ปกติใช้ False)
                        --------------------------------------------------------------------------
                        ตัวอย่าง:สั่งลบโฟลเดอร์ชื่อ newfolder ที่อยู่ใน My Documents
                        Code:
                        Dim FsoObj
                        Set FsoObj=CreateObject("Scripting.FileSystemObject")
                        FsoObj.DeleteFolder"C:\Documents and Settings\Administrator\My Documents\newfolder", False
                        Set FsoObj=Nothing

                        Comment


                        • #27
                          คำสั่ง:เลือกและเปิดโฟลเดอร์
                          Code:
                          Dim s, Title
                          Title = "Choose Folder"
                          s = SelectFolder(Title)
                          MsgBox s, 64, "Info"
                          Set shl = CreateObject("Shell.Application")
                          shl.open s
                          Function SelectFolder(sCaption)
                          Dim SHL, SH, Fol, Fol1, s2, CPt
                          On Error Resume Next
                          SelectFolder = ""
                          Set SHL = CreateObject("Shell.Application")
                          Set Fol = SHL.BrowseForFolder(cLng(0), sCaption, cLng(0))
                          If Fol Is Nothing Then 
                          Set SHL = Nothing
                          Exit Function
                          End If
                          s2 = Fol.Title
                          CPt = InStr(s2, ":")
                          Select Case CPt
                              Case 0  
                                 Set Fol1 = Fol.ParentFolder.ParseName(Fol.Title)
                                    If (Err.Number = 0) Then  
                                        SelectFolder = Fol1.Path
                                    Else    
                                       Set SH = CreateObject("WScript.Shell")
                                       SelectFolder = SH.SpecialFolders(s2)
                                    Set SH = Nothing
                                    End If  
                                 Set Fol1 = Nothing      
                              Case Else  '-- root folder
                                  SelectFolder = Mid(s2, (CPt - 1), 2) & "\"
                           End Select  
                          Set Fol = Nothing
                            Set SHL = Nothing
                          End Function

                          Comment


                          • #28
                            คำสั่ง:สร้าง TextFile เช่น Notepad หรือ Word
                            รูปแบบ:
                            Code:
                            object.CreateTextFile(filename[, overwrite[, unicode]])
                            -------------------------------------------------------------------
                            ตัวอย่าง:สั่งสร้างไฟล์ Notepad ชื่อ NewTextFile และวางไว้บน Desktop
                            Code:
                            Dim fso
                            Set fso=CreateObject("Scripting.FileSystemObject")
                                fso.CreateTextFile ("C:\Documents and Settings\Administrator\Desktop\NewTextFile.txt")
                            Set fso=Nothing

                            Comment


                            • #29
                              คำสั่ง:ก๊อบปี้ไฟล์
                              รูปแบบ:
                              Code:
                              object.CopyFile ( source, destination[, overwrite] )
                              ----------------------------------------------------------------
                              ตัวอย่าง1:สั่งก๊อบปี้ไฟล์ชื่อ NewTextFile.txt ที่อยู่บนเดสก์ทอป แล้ววางไว้ใน My Documents
                              Code:
                              Dim FsoObj
                              Set FsoObj=CreateObject("Scripting.FileSystemObject")
                                  FsoObj.CopyFile "C:\Documents and Settings\Administrator\Desktop\NewTextFile.txt", _
                              "C:\Documents and Settings\Administrator\My Documents\NewTextFile.txt"
                              Set FsoObj=Nothing
                              -------------------------------------------------------------------------------------
                              ตัวอย่าง2:สั่งสร้างโฟลเดอร์ขึ้นมาใหม่ชื่อ newfolder และวางไว้บนเดสก์ทอป
                              สั่งก๊อบปี้ไฟล์ทั้งหมด(*.* หมายถึง ไฟล์ทุกสกุล) ใน My Documents ..ก๊อบปี้แล้ววางไว้ในโฟลเดอร์ที่สร้างขึ้น
                              Code:
                              Dim FsoObj
                              Set FsoObj=CreateObject("Scripting.FileSystemObject")
                                  FsoObj.CreateFolder("C:\Documents and Settings\Administrator\Desktop\newfolder")
                                  FsoObj.CopyFile "C:\Documents and Settings\Administrator\My Documents\*.*", _
                               "C:\Documents and Settings\Administrator\Desktop\newfolder"
                              MsgBox"เรียบร้อย."
                              Set FsoObj=Nothing
                              ----------------------------------------------------------------------------------------
                              ตัวอย่าง3:File Browse ..เลือกไฟล์ที่ต้องการเปิด
                              Code:
                              Dim ObjFSO, InitFSO 
                              Set ShellObj = CreateObject("Shell.Application")
                              Set ObjFSO = CreateObject("UserAccounts.CommonDialog")
                              ObjFSO.Filter = "Program Files (*.exe;*.msi)|*.exe;*.msi|All Files (*.*)|*.*"
                              ObjFSO.FilterIndex = 1
                              ObjFSO.InitialDir = "C:\Documents and Settings\Administrator\Desktop"
                              InitFSO = ObjFSO.ShowOpen
                              If InitFSO <> 0 Then
                              BtnCode = MsgBox (" ท่านต้องการเปิด.." & ObjFSO.FileName & " ..ใช่หรือไม่?", 36, "Confirm Message")
                              If BtnCode = vbYes Then 
                              ShellObj.ShellExecute ObjFSO.FileName
                              End If
                              End If
                              Set ObjFSO=Nothing
                              Set InitFSO=Nothing
                              -------------------------------------------------
                              นี่ก็เป็นคำสั่งอีกแบบหนึ่งใช้ได้เหมือนกัน
                              Code:
                              Dim oComDlg, ShellObj, path_name
                              Set oComDlg = CreateObject("MSComDlg.CommonDialog")
                              Set ShellObj = CreateObject("Shell.Application")
                              With oComDlg
                                   .InitDir = "C:\Documents and Settings\Administrator\Desktop"
                                   .Filter = "Program Files (*.exe;*.msi)|*.exe;*.msi|All Files (*.*)|*.*"
                                   .MaxFileSize = 260
                                   .ShowOpen
                              End With                        
                                   path_name = oComDlg.FileName
                              If path_name <> "" Then
                                   ShellObj.ShellExecute path_name
                              End If
                              Set oComDlg=Nothing
                              Set ShellObj=Nothing
                              Last edited by sak2005; 10 Nov 2009, 07:51:48.

                              Comment


                              • #30
                                คำสั่ง:ย้ายไฟล์
                                รูปแบบ:
                                Code:
                                object.MoveFile ( source, destination )
                                ---------------------------------------------------
                                ตัวอย่าง:สั่งสร้างไฟล์ชื่อ newfile.txt ขึ้นมาวางไว้บนหน้าจอ จากนั้นอีกประมาณ5วินาที ไฟลนี้จะถูกย้ายไปเก็บไวที่ My Documents
                                Code:
                                Dim FsoObj
                                Set FsoObj=CreateObject("Scripting.FileSystemObject")
                                FsoObj.CreateTextFile ("C:\Documents and Settings\Administrator\Desktop\newfile.txt")
                                WScript.Sleep 5000
                                FsoObj.MoveFile "C:\Documents and Settings\Administrator\Desktop\newfile.txt", _
                                      "C:\Documents and Settings\Administrator\My Documents\newfile.txt"
                                Set FsoObj=Nothing

                                Comment

                                Working...
                                X