大家好,以下是一道高新技术考试,单击按钮,取得本地计算机名的程序,考试在即,大家可以帮我解释下吗?
Private Sub Command1_Click()
Dim Name As String, Length As Long
Length = 255
Name = String(Length, 0) '这语句是什么意思?
ZYJMod1.GetComputerName Name, Length
Name = Left(Name, Length) '这语句是什么意思?
Label1.Caption = Name
End Sub
------
急复,谢谢!
Private Sub Command1_Click()
Dim Name As String, Length As Long
Length = 255
Name = String(Length, 0) '这语句是什么意思?
ZYJMod1.GetComputerName Name, Length
Name = Left(Name, Length) '这语句是什么意思?
Label1.Caption = Name
End Sub
------
急复,谢谢!
IpAddr(0 To 15) As Byte
End TypePublic Type IP_MASK_STRING
IpMask(0 To 15) As Byte
End TypePublic Type IP_ADDR_STRING
dwNext As Long
IpAddress As IP_ADDRESS_STRING
IpMask As IP_MASK_STRING
dwContext As Long
End TypePublic Type FIXED_INFO
HostName(0 To (MAX_HOSTNAME_LEN + 3)) As Byte
DomainName(0 To (MAX_DOMAIN_NAME_LEN + 3)) As Byte
CurrentDnsServer As IP_ADDR_STRING
DnsServerList As IP_ADDR_STRING
NodeType As Long
ScopeId(0 To (MAX_SCOPE_ID_LEN + 3)) As Byte
EnableRouting As Long
EnableProxy As Long
EnableDns As Long
End TypePublic Declare Function GetNetworkParams Lib "iphlpapi.dll" _
(pFixedInfo As Any, pOutBufLen As Long) As LongPublic Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)Public szDomainName As StringPrivate Function GetHostName() As String
Dim buff() As Byte
Dim cbRequired As Long
Dim nStructSize As Long
Dim Info As FIXED_INFOCall GetNetworkParams(ByVal 0&, cbRequired)
If cbRequired > 0 Then
ReDim buff(0 To cbRequired - 1) As Byte
If GetNetworkParams(buff(0), cbRequired) = ERROR_SUCCESS Then
CopyMemory Info, ByVal VarPtr(buff(0)), LenB(Info)
GetHostName = TrimNULL(StrConv(Info.HostName, vbUnicode))
szDomainName = TrimNULL(StrConv(Info.DomainName, vbUnicode))
End If
End If
End FunctionPrivate Function TrimNULL(item As String)
Dim pos As Integer
pos = InStr(item, Chr$(0))
If pos Then
TrimNULL = Left$(item, pos - 1)
Else
TrimNULL = item
End If
End FunctionPrivate Sub Command1_Click()
Text1.Text = GetHostName()
Text2.Text = szDomainName
End Sub