システムに関する各種情報を取得する
システムに関する各種情報を取得するサンプルです。
サンプルの実行画面
ソースコード
[Get.frm]
'GetComputerName =>コンピューター名を取得する
'<引数>
'lpBuffer: コンピュータ名を格納する変数
'nSize: コンピュータ名の文字数
'@戻り値@
' 正常終了0以外
Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
'GetClassName =>ウインドウのクラス名を取得する
'<引数>
'hwnd: ウインドウのハンドル
'lpClassName: クラス名を格納する変数の
'nMaxCount: 同、文字数
'@戻り値@
' 正常終了0以外
Private Declare Function GetClassName Lib "USER32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
'GetCurrentDirectory =>カレントディレクトリを取得
'<引数>
'nBufferLength: 文字数
'lpBuffer: カレントディレクトリを格納する変数
'@戻り値@
'正常終了0以外
Private Declare Function GetCurrentDirectory Lib "kernel32" Alias "GetCurrentDirectoryA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
'GetKeyboardType =>ファンクションキーの数を取得する
'<引数>
'nTypeFlag: 2の場合 ファンクションキー数 0の場合 キーボードのタイプ
'@戻り値@
' 数値が戻る
Private Declare Function GetKeyboardType Lib "USER32" (ByVal nTypeFlag&) As Long
'GetSystemDirectory => Winodwsのシステム フォルダのパス名を取得する
'<引数>
'lpBuffer: 取得したフォルダ名を入れる変数名
'nSize: バッファの確保した文字数 (バイト)
'@戻り値@
'取得した文字数
Private Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
'GetTempPath =>TEMPファイルのディレクトリを取得する
'<引数>
'nBufferLength: 文字数
'lpBuffe: パスが格納される変数
'@戻り値@
' 正常終了0以外
Private Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
'GetUserName =>ユーザー名を取得する
'<引数>
'lpBuffer: ユーザー名を格納する変数
'nSize: ユーザー名の文字数
'@戻り値@
' 正常終了0以外
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
'GetWindowsDirectory => Winodws フォルダのパス名を取得する
'<引数>
'lpBuffer: 取得したフォルダ名を入れる変数名
'nSize: バッファの確保した文字数 (バイト)
'@戻り値@
' 取得した文字数
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Private Sub Command1_Click()
Dim Name As String
Dim Leng As Long
Dim Ret As Long
'バッファを確保
Name = String(250, Chr(0))
Leng = Len(Name)
Ret = GetComputerName(Name, Leng)
MsgBox "コンピュータ名:" & Name
End Sub
Private Sub Command2_Click()
Dim nName As String
Dim nLeng As Long
Dim Ret As Long
'バッファを確保
nName = String(250, Chr(0))
nLeng = Len(nName)
Ret = GetClassName(Form1.hwnd, nName, nLeng)
MsgBox "クラス名:" & nName
End Sub
Private Sub Command3_Click()
Dim nName As String
Dim nLeng As Long
Dim Ret As Long
'バッファを確保
nName = String(250, Chr(0))
nLeng = Len(nName)
Ret = GetCurrentDirectory(nLeng, nName)
MsgBox "カレントディレクトリ:" & nName
End Sub
Private Sub Command4_Click()
Dim Ret As Long
'ファンクションキーの数を取得
Ret = GetKeyboardType(2)
MsgBox Ret
End Sub
Private Sub Command5_Click()
Dim FORUDA$, WK As String
FORUDA = Space(50)
'システムフォルダのパス名を取得
WK = GetSystemDirectory(FORUDA, 50)
MsgBox FORUDA
End Sub
Private Sub Command6_Click()
Dim nLeng As Long
Dim nName As String
Dim Ret As Long
'バッファを確保
nName = String(250, Chr(0))
nLeng = Len(nName)
Ret = GetTempPath(nLeng, nName)
MsgBox nName
End Sub
Private Sub Command7_Click()
Dim Name As String
Dim Leng As Long
Dim Ret As Long
'バッファを確保
Name = String(250, Chr(0))
Leng = Len(Name)
Ret = GetUserName(Name, Leng)
MsgBox "ユーザー名:" & Name
End Sub
Private Sub Command8_Click()
Dim FORUDA$, MODORITI As String
'文字列50バイト分の大きさ確保・・・フォルダ名を入れる変数の大きさ
FORUDA = Space(50)
MODORITI = GetWindowsDirectory(FORUDA, 50)
MsgBox FORUDA
End Sub
ソースコード一式のダウンロード
vbapi_get.zip 1.69 KB (1,731 バイト)
このサンプルの動作環境について
このサンプルは 「Windows98」及び「Microsoft Visual Basic 5.0 Professional Edition」で確認しております。環境が異なる場合は正常に動作しない場合もございますのでご了承下さい。
スポンサーリンク
関連記事
| 前の記事: | アプリケーションを強制終了する |
| 次の記事: | メモリの情報を取得する |
公開日:2015年03月05日
記事NO:00386
プチモンテ ※この記事を書いた人
![]() | |
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
| 🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は抒情詩、抒情的な楽曲が多い。楽曲制作は🔰2023年12月中旬 ~ | |









