WMI を使用して現在の Windows ユーザー名とドメインを取得する簡単な方法があるかどうか疑問に思っていました。Windows API 呼び出しは短いユーザー名を取得するだけなので、ドメイン名の別の呼び出しを行うことになります。いくつかのコードがありますが、自動化エラーが発生します。何か案は?私は正しい道を進んでいると思いますが、WMI については少し初心者です。
関数 GetFullName() を文字列として
Dim computer As String
コンピューター = "."
Dim objWMIService、colProcessListをオブジェクトとして
Set objWMIService = GetObject("winmgmts:\\" & computer & "\root\cimv2")
colProcessList = objWMIService.ExecQuery _ を設定します。
("SELECT TOP 1 * FROM Win32_Process WHERE Name = 'EXCEL.EXE'")
Dim uname, udomain As String
Dim objProcess をオブジェクトとして
colProcessList 内の各 objProcess
objProcess.GetOwner uname、udomain
次
GetFullName = UCase(udomain) & "\" & UCase(uname)
終了機能
更新:受け入れられた回答に関するコメントを参照してください