Hi Experts,

One of our customers uses Novell Zenworks 11 software. I noticed that when the user is logged in and Zenworks service starts, it uses a randomly generated username to start the service. As a result WTSEnumerateSessions function recognizes this service user as an interactive session and sometimes this session has WTSActive status. It's prevent to get correct active session of a currently logged on user.
Could anyone please explain me a mechanism Novell Zenworks software uses for interactions with sessions. And how can I detect session, created by Zenworks?

Here is the table with outputs of WTSEnumerateSessions and WTSEnumerateSessionsEx functions from the same machine and the same logged on user with and without Zenworks.
With Zenworks installed Without Zenworks installed
# WTSEnumerateSessions #

Session[0] ID: 0
Station name: Services
State: WTSDisconnected(4)

Session[1] ID: 1
Station name: Console
State: WTSConnected(1)

Session[2] ID: 2
Station name: RDP-Tcp#8
State: WTSActive(0)

Session[3] ID: 65536
Station name: RDP-Tcp
State: WTSListen(6)

# WTSEnumerateSessionsEx #

Session[0] ID: 0
Domain name: NULL
Farm name: NULL
Host name: NULL
Session name: Services
User name: NULL
State: WTSDisconnected(4)

Session[1] ID: 1
Domain name: NULL
Farm name: NULL
Host name: NULL
Session name: Console
User name: NULL
State: WTSConnected(1)

Session[2] ID: 2
Domain name: ALPHA
Farm name: NULL
Host name: NULL
Session name: RDP-Tcp#8
User name: chris
State: WTSActive(0)
# WTSEnumerateSessions #

Session[0] ID: 0
Station name: Services
State: WTSDisconnected(4)

Session[1] ID: 1
Station name: Console
State: WTSActive(0)

Session[3] ID: 65536
Station name: RDP-Tcp
State: WTSListen(6)

# WTSEnumerateSessionsEx #

Session[0] ID: 0
Domain name: NULL
Farm name: NULL
Host name: NULL
Session name: Services
User name: NULL
State: WTSDisconnected(4)

Session[1] ID: 1
Domain name: Alpha
Farm name: NULL
Host name: NULL
Session name: Console
User name: chris
State: WTSActive(0)

Thanks