Jump to content

pdf2smtp script für NT Domäne umbauen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo liebe Scripting Gurus,

 

ich hab da mal ein kleines Verständnisproblem. Hab hier ein Script zum erzeugen einer EMail mit pdf Anhang über VBS.

Das komplette Script gibt es hier: http://www.msxfaq.net/tools/pdf2smtp-0807.zip

Beschreibung hier: MSXFAQ.DE - PDF2SMTP Script

Jetzt möchte ich dieses Script für eine NT Domäne benutzen. Problem ist, dass ich den Fullname splitten muss.

Username der den Druckerjob startet ist: HWurst (strSAMName)

UserFullname: Wurst, Hans (user.FullName)

Der benötigte Name: Hans.Wurst

 

Diese Codesnipsel habe ich gefunden, kann sie aber leider nicht zusammenfügen :(

 

Set objUser = GetObject("WinNT://" & strDomain & "/" & strSAMName)
   str = objUser.FullName
   arr = Split(str, ", ")

Hier der Code, den ich ersetzen möchte:

function SAM2Mail(strSAMName)
   ' Funktion: Übersetzt den übergebenen SAMAccountName per ADS-Abfrage in die SMTP-Adresse
   ' Eingabeparameter: strSAMName: Der NT-Anmeldename
   ' Rückgabewert: Die SMTP-Adresse oder ein Leerstring
   ' Kommentar:
   strField = "mail" ' Angabe des abzufragenden Feldes

   Dim objConn
   Dim objCommand
   dim objArgs

   On Error Resume Next


   'Create ADO connection object for Active Directory
   Set objConn = CreateObject("ADODB.Connection")
   objConn.Provider = "ADsDSOObject"
   objConn.Open "Active Directory Provider"
   if checkit("Fehler beim ADO-Zugriff auf Active Directory!") then exit function

   'Create ADO command object for the connection.
   Set objCommand = CreateObject("ADODB.Command")
   objCommand.ActiveConnection = objConn
   if checkit("Fehler beim Definieren des ADO-Kommandos!") then exit function


   'Get the ADsPath for the domain to search.
   Set objRoot = GetObject("LDAP://rootDSE")
   strDomain = objRoot.Get("defaultNamingContext")
   Set objDomain = GetObject("LDAP://" & strDomain)
   if checkit("Fehler beim Ansprechen des Active Directory!") then exit function

   'Abfrage
   strSQL = "SELECT " & strField & " FROM '"
   strSQL = strSQL & "LDAP://" & strDomain & "' WHERE sAMAccountName = '" & strSAMName & "'"

   'saydebug strSQL

   'Assemble the commandtext.
   objCommand.CommandText = strSQL
   if checkit("Fehler beim Übergeben des Kommandos!") then exit function

   'Execute the query.
   Set objRS = objCommand.Execute
   if checkit("Fehler beim Ausführen der Suche im Active Directory!") then exit function

   strOutput = ""
   strOutput = objRS.Fields(0).value

   on error goto 0

   SAM2Mail = strOutput

end function

Wer könnte mir bei diesem Problem helfen?

Link zu diesem Kommentar

Hier die Lösung für mein Problem:

 

function SAM2MailNT(strSAMName, strNTDomain, strMailToDomain)
 dim objUser, arrUsers, strNTUserNachname, strNTUserVorname, stremail

 Set objUser = GetObject("WinNT://" & strNTDomain & "/" & strSAMName)

' --- Enthält der Anzeigenamen ein Komma, wird die Zeichenkette in Vor- und Nachname gesplittet
  If InStr(objUser.FullName, ", ") Then
     ArrUsers = Split(objUser.FullName, ", ")
     strNTUserNachname = Trim(ArrUsers(0))
     strNTUserVorname = Trim(ArrUsers(1))
      End If
  stremail =""
  stremail = strNTUserVorname & "." & strNTUserNachname & "@" & strMailToDomain

  SAM2MailNT = stremail
end function

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...