• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

code Disconnect Internet không sử dụng được

Góc trao đổi, hỏi đáp của ngôn ngữ Visual Basic 6 và Visual Basic Script

Moderator: tungblt

kunkunluv000
Thành viên năng nổ
Thành viên năng nổ
Posts: 75
Joined: Wed 07/07/2010 11:08 am

code Disconnect Internet không sử dụng được

Postby kunkunluv000 » Thu 03/02/2011 9:15 pm

  1.     Dim objCP, objDisable, colNetwork
  2.         Dim clsConn, clsLANConn, clsVerb
  3.         Dim strNetConn, strConn, strDisable
  4.          
  5.         strNetConn = "Network Connections"
  6.         strConn = "Local Area Connection"
  7.          
  8.         strDisable = "Disa&ble"
  9.          
  10.         Set objshell = CreateObject("Shell.Application")
  11.          
  12.         If objshell Is Nothing Then
  13.             MsgBox "Fooey"
  14.             Exit Sub
  15.         End If
  16.          
  17.          
  18.         Set objCP = objshell.NameSpace(3) 'Control Panel Name Space
  19.        
  20.         Set colNetwork = Nothing
  21.         For Each clsConn In objCP.Items
  22.             If clsConn.Name = strNetConn Then
  23.                 Set colNetwork = clsConn.GetFolder
  24.                 Exit For
  25.             End If
  26.         Next
  27.          
  28.         If colNetwork Is Nothing Then
  29.             MsgBox "Network folder not found"
  30.             Exit Sub
  31.         End If
  32.          
  33.         Set clsLANConn = Nothing
  34.         For Each clsConn In colNetwork.Items
  35.             If InStr(LCase(clsConn.Name), LCase(strConn)) Then
  36.                 Set clsLANConn = clsConn
  37.                 Exit For
  38.             End If
  39.         Next
  40.          
  41.         If clsLANConn Is Nothing Then
  42.             MsgBox "Network Connection not found"
  43.             Exit Sub
  44.         End If
  45.          
  46.         Set objDisable = Nothing
  47.          
  48.         For Each clsVerb In clsLANConn.Verbs
  49.             If clsVerb.Name = strDisable Then
  50.                 Set objDisable = clsVerb
  51.                 objDisable.DoIt
  52.             End If
  53.         Next

Code trên mình không sử dụng được và sử cho giống với máy
[vb] Dim objCP, objDisable, colNetwork
Dim clsConn, clsLANConn, clsVerb
Dim strNetConn, strConn, strDisable

strNetConn = "Network Connections"
strConn = "Local Area Connection 2"

strDisable = "&Disable"

Set objshell = CreateObject("Shell.Application")

If objshell Is Nothing Then
MsgBox "Fooey"
Exit Sub
End If


Set objCP = objshell.NameSpace(3)

Set colNetwork = Nothing
For Each clsConn In objCP.Items
If clsConn.Name = strNetConn Then
Set colNetwork = clsConn.GetFolder
Exit For
End If
Next

If colNetwork Is Nothing Then
MsgBox "Network folder not found"
Exit Sub
End If

Set clsLANConn = Nothing
For Each clsConn In colNetwork.Items
If InStr(LCase(clsConn.Name), LCase(strConn)) Then
Set clsLANConn = clsConn
Exit For
End If
Next

If clsLANConn Is Nothing Then
MsgBox "Network Connection not found"
Exit Sub
End If

Set objDisable = Nothing

For Each clsVerb In clsLANConn.Verbs
If clsVerb.Name = strDisable Then
Set objDisable = clsVerb
objDisable.DoIt
End If
Next[/vb]
Cái code này đã phù hợp với máy nhưng nó cũng chả chịu chạy
Xin mọi người trên diễn đàn giúp đỡ



User avatar
VuVanHoanh
Thành viên danh dự
Thành viên danh dự
Posts: 1259
Joined: Thu 03/06/2010 9:23 pm
Location: Kim Sơn - Đông Triều - Quảng Ninh
Has thanked: 22 times
Been thanked: 138 times
Contact:

Re: code Disconnect Internet không sử dụng được

Postby VuVanHoanh » Fri 04/02/2011 7:13 pm

Cái này không biết bạn đã đọc chưa!!!
Ở ngay trong VBLib đó.
Thủ thuật:
Disconnect Internet

Giới thiệu:
Ngắt kết nối Internet bằng cách ngắt LAN hoặc qua RAS

Ghi chú:
THE LAST LEAF sưu tầm

Ví dụ:
Ngắt RAS
'Module Code
  1. Public Const RAS_MAXENTRYNAME As Integer = 256
  2. Public Const RAS_MAXDEVICETYPE As Integer = 16
  3. Public Const RAS_MAXDEVICENAME As Integer = 128
  4. Public Const RAS_RASCONNSIZE As Integer = 412
  5.  
  6. Public Type RasEntryName
  7.     dwSize As Long
  8.     szEntryName(RAS_MAXENTRYNAME) As Byte
  9. End Type
  10.  
  11. Public Type RasConn
  12.     dwSize As Long
  13.     hRasConn As Long
  14.     szEntryName(RAS_MAXENTRYNAME) As Byte
  15.     szDeviceType(RAS_MAXDEVICETYPE) As Byte
  16.     szDeviceName(RAS_MAXDEVICENAME) As Byte
  17. End Type
  18.  
  19. Public Declare Function RasEnumConnections Lib _
  20. "rasapi32.dll" Alias "RasEnumConnectionsA" (lpRasConn As _
  21. Any, lpcb As Long, lpcConnections As Long) As Long
  22.  
  23. Public Declare Function RasHangUp Lib "rasapi32.dll" Alias _
  24. "RasHangUpA" (ByVal hRasConn As Long) As Long
  25. Public gstrISPName As String
  26. Public ReturnCode As Long
  27.  
  28. Public Sub HangUp()
  29.     Dim i As Long
  30.     Dim lpRasConn(255) As RasConn
  31.     Dim lpcb As Long
  32.     Dim lpcConnections As Long
  33.     Dim hRasConn As Long
  34.     lpRasConn(0).dwSize = RAS_RASCONNSIZE
  35.     lpcb = RAS_MAXENTRYNAME * lpRasConn(0).dwSize
  36.     lpcConnections = 0
  37.     ReturnCode = RasEnumConnections(lpRasConn(0), lpcb, _
  38.     lpcConnections)
  39.  
  40.     If ReturnCode = ERROR_SUCCESS Then
  41.         For i = 0 To lpcConnections - 1
  42.             If Trim(ByteToString(lpRasConn(i).szEntryName)) = Trim(gstrISPName) Then
  43.                 hRasConn = lpRasConn(i).hRasConn
  44.                 ReturnCode = RasHangUp(ByVal hRasConn)
  45.             End If
  46.         Next i
  47.     End If
  48. End Sub
  49.  
  50. Public Function ByteToString(bytString() As Byte) As String
  51.     Dim i As Integer
  52.     ByteToString = ""
  53.     i = 0
  54.     While bytString(i) = 0&
  55.         ByteToString = ByteToString & Chr(bytString(i))
  56.         i = i + 1
  57.     Wend
  58. End Function



'Form Code
[vb]Private Sub Command1_Click()
Call HangUp
End Sub[/vb]

Ngắt LAN bằng cách sử dụng shell object
[vb]
Dim objCP, objDisable, colNetwork
Dim clsConn, clsLANConn, clsVerb
Dim strNetConn, strConn, strDisable

strNetConn = "Network Connections"
strConn = "Local Area Connection"

strDisable = "Disa&ble"

Set objshell = CreateObject("Shell.Application")

If objshell Is Nothing Then
MsgBox "Fooey"
Exit Sub
End If


Set objCP = objshell.NameSpace(3)'Control Panel Name Space

Set colNetwork = Nothing
For Each clsConn In objCP.Items
If clsConn.Name = strNetConn Then
Set colNetwork = clsConn.GetFolder
Exit For
End If
Next

If colNetwork Is Nothing Then
MsgBox "Network folder not found"
Exit Sub
End If

Set clsLANConn = Nothing
For Each clsConn In colNetwork.Items
If InStr(LCase(clsConn.Name), LCase(strConn)) Then
Set clsLANConn = clsConn
Exit For
End If
Next

If clsLANConn Is Nothing Then
MsgBox "Network Connection not found"
Exit Sub
End If

Set objDisable = Nothing

For Each clsVerb In clsLANConn.Verbs
If clsVerb.Name = strDisable Then
Set objDisable = clsVerb
objDisable.DoIt
End If
Next
[/vb]
Last edited by VuVanHoanh on Sat 05/02/2011 10:32 am, edited 1 time in total.

kunkunluv000
Thành viên năng nổ
Thành viên năng nổ
Posts: 75
Joined: Wed 07/07/2010 11:08 am

Re: code Disconnect Internet không sử dụng được

Postby kunkunluv000 » Fri 04/02/2011 7:30 pm

Mình đã đọc rồi nhưng nó ko làm rớt mạng

dactung93
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 496
Joined: Tue 04/11/2008 8:43 am
Has thanked: 6 times
Been thanked: 8 times

Re: code Disconnect Internet không sử dụng được

Postby dactung93 » Sun 06/02/2011 11:53 pm

Rớt luôn. Rớt 100% luôn.
Thỉnh thoảng thì ko ngắt dược nó hiện lên thông báo "Failed to Disconect..."


Return to “Visual Basic 6 và Visual Basic Script (VB & VBS)”

Who is online

Users browsing this forum: No registered users and 1 guest