WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

Network Related

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

NT - Active Directory Routines

 Keywords: NT Win32 Networking AD Active Directory NameTranslate Convert Translate

;   NT - Active Directory routines  (thanks for your assistance !)
;
;   It would be very nice if some of you like to test it on a
;  full grown AD-environment with more domains

#DefineFunction currentNTuser()
   ;=============================================================
   ;  Get current user's domain\user
   ;  2010-04-14 L.M.Doornbos
   ;=============================================================
   cuser  = wntGetUser(@DEFAULT)
   users  = wntCurrUsers('', 1)
   For i = 1 To ItemCount(users,@TAB)
      user = ItemExtract(i,users,@TAB)
      If StrUpper(ItemExtract(2,user,'\')) == StrUpper(cuser) Then Break
   Next
   Return user
#EndFunction

#DefineFunction NTtoAD(strNTname)
   Pause('NTtoAD',strNTname)
   ;=============================================================
   ;  Translate  NT domain\user to AD path
   ;  2010-04-14 L.M.Doornbos
   ;=============================================================
   ADS_NAME_INITTYPE_GC = 3
   ADS_NAME_TYPE_NT4    = 3
   ADS_NAME_TYPE_1779   = 1

   objTrans  = CreateObject("NameTranslate")
   objTrans.Init( ADS_NAME_INITTYPE_GC, "" )
   ErrorMode(@OFF)
      LastError()
      objTrans.Set ( ADS_NAME_TYPE_NT4, strNTName )
   ErrorMode(@CANCEL)
   If LastError() Then Return ''

   strUserDN = objTrans.Get(ADS_NAME_TYPE_1779)
   Return 'LDAP://':strUserDN
#EndFunction

#DefineFunction ADtoNT(strUsrPath)
   ;=============================================================
   ;  Translate  AD path to NT domain\user
   ;  2010-04-14 L.M.Doornbos
   ;=============================================================
   ErrorMode(@OFF)
      LastError()
      cname  = dsGetProperty(strUsrPath,"canonicalName")
   ErrorMode(@CANCEL)
   If LastError() Then Return ''
   Return StrUpper(ItemExtract(1,ItemExtract(1,cname,'/'),'.')):'\':ItemExtract(3,cname,'/')
#EndFunction

Article ID:   W18379
Filename:   NT - Active Directory Routines.txt
File Created: 2010:04:14:07:52:42
Last Updated: 2010:04:14:07:52:42