Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > VB6 > интернет и Vb |
Автор: Оксана 17.3.2003, 23:35 |
Может кто-нибудь подскажет доходчиво на примере как определить подключен ли компьютер к интернету или нет? Буду очень признательна за подсказку! |
Автор: Trojan Lord 4.4.2003, 16:56 |
'Этот код в модуль: Public Const ERROR_SUCCESS = 0& Public Const APINULL = 0& Public Const HKEY_LOCAL_MACHINE = &H80000002 Public ReturnCode As Long Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey _ As Long, ByVal lpSubKey As String, phkResult As Long) As Long Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" _ (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, _ lpType As Long, lpData As Any, lpcbData As Long) As Long ' Этот код в форму Public Function ActiveConnection() As Boolean Dim hKey As Long Dim lpSubKey As String Dim phkResult As Long Dim lpValueName As String Dim lpReserved As Long Dim lpType As Long Dim lpData As Long Dim lpcbData As Long ActiveConnection = False lpSubKey = "System\CurrentControlSet\Services\RemoteAccess" ReturnCode = RegOpenKey(HKEY_LOCAL_MACHINE, lpSubKey, phkResult) If ReturnCode = ERROR_SUCCESS Then hKey = phkResult lpValueName = "Remote Connection" lpReserved = APINULL lpType = APINULL lpData = APINULL lpcbData = APINULL ReturnCode = RegQueryValueEx(hKey, lpValueName, _ lpReserved, lpType, ByVal lpData, lpcbData) lpcbData = Len(lpData) ReturnCode = RegQueryValueEx(hKey, lpValueName, _ lpReserved, lpType, lpData, lpcbData) If ReturnCode = ERROR_SUCCESS Then If lpData = 0 Then ActiveConnection = False Else ActiveConnection = True End If End If RegCloseKey (hKey) End If End Function Private Sub Form_Load() If ActiveConnection = True Then Call MsgBox("В интернете") Else Call MsgBox("Не в интернете") End If End Sub |
Автор: Гость_Alex 15.8.2003, 20:58 |
А можно и так: Запусти модуль или если хочешь форму, то поставь Visible = false [CODE] Private Declare Function InternetGetConnectedStateEx Lib "wininet.dll" Alias "InternetGetConnectedStateExA" (lpdwFlags as Long, lpszConnectionName as Long, dwNameLen as Long, ByVal dwReserved as Long) as Long 'все в одну строку Private Sub Main() 'если форма, то Form_Load() Dim strConnectionName As String Dim lNameLen As Long ' l it's L Dim lRetVal as Long Dim lConnectionFlags As Long Dim lPtr As Long Dim lNameLenPtr As Long strConnectionName = Space(256) lNameLen = 256 lPtr = StrPtr(strConnectionName) lNameLenPtr = VarPtr(lNameLen) lRetVal = InternetGetConnectedstateEx(lConnectionFlags, ByVal lPtr, ByVal lNameLen, 0&) If lRetVal <> 0 Then MsgBox "Computer online" else MsgBox "Computer offline" End If End Sub |