in reply to Disconnect users

Hrm.   I could be wrong here</CharlesBarkley>, but looks to me like Bamy787 is asking about logging off remote users, while ExitWindows() appears to be about closing the server console as if by typing CTRL+ALT+DEL.

You can use Win32AdminMisc to *set* account expiration, but that also doesn't seem to be the real question.
UserSetMiscAttributes( $Domain, $User, USER_ACCT_EXPIRES, $Expiration_In_Secs_Since_1970-01-01_00:00:00 );

Just a guess, but looks like the real question is partially addressed by this MS Knowledge Base article, and that the solution includes configuring periodic logouts (eg; nightly) using UserSetMiscAttributes( $Domain, $User, USER_LOGON_HOURS $num );   At the very worst, bouncing the server (after setting necessary account params) would force new logins with desired params now activated.

UF_ACCOUNTDISABLE and UF_LOCKOUT might also come into play, and all of the above are documented here.   Dave Roth, author of the Win32AdminMisc module, has also written two books you might find useful: Win32 Perl Scripting and Win32 Perl Programming.

    striving toward Perl Adept
    (it's pronounced "why-bick")

  • Comment on Re: Disconnect users (Win32AdminMisc,UserSetMiscAttributes, UF_ACCOUNTDISABLE, USER_LOGON_HOURS)
  • Select or Download Code