Dela via


Snabb användarväxling

När en användare loggar in på en dator läser systemet in sin profil. Eftersom varje användare har ett unikt användarkonto kan flera användare dela en dator. När en användare loggar in är skrivbordsinställningarna, filerna, favoriterna och historiken de ser deras. de kan inte nås av andra användare. När användaren loggar ut bevaras profilen för nästa gång de loggar in. I äldre operativsystem var en användare skyldig att logga ut innan en annan användare kunde logga in. Från och med Windows XP behöver en användare inte logga ut för att tillåta att en annan användare loggar in. I stället är det möjligt för flera användare att logga in och växla snabbt mellan sina öppna konton. Den här funktionen kallas snabb användaromkoppling. Om du byter till ett annat konto ändras inte tillståndet för de program som en användare för närvarande kör. Anta till exempel att en användare tillåter att en annan användare växlar till sitt konto medan den första användaren är inloggad. När den första användaren växlar tillbaka till sitt konto körs deras program och deras nätverksanslutningar bevaras. Därför verkar det som om båda användarna använder datorn samtidigt.

Om dina program uppfyller kraven för Windows 2000-logotypen bör de fungera med snabb användarväxling i Windows XP och senare operativsystem. Det är dock viktigt att ha det här scenariot i åtanke när du utvecklar ett program så att det fungerar som användarna kan förvänta sig. Använd följande riktlinjer när du skriver dina ansökningar:

  • Implementera sann profilavgränsning. Systemet tillhandahåller en underliggande infrastruktur som stöder separation av användardata, användarinställningar och datorinställningar. Använd till exempel användarens mapp Dokument för att lagra användarskapade data. Om du vill hitta en katalog för programspecifika data använder du den kända mappen system med FOLDERID_RoamingAppData) eller, för äldre operativsystem, CSIDL system med CSIDL_APPDATA). Använd FOLDERID_LocalAppData eller CSIDL_LOCAL_APPDATA för data som inte ska vara tillgängliga för användaren på andra datorer, till exempel temporära filer.
  • Registrera dig för avisering om användarbyte. Vanligtvis behöver en applikation inte meddelas när växeln inträffar. Men om ditt program måste meddelas om en sessionsändring kan det registrera sig för att ta emot ett WM_WTSSESSION_CHANGE meddelande.
  • Var medveten om andra instanser av ditt program. Det finns till exempel tillfällen då ett program måste ladda ned en uppdatering från Internet. Uppdateringen kan misslyckas om en annan användare samtidigt kör en instans av programmet i en annan session. Även om uppdateringen lyckas kan uppdateringen göra att andra programinstanser som körs beter sig på ett oförutsägbart sätt. Därför är det bäst att utföra en dynamisk uppgradering endast om inga andra instanser av programmet körs. Innan du laddar ned en programuppdatering kan det vara lämpligt att implementera en metod som signalerar alla programinstanser som körs för att spara data och avsluta rent.