Gyors felhasználói váltás

Amikor egy felhasználó bejelentkezik egy számítógépre, a rendszer betölti a profilját. Mivel minden felhasználó egyedi felhasználói fiókkal rendelkezik, így több felhasználó is megoszthat egy számítógépet. Amikor egy felhasználó bejelentkezik, a megjelenő asztali beállítások, fájlok, kedvencek és előzmények az övék; más felhasználók nem érhetik el őket. Amikor a felhasználó kijelentkezik, a profilja megmarad a következő bejelentkezéskor. A régebbi operációs rendszerekben a felhasználónak ki kellett jelentkeznie, mielőtt egy másik felhasználó bejelentkezhetett volna. Windows XP esetén a felhasználónak nem kell kijelentkeznie ahhoz, hogy egy másik felhasználó bejelentkezjen. Ehelyett több felhasználó is bejelentkezhet, és gyorsan válthat a megnyitott fiókok között. Ezt a funkciót gyors felhasználóváltásnaknevezzük. Ha másik fiókra vált, az nem változtatja meg a felhasználó által jelenleg futó alkalmazások állapotát. Tegyük fel például, hogy az egyik felhasználó lehetővé teszi, hogy egy másik felhasználó átváltson a fiókjára, miközben az első felhasználó be van jelentkezve. Amikor az első felhasználó visszavált a fiókjára, az alkalmazások futnak, és megmaradnak a hálózati kapcsolataik. Ezért úgy tűnik, hogy mindkét felhasználó egyidejűleg használja a számítógépet.

Ha az alkalmazások megfelelnek a Windows 2000 embléma követelményeinek, akkor a felhasználók gyorsan válthatnak a Windows XP és újabb operációs rendszerekre. Fontos azonban szem előtt tartani ezt a forgatókönyvet egy alkalmazás fejlesztésekor, hogy a felhasználók elvárt módon viselkedjenek. Az alkalmazások írásakor kövesse az alábbi irányelveket:

  • Valós profilelválasztás implementálása. A rendszer egy mögöttes infrastruktúrát biztosít, amely támogatja a felhasználói adatok, a felhasználói beállítások és a számítógépbeállítások elkülönítését. A felhasználó által létrehozott adatok tárolásához használja például a felhasználó Dokumentumok mappáját. Az alkalmazásspecifikus adatok könyvtárának megkereséséhez használja az ismert mappát rendszer FOLDERID_RoamingAppData) vagy régebbi operációs rendszerek esetén a CSIDL rendszert CSIDL_APPDATA). Használjon FOLDERID_LocalAppData vagy CSIDL_LOCAL_APPDATA olyan adatokhoz, amelyek más számítógépeken, például ideiglenes fájlokon nem érhetők el a felhasználó számára.
  • Regisztráljon értesítést egy felhasználóváltásról. Az alkalmazásokat általában nem kell értesíteni a kapcsoló bekövetkezésekor. Ha azonban az alkalmazásnak értesítést kell kapnia egy munkamenet-változásról, regisztrálhat egy WM_WTSSESSION_CHANGE üzenet fogadásához.
  • Vegye figyelembe az alkalmazás egyéb példányait. Vannak például olyan esetek, amikor egy alkalmazásnak le kell töltenie egy frissítést az internetről. A frissítés meghiúsulhat, ha egy másik felhasználó egyidejűleg futtatja az alkalmazás egy példányát egy másik munkamenetben. Még ha a frissítés sikeres is, a frissítés az alkalmazás más futó példányainak kiszámíthatatlan viselkedését okozhatja. Ezért a legjobb, ha csak akkor hajt végre dinamikus frissítést, ha az alkalmazás más példányai nem futnak. Az alkalmazásfrissítés letöltése előtt célszerű lehet olyan módszert implementálni, amely az alkalmazás összes futó példányát jelzi az adatok mentéséhez és a tiszta kilépéshez.