home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 July / CHIP_CD_2004-07.iso / software / nncron_hit / files / nncron189.exe / plugins / sid.spf < prev    next >
Text File  |  2003-06-26  |  1KB  |  41 lines

  1. \ File:         sid.spf
  2. \ Author:       Nicholas Nemtsev
  3. \ Date:         27.06.2002
  4. \ Description:  Convert username to string SID
  5. \               For Windows 2000 and XP only.
  6.  
  7. \ Usage:  %SID: <user-name>%
  8. \ Example:
  9. \ REG-SZ: "HKEY_USERS\%SID: Nicholas%\Control Panel\Desktop\SCRNSAVE.EXE" "G:\WINNT\System32\DPMS.SCR"
  10.  
  11. Win2k?
  12. [IF]
  13. WINAPI: LookupAccountNameA ADVAPI32.DLL
  14. \ WINAPI: GetSidIdentifierAuthority ADVAPI32.DLL
  15. WINAPI: ConvertSidToStringSidA ADVAPI32.DLL
  16.  
  17. WINAPI: LocalFree KERNEL32.DLL
  18.  
  19. : SID { a-user u-user \ az cbSid cbDomain pSid sid dom -- a u }
  20.     256 ALLOCATE THROW TO sid
  21.     256 ALLOCATE THROW TO dom
  22.     256 TO cbSid 256 TO cbDomain
  23.     a-user u-user S>SZ DROP TO az
  24.     0 SP@ AT cbDomain dom AT cbSid sid az 0 LookupAccountNameA ERR THROW
  25.     DROP
  26.     0 TO pSid
  27.     AT pSid sid ConvertSidToStringSidA ERR THROW
  28.     sid FREE THROW
  29.     dom FREE THROW
  30.     az FREE THROW
  31.     pSid IF
  32.             pSid ASCIIZ> EVAL-SUBST
  33.             pSid LocalFree 0= ERR THROW
  34.          ELSE S" " THEN
  35. ;
  36.  
  37. \ S" Nicholas" SID
  38.  
  39. : SID: BL SKIP 1 PARSE SID ;
  40. [THEN]
  41.