C#, оконная служба для запуска приложения на конкретном вошедшем в систему пользователе.
Привет,
У меня есть служба окон, и я использую ее для запуска моего другого приложения. это прекрасно работает, когда есть один пользователь, вошедший на сервер. но когда несколько пользователей вошли на сервер(jump server), то это приложение открывается в сеансе пользователя, который впервые вошел на сервер.
Я использую класс ProcessExtension и нахожу текущего вошедшего пользователя, а затем запускаю свое приложение из службы окон.
Я хочу, чтобы из сеанса пользователя пришел вызов, чтобы я мог запустить свое приложение в этом сеансе.
Заранее спасибо.
Что я уже пробовал:
из приведенного ниже кода я могу получить в настоящее время зарегистрированных пользователей, но он не дает мне, какой именно пользователь.
if (WTSEnumerateSessions(WTS_CURRENT_SERVER_HANDLE, 0, 1, ref pSessionInfo, ref sessionCount) != 0) { var arrayElementSize = Marshal.SizeOf(typeof(WTS_SESSION_INFO)); writeLog("arrayElementSize : " + arrayElementSize); var current = pSessionInfo; for (var i = 0; i < sessionCount; i++) { var si = (WTS_SESSION_INFO)Marshal.PtrToStructure((IntPtr)current, typeof(WTS_SESSION_INFO)); current += arrayElementSize; if (si.State == WTS_CONNECTSTATE_CLASS.WTSActive) { activeSessionId = si.SessionID; break; } } }