Я використовую програму "SoftXPand 2011 Duo" від Miniframe на своєму ПК з Windows 7. Це робить дві робочі станції з одного комп’ютера. Для створення додаткового сеансу він використовує термінальні послуги, вбудовані в Windows. Я використовую два екрани, дві клавіатури та дві миші, щоб створити цю «ілюзію» двох комп’ютерів. Він працює досить добре, і я навіть можу грати у різні 3D ігри на двох екранах, підключених до цієї єдиної машини (використовуючи Radeon HD5770 та Core i5 2500k з 8 Гбайт оперативної пам’яті).
У цьому є кілька недоліків. Я щойно знайшов про те, що приховано на перший погляд. Сеанси, на яких ви перебуваєте (навіть на першій робочій станції), буде ідентифіковано як сеанс сервера терміналів! Зараз деякі програми будуть працювати з обмеженими ефектами (графічними), а деякі взагалі не працюватимуть.
Це також призвело до того, що деякі ігри взагалі не працювали. Вони просто кажуть "Неможливо запустити сеанс сервера терміналів" і вийти. Я вже довів, що найкращі сучасні ігри (DirectX 10, 11) працюють так само добре, як і на одній машині без SoftXPand, тому це досить штучне обмеження!
Отже, чи можу я якось зламати свій поточний сеанс, щоб він більше не був схожим на сеанс термінального сервера? IE
#include <windows.h>
#pragma comment(lib, "user32.lib")
BOOL IsRemoteSession(void)
{
return GetSystemMetrics( SM_REMOTESESSION );
}
Поверне ФАЛЬСУ? (Не питання програмування! Просто приклад того, як програми виявляють, чи перебувають вони на сеансі термінального сервера!)