Nathan McKaskle
Nathan McKaskle

Reputation: 3063

C# How do I log off a Citrix XenApp User Session?

Since there is absolutely zero documentation by Citrix on their SDK, I am documenting this here.

Using C#, how do I programmatically log a user session off?

Upvotes: 3

Views: 1400

Answers (1)

Nathan McKaskle
Nathan McKaskle

Reputation: 3063

Use the simple method below to log off a user session by parsing through sessions and logging off an individual session.

using Citrix.Common.Sdk;
using Citrix.XenApp.Sdk;
using Citrix.XenApp.Commands;
using Citrix.Management.Automation;

    private void logoffUser(string strUser)
    {
        GetXASessionByFarm sessions = new GetXASessionByFarm(true);

        foreach (XASession session in CitrixRunspaceFactory.DefaultRunspace.ExecuteCommand(sessions))
        {
            if (session.AccountName.ToLower() == objWINSDomainName + "\\" + strUser)
            {
                var cmd = new StopXASessionByObject(new[] { session });
                CitrixRunspaceFactory.DefaultRunspace.ExecuteCommand(cmd);
            }
        }
    }

Upvotes: 3

Related Questions