powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Комрады, не подскажите по поводу - TS?
4 сообщений из 4, страница 1 из 1
Комрады, не подскажите по поводу - TS?
    #37992243
Фотография voronk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго всем времени суток.

Как попроще узнать если аппликация крутитса на TS?

т.е. чел работает в ситрикс энвайроменте или подключился с домашнего компа на рабочий через RDC?

Пока начал копать в сторону:
Function Boolean WTSQuerySessionInformationA
(uLong hServer, uLong SessionId, uLong WTSInfoClass, Ref String ppBuffer, Ref uLong pBytesReturned) Library "Wtsapi32.dll"

За любой совет или наводку, буду премного благодарен.

Спасибо.
...
Рейтинг: 0 / 0
Комрады, не подскажите по поводу - TS?
    #37992279
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
voronk,

Проще всего мне кажется проверить наличие переменной окружения специфичной для сеанса TS.
Например для TS должна быть установлена переменная SessionName. Для Citrix наверно тоже что-то подобное.


Переменные окружения можно читать таким способом:
http://power-builder.blogspot.com/
Там же кратко описаны основные переменные.
...
Рейтинг: 0 / 0
Комрады, не подскажите по поводу - TS?
    #37992349
Фотография voronk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Анатолий, спасибо большое, сейчас посмотрю.
...
Рейтинг: 0 / 0
Комрады, не подскажите по поводу - TS?
    #37992589
Фотография voronk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вроде работает, всем спасибо, в частности Анатолию.

Вот ещё нашёл, отсюда: http://www.rgagnon.com/pbdetails/pb-0233.html
Может кому пригодитса.

[external function declaration]
FUNCTION Integer GetSystemMetrics (Integer nIndex) LIBRARY "user32.dll"


[powerscript]
integer SM_REMOTESESSION = 4096 // remote session
integer SM_REMOTECONTROL = 8193 // remote control

IF GetSystemMetrics(SM_REMOTESESSION)> 0 THEN
// on terminal server
END IF
Another way is to check the Windows environment variable sessionname. The value of this environment variable will be 'Console' for a normal, local session. For an Remote Desktop session it will contain the phrase 'RDP'.
ContextKeyword lcxk_base
string ls_Path
string ls_values[]

this.GetContextService("Keyword", lcxk_base)
lcxk_base.GetContextKeywords("sessionname", ls_values)

MessageBox("", ls_values[1])
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Комрады, не подскажите по поводу - TS?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]