Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Exchange Öffentliche Ordner per VBScript o.ä. Email-aktivieren

Frage Entwicklung VB for Applications

Mitglied: Jehemo2001

Jehemo2001 (Level 1) - Jetzt verbinden

05.09.2006, aktualisiert 14.09.2006, 9203 Aufrufe, 2 Kommentare

Wer weiss, ob und wie man ÖO in Exchange per VBScript Email-aktivieren bzw. deaktivieren kann.

Ich suche eine Möglichkeit, die Öffentliche-Ordner-Struktur in VB (bzw. VBA) auszulesen (funktioniert auch soweit) und zu prüfen, welche Ordner Email-aktiviert sind, und welche nicht (das habe ich leider nicht gefunden). Die Eigenschaft möchte ich dann gegebenenfalls ändern.

Gruß Jehemo2001
Mitglied: astera
14.09.2006 um 09:32 Uhr
Hallo,

1.
was meinst Du mit "Email aktivieren"?

2.
Wie liest Du ÖO aus?

LG
astera
Bitte warten ..
Mitglied: Jehemo2001
14.09.2006 um 11:09 Uhr
Zu 1: Im Emails direkt an öffentliche Ordner zuzustellen, müssen diese Email-aktiviert werden. Das kann man über den System-Manager machen.
In ordner, öffentliche Ordner rechte Maustatste auf den Ordner, alle Tasks und dann Email aktivieren.

zu 2:
ich lese das AD wie folgt aus:

Function ReadAD()
On Error Resume Next
Const AccessTable = "ADEmailadressen"

' List of Folders who should NOT be exported
' This list should contain the Folder's logon name
' Separate each name by a comma
Const Folders2Skip = ""

' Constant for the search to search subtrees
Const ADS_SCOPE_SUBTREE = 2

Const adOpenStatic = 3
Const adLockOptimistic = 3

' General variable declarations
Dim objConnectionDB As Database
Dim objRecordsetDB As Recordset
Dim objConnectionAD, objCommandAD, objRecordsetAD
Dim strSQL
Dim objRootDSE, strDNSDomain
Dim strDN, strDisplayName
Dim objFolder
Dim i

'Create and open ADO connection to the Access database
Set objConnectionDB = CurrentDb
Set objRecordsetDB = objConnectionDB.OpenRecordset("ADEmailAdressen", dbOpenTable)

' Define the SQL statement used to clear out previous
' Folder info which was exported from AD
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE FROM ADEmailAdressen WHERE ImportedFromAD = True"

' Determine the DNS domain from the RootDSE object.
Set objRootDSE = GetObject("LDAP://RootDSE")
strDNSDomain = objRootDSE.Get("defaultNamingContext")

' Create and open an ADO connection to AD
Set objConnectionAD = CreateObject("ADODB.Connection")
Set objCommandAD = CreateObject("ADODB.Command")

objConnectionAD.Provider = "ADsDSOObject"
objConnectionAD.Open "Active Directory Provider"

' Set connection properties
With objCommandAD
.ActiveConnection = objConnectionAD

' Use SQL syntax for the query
' This retrieves all values named in the SELECT section for
' Folder accounts which do not have the Notes section = NoExport.
' The recordset is sorted ascending on the displayName value.


.CommandText = "Select distinguishedName, name, ObjectClass," & _
" displayName, msExchHideFromAddressLists, givenname, sn, cn, mail, " & _
" sAMAccountname, displayName, textEncodedORAddress" & _
" FROM 'LDAP://" & strDNSDomain & "'" & _
" WHERE objectCategory = 'person' AND objectClass='user' OR" & _
" objectCategory='publicFolder' or objectCategory='group' OR" & _
" objectCategory='contact' OR objectCategory='msExchDynamicDistributionList'" & _
" ORDER BY displayName"

' "distinguishedName,name,ObjectClass,LegacyExchangeDN,msExchADCGlobalNames," & _
' "displayName,msExchHideFromAddressLists,hideDLMembership,msexchmasteraccountsid," & _
' "msExchALObjectVersion,showInAddressBook,msExchPolicyEnabled,givenName,sn,cn,mailNickname,targetAddress,proxyAddresses," & _
' "mail,textEncodedORAddress,msExchHomeServerName,msExchExpansionServerName,msExchCustomProxyAddresses,msExchPoliciesIncluded," & _
' "msExchPoliciesExcluded,homeMDB,homeMTA,msExchMailboxGuid,unmergedAtts,msExchDynamicDLFilter,msExchPurportedSearchUI," & _
' "msExchMailboxSecurityDescriptor,msExchResourceGUID,UserAccountControl,msExchUserAccountControl

.Properties("Page Size") = 1000
.Properties("Timeout") = 30
.Properties("Searchscope") = ADS_SCOPE_SUBTREE
.Properties("Cache Results") = False
End With
Set objRecordsetAD = objCommandAD.Execute

' Move to the first record in the recordset
objRecordsetAD.MoveFirst

' Loop until we reach the end of the recordset
Do While Not objRecordsetAD.EOF
' Get the distinguished name of this folder
' The syntax is something like:
' CN=Joe E. Law,OU=Sales,OU=US,DC=mydomain,DC=local
strDN = objRecordsetAD.Fields("distinguishedName")
' Bind to the user object
Err.Clear
Set objFolder = GetObject("LDAP://" & strDN & "")

With objFolder
If Err.Number = 0 And _
Not IsNull(.DisplayName) And Trim(.DisplayName) <> "" And Not IsNull(.mail) And Trim(.mail) <> "" _
And InStr(.DisplayName, "SystemMailbox") = 0 _
And InStr(.DisplayName, "OWAScratch") = 0 _
And InStr(.DisplayName, "Outlook 10") = 0 _
And InStr(.DisplayName, "StoreEvents") = 0 Then

'Add new record to the Access database
objRecordsetDB.AddNew
' Get Folder data from AD and populate the new record in the
' Access database
objRecordsetDB("DisplayName") = .DisplayName
objRecordsetDB("Description") = .sAMAccountname
objRecordsetDB("objectCategory") = .objectCategory
objRecordsetDB("distinguishedName") = .textEncodedORAddress
objRecordsetDB("Email") = .mail
objRecordsetDB("ImportedFromAD") = True
' Commit the record
objRecordsetDB.Update
End If
' Release this object reference
Set objFolder = Nothing
End With

' Move to the next record in the AD recordset
objRecordsetAD.MoveNext
Loop

' Close the Access database recordset
objRecordsetDB.Close
' Close the Access database connection
objConnectionDB.Close

' Release these object references
Set objRecordsetDB = Nothing
Set objConnectionDB = Nothing

' Close the AD recordset
objRecordsetAD.Close
' Close the AD connection
objConnectionAD.Close

' Release these object references
Set objRecordsetAD = Nothing
Set objConnectionAD = Nothing

' Delete Empty entries
DoCmd.RunSQL "DELETE FROM ADEmailAdressen WHERE Trim(nz(DisplayName)) = ''"

End Function

Die Routine ist noch im Test und enthält deshalb überflüssigen/nicht optimierten Code.

Hierbei erhalte ich den Ordnernamen allerdings nicht in seiner Baumstruktur. Ein Ordner
Öffentliche Ordner\Alle öffentlichenOrdner\Testordner\Unterordner1 wird nur mit dem Namen Unterordner1 ausgegeben.


Gruß Jehemo2001
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Exchange Server
Office 365 öffentliche ordner email (1)

Frage von meister00 zum Thema Exchange Server ...

Exchange Server
gelöst Exchange-Transport-Regel für Kopie gesendeter Mails in Öffentliche Ordner (1)

Frage von ex-166 zum Thema Exchange Server ...

Exchange Server
gelöst Öffentliche Ordner aus gecrashtem Exchange 2003 zurück holen (21)

Frage von Larz zum Thema Exchange Server ...

Exchange Server
gelöst Exchange 2013 Öffentliche Ordner über Active Sync werden nicht angezeigt (5)

Frage von Xartor zum Thema Exchange Server ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...