СообЧа > База Знаний > Программирование > Visual Basic

Вопрос

Каким образом можно в VB узнать имя текущего юзера (его логин)?

Ответ

В данном случае я буду использовать функцию GetUserName библиотеки advapi32.dll из Windows API

' Это прописываем в (General) (Declarations)
' Обьявляем то, что будем использовать WINAPI
' Указываем библиотеку, функцию из нее, типы аргументов Private Declare Function GetUserName Lib "
advapi32.dll"
Alias _ "
GetUserNameA"
(ByVal lpBuffer As String, nSize As Long) As Long
' Это пишется там, где нужно узнать имя пользователя.
' В моем случае это просто Form Load
' То есть запускается при запуске проекта Private Sub Form_Load()
' Обьявляем переменные которые будем использовать
' При выяснении имени пользователя Dim st As String Dim slCnt As Long Dim slDL As Long Dim slPos As Single
' Уточняем их параметры (как максимальное количество
' cимволов в строке с именем)
slCnt = 199 st = String(200, 0) slDL = GetUserName(st, slCnt) slUserName = Left(st, slCnt) slPos = InStr(1, slUserName, Chr(0)) If slPos >
0 Then txtUserName = Left(slUserName, slPos — 1) End If
' Теперь переменная txtUserName = имени пользователя
' Для примера я вывожу ее в текстбокс на форме Form
' Текстбокс называется UserName
UserName.Text = txtUserName End Sub


Из конференции Expert_FAQ



Copyright © 2000-2004 Сообщество Чайников
Контактная информация