|  | 
 
 | 
| 
 | |||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
|  | 
|  | Опции темы | Поиск в этой теме | Опции просмотра | 
| 
			 
			#1  
			
			
			
			
		 | |||
| 
 | |||
|  netapi32.GetCurrentUser выдает "система" Уважаемые профи, такая проблема: в определенный момент netapi32.GetCurrentUser выдает "система", хотя пользователь "lukianov". Может кто сталкивался? | 
| 
			 
			#2  
			
			
			
			
		 | |||
| 
 | |||
|   я польщую вот такой код. Вроде, сбоев небыло: Код: unction GetUserFromWindows : String;
var
  UserName : String;
  UserNameLen : DWORD;
begin
  UserNameLen := 255;
  SetLength(UserName, UserNameLen) ;
  If GetUserName(PChar(UserName), UserNameLen)
    Then Result := Copy(UserName,1,UserNameLen - 1)
    Else Result := 'Unknown';
end; | 
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
|  
Mishko (11.09.2015)
 | ||
| 
			 
			#3  
			
			
			
			
		 | ||||
| 
 | ||||
|   Несколько покороче: Код: function GetActiveUserName: String;
begin
 Result := GetEnvironmentVariable('USERNAME');
end; | 
| Этот пользователь сказал Спасибо Страдалецъ за это полезное сообщение: | ||
|  
Mishko (11.09.2015)
 | ||
| 
			 
			#4  
			
			
			
			
		 | |||
| 
 | |||
|   Честно говоря, я не помню, почему именно такой код с такими извращениями. Какие-то там подводные камни были. Кроме того, это функция из конкретного приложения, где мне надо было обязательно получить какое-нить значение, даже есть обломался вызов api. | 
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
|  
Mishko (11.09.2015)
 | ||
| 
			 
			#5  
			
			
			
			
		 | |||
| 
 | |||
|   GetEnvironmentVariable('USERNAME') - выдает в конце логина символ$. Что это значит? | 
| 
			 
			#6  
			
			
			
			
		 | ||||
| 
 | ||||
|   А у вас какая ось и комп случаем не в домене? | 
| Этот пользователь сказал Спасибо Страдалецъ за это полезное сообщение: | ||
|  
Mishko (11.09.2015)
 | ||
| 
			 
			#7  
			
			
			
			
		 | |||
| 
 | |||
|   W7 prof, в домене companyname.local | 
| 
			 
			#8  
			
			
			
			
		 | |||
| 
 | |||
|   GetCurrentUser вызывается из службы. Может из-за этого, тогда как можно запустить службу программно под определенным пользователем?  |