- Tham gia
- 30/5/06
- Bài viết
- 1,798
- Được thích
- 4,706
- Giới tính
- Nam
Tôi xin giới thiệu bài viết của Rembo : Ping đến một computer trong VBA
Windows Scripting là một công cụ rất mạnh để làm việc với một network. Bạn có thể làm nhiều thứ với nó.
Trong ví dụ sau sẽ mô tả việc sử dụng đối tượng Shell và FileSystem để thực hiện lệnh ping đến một máy chủ trên internet.
Chú ý:
Trong ví dụ này tác giả sử dụng kỹ thuật khai báo trễ (late binding). Nếu bạn muốn dùng kỹ thuật khai báo sớm (early binding) thì bạn phải tham chiếu đến thư viện Microsoft Scripting Runtime.
Các đường dẫn tham khảo khác:
1. http://msdn.microsoft.com/en-us/library/aew9yb99.aspx
2. http://msdn.microsoft.com/en-us/library/d6dw7aeh(VS.85).aspx
3. http://msdn.microsoft.com/en-us/library/aa265319(VS.60).aspx
Bạn hãy đưa đoạn mã sau vào một module:
Và bạn hãy thực thi thủ tục TestPing để xem kết quả.
Cheer,
Lê Văn Duyệt
Nguồn tại đây.
Windows Scripting là một công cụ rất mạnh để làm việc với một network. Bạn có thể làm nhiều thứ với nó.
Trong ví dụ sau sẽ mô tả việc sử dụng đối tượng Shell và FileSystem để thực hiện lệnh ping đến một máy chủ trên internet.
Chú ý:
Trong ví dụ này tác giả sử dụng kỹ thuật khai báo trễ (late binding). Nếu bạn muốn dùng kỹ thuật khai báo sớm (early binding) thì bạn phải tham chiếu đến thư viện Microsoft Scripting Runtime.
Các đường dẫn tham khảo khác:
1. http://msdn.microsoft.com/en-us/library/aew9yb99.aspx
2. http://msdn.microsoft.com/en-us/library/d6dw7aeh(VS.85).aspx
3. http://msdn.microsoft.com/en-us/library/aa265319(VS.60).aspx
Bạn hãy đưa đoạn mã sau vào một module:
Mã:
Function sPing(sHost As String) As String
Dim oFSO As Object, oShell As Object, oTempFile As Object
Dim sLine As String, sFilename As String
[COLOR="Green"] ' Khởi tạo đối tượng [/COLOR][COLOR="Blue"]Scripting.FileSystemObject[/COLOR]
Set oFSO = CreateObject("Scripting.FileSystemObject")
[COLOR="Green"] ' Và đối tượng[/COLOR] [COLOR="Blue"]Wscript.Shell[/COLOR] (Shell)
Set oShell = CreateObject("Wscript.Shell")
[COLOR="Green"] ' Lấy tên tạm[/COLOR]
sFilename = oFSO.GetTempName
[COLOR="Green"] ' Thực hiện lệnh[/COLOR] [COLOR="Blue"]Ping[/COLOR] [COLOR="Green"]và lưu vào tập tin với tên được lưu trong biến sFilename[/COLOR]
[COLOR="Green"] ' Vấn đề này khá thú vị, chúng ta có thể mở rộng cho các lệnh khác.[/COLOR]
oShell.Run "cmd /c ping " & sHost & " >" & sFilename, 0, True
[COLOR="Green"] ' Mở tập tin và đưa nội dung vào biến oTempFile[/COLOR]
Set oTempFile = oFSO.OpenTextFile(sFilename, 1)
[COLOR="Green"] ' Bắt đầu quét qua tập tin,[/COLOR]
[COLOR="Green"] ' đọc từng dòng rồi đưa chuổi vào biến[/COLOR] [COLOR="Blue"]sPing[/COLOR]
Do While oTempFile.AtEndOfStream <> True
sLine = oTempFile.Readline
sPing = sPing & Trim(sLine)
Loop
[COLOR="SeaGreen"] ' Đóng tập tin lại[/COLOR]
oTempFile.Close
[COLOR="SeaGreen"] ' Xóa tập tin[/COLOR]
oFSO.DeleteFile (sFilename)
End Function
Sub [COLOR="Red"]TestPing[/COLOR]()
[COLOR="Green"] ' Bạn có thể thay địa chỉ[/COLOR] [COLOR="Blue"]scriptorium.serve-it.nl[/COLOR]
[COLOR="Green"] ' bằng các địa chỉ khác như:[/COLOR] [COLOR="Blue"]tuoitre.vn[/COLOR]
MsgBox sPing("scriptorium.serve-it.nl")
End Sub
Và bạn hãy thực thi thủ tục TestPing để xem kết quả.
Cheer,
Lê Văn Duyệt
Nguồn tại đây.
File đính kèm
Lần chỉnh sửa cuối: