15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Как узнать имя пользователя, на которого зарегистрирована Windows

При установке, Windows просит указать имя пользователя и компанию, эти две строки хранятся внутри USER.EXE. Чтобы получить эту информацию, можно воспользоваться следующим кодом. Вначале объявите две функции:

Declare Function GetModuleHandle Lib "Kernel" _
	(ByVal Module As String) As Integer
Declare Function LoadString Lib "User" _
	(ByVal hInst As Integer, _
	ByVal wID As Integer, ByVal buf as Any, _
	ByVal size As Integer) As Integer

Следующий код позволяет поместить в переменную строки, содержащие имя пользователя и компании:

Sub Form_Load ()
Dim hInst As Integer, user As String, _
	org As String, title As String, length As Integer
user = Space$(256)
org = Space$(256)
hInst = GetModuleHandle("user.exe")
length = LoadString(hInst, 514, user, Len(user))
user = Left$(user, length)
length = LoadString(hInst, 515, org, Len(org))
organization = Left$(org, length)
Debug.Print user
Debug.Print organization
End Sub