J'utilise le programme "SoftXPand 2011 Duo" de Miniframe sur mon ordinateur Windows 7. Il crée deux postes de travail sur un ordinateur. Il utilise les services de terminal intégrés à Windows pour créer la session supplémentaire. J'utilise deux écrans, deux claviers et deux souris pour créer cette "illusion" de deux ordinateurs. Cela fonctionne assez bien et je peux même jouer à deux jeux 3D différents sur les deux écrans connectés à cette seule machine (avec une Radeon HD5770 et un Core i5 2500k avec 8 Go de RAM).
Il y a quelques inconvénients à cela. Je viens de trouver à propos de celui qui est caché sur le premier regard. Les sessions dans lesquelles vous vous trouvez (même sur le premier poste de travail) seront identifiées comme une session de serveur de terminal! Maintenant, certains programmes fonctionneront avec des effets limités (graphiques) et d’autres pas du tout.
Cela a également eu pour conséquence que certains jeux ne fonctionnaient pas du tout. Ils disent simplement "Ne peut pas être exécuté dans une session de serveur de terminal" et se terminent. J'ai déjà prouvé que les meilleurs jeux modernes (DirectX 10, 11) fonctionnent aussi bien que sur la même machine sans SoftXPand, il s'agit donc d'une jolie limitation artificielle!
Alors, puis-je en quelque sorte pirater ma session actuelle pour qu'elle ne ressemble plus à une session de serveur de terminal? C'EST À DIRE.
#include <windows.h>
#pragma comment(lib, "user32.lib")
BOOL IsRemoteSession(void)
{
return GetSystemMetrics( SM_REMOTESESSION );
}
Est-ce que retourne FALSE? (Ce n'est pas une question de programmation! Juste un exemple montrant comment les programmes détectent s'ils sont en session Terminal Server!)