コンピュータ名取得 (subGetComputerName)

 

‘コンピュータ名を取得する関数の宣言
Public Declare Function GetComputerNameEx Lib "kernel32.dll" _
                 Alias "GetComputerNameExA" _
                 (ByVal NameType As Long, _
                  ByVal lpBuffer As String, _
                        lpnSize As Long) As Long

‘コンピュータ名タイプを指定する列挙型の宣言
Private Enum COMPUTER_NAME_FORMAT
    ‘NetBIOS名
    ComputerNameNetBIOS
    ‘DNSホスト名
    ComputerNameDnsHostname
    ‘DNSドメイン名
    ComputerNameDnsDomain
    ‘完全修飾DNS名
    ComputerNameDnsFullyQualified
    ‘物理的なNetBIOS名
    ComputerNamePhysicalNetBIOS
    ‘物理的なDNSホスト名
    ComputerNamePhysicalDnsHostname
    ‘物理的なDNSドメイン名
    ComputerNamePhysicalDnsDomain
    ‘物理的な完全修飾DNS名
    ComputerNamePhysicalDnsFullyQualified
    ‘未使用
    ComputerNameMax
End Enum

‘/*************************************************/
‘/* [ 名 称 ] subGetComputerName   : コンピュータ名取得                      
‘/* [ 引 数 ] strComputerName   : 出力 (コンピュータ名)                   
‘/* [ 戻 値 ] なし                                                           
‘/* [ 概 要 ] WindowsAPIを使用して、コンピュータ名を取得する。               
‘/* [ 履 歴 ] 2003/11/01 新規 v01.00 会社名 担当者名                      
‘/*************************************************/
Public Sub subGetComputerName(ByRef strComputerName As String)
On Error Resume Next





    Dim lngExtComputerNameType  As Long
    Dim strExtComputerName      As String * 128
    Dim lngWin32apiResultCode   As Long
    Dim strErrorMessage         As String

    ‘コンピュータ名タイプを指定する
    lngExtComputerNameType = ComputerNameNetBIOS
    ‘コンピュータ名を取得するWindowsAPIをよびだす
    lngWin32apiResultCode = GetComputerNameEx(lngExtComputerNameType, _
                                              strExtComputerName, _
                                              Len(strExtComputerName))

    ‘WindowsAPIの戻り値にデータが設定されている場合(正常取得)
    If lngWin32apiResultCode <> 0 Then
        pstrComputerName = Left(strExtComputerName, _
                           InStr(strExtComputerName, vbNullChar) – 1)
        ‘プロシージャを終了する
        Exit Sub
    End If

    ‘プロシージャを終了する
    Exit Sub

Err_subGetComputerName:
    ‘ランタイムエラーが発生したのでエラー処理をする
    Call subErrSyori("subGetComputerName", Err.Number, Err.Description)
End Sub

  

Visual Basic TIPS集

初期登録日: 2003年11月09日

最終更新日: 2003年11月10日

< Home ヘ戻る >


キーボード

ブラウザ画面の文字サイズを変更するショートカットキー

  1. [ CTRL ] + [ + ]  :  文字を大きく
  2. [ CTRL ] + [ ]  :  文字を小さく

Shortcut Keys

  1. [ CTRL ] + [ + ]  :  Up the font size
  2. [ CTRL ] + [ ]  :  Down the font size