1

当我在交替会话中执行我的 Access 应用程序时,该函数Environ("username")返回我部门中一个人的用户名,而不是我当前用来执行代码的实际用户的用户名。

在整个程序中不会发生其他类型的用户名操作。

知道这怎么可能吗?

4

1 回答 1

0

这使用 Windows API 函数来返回当前登录的用户的名称。

'// API Declarations
Private Declare Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) _
  As Long


Function UserName() As String
    '// Returns the name of the logged-in user
    Dim Buffer As String * 100
    Dim BuffLen As Long
    BuffLen = 100
    GetUserName Buffer, BuffLen
    UserName = Left(Buffer, BuffLen - 1)
    'MsgBox UserName
End Function

检索登录用户名

于 2016-02-11T03:05:19.377 回答