You dont need a DLL, It can be done via COM Objects using WScript.Network.

alias uname {
if ($com(getusername)) { .comclose getusername }
.comopen getusername WScript.Network
var %i = $com(getusername, Username, 2)
var %v = $com(getusername).result
.comclose getusername
return $iif(%i == 1,%v,ERR)
}

Syntax; //echo -> $uname

Tested here, XP Home, SP2, Returns 'Eamonn' when logged on as 'Eamonn' and 'Guest' when logged on as guest, so seems to work fine.

Set it on APPACTIVE perhaps to check $uname.

Eamonn.