Как узнать имя компьютера (своего, чужого) из кода на VB?
Формулировка задачи:
Как узнать имя компьтера(своего,чужого) из кода на VB ???
Спасиба
Решение задачи: «Как узнать имя компьютера (своего, чужого) из кода на VB?»
textual
Листинг программы
- Const HKEY_LOCAL_MACHINE = &H80000002
- Declare Function RegOpenKeyEx Lib 'advapi32.dll' Alias 'RegOpenKeyExA' (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, 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 (Функция считывает значения параметра)
- Declare Function RegCloseKey Lib 'advapi32.dll' Alias 'RegCloseKey' (ByVal hKey As Long) As Long (Функция закрывает ключ системного реестра)
- compName = GetKeyValue(HKEY_LOCAL_MACHINE, _
- 'SystemCurrentControlSetControlComputerNameComputerName ',
- 'ComputerName')
- Public Function GetKeyValue(KeyRoot As Long, KeyName As String, _
- SubKeyRef As String) As String
- Dim rc As Long
- Dim hKey As Long
- Dim sKeyVal As String
- Dim lKeyValType As Long
- Dim KeyValSize As Long
- rc = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey) ' Open Registry Key
- If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError
- sKeyVal = String$(1024, 0)
- KeyValSize = 1024
- rc = RegQueryValueEx(hKey, SubKeyRef, 0, lKeyValType, sKeyVal, KeyValSize) ' Get/Create Key Value
- If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError
- sKeyVal = Replace(sKeyVal, Chr(0), '')
- GetKeyValue = sKeyVal
- rc = RegCloseKey(hKey) ' Close Registry Key
- Exit Function
- GetKeyError:
- GetKeyValue = vbNullString
- rc = RegCloseKey(hKey) ' Close Registry Key
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д