Project Objective:
Lower TCO (total cost of ownership) on Outlook configurations while setting everyone’s Outlook/Exchange setup to the same uniform settings. (Use cache mode and use RPC over HTTPS)

Problem to be solved:
Lower TCO and IT man hours spent on configuring Outlook.

Suggestions:
Teach users how to configure Outlook/Exchange themselves – REJECTED. Users cannot be expected to read instructions that is what IT is for.
Accepted solution: Use Office Customization Wizard to create an Outlook Profile. Check at each logon if Outlook is configure, if it is not load the corresponding Outlook/Exchange profile.

Future Versions:
Future versions will use PowerShell as I am migrating to PowerShell. Using PowerShell’s native syntax you can enumerate Outlook.exe’s location and call that versus static entries in the file or using reg.exe

rem #***********************************************************************
rem # "Configure-Outlook.bat"
rem #
rem # Written by Aaron Wurthmann (aaron <AT> wurthmann <DOT> com)
rem # If you edit please keep my name as an original author and
rem # keep me apprised of the changes, see email address above.
rem # This code may not be used for commercial purposes.
rem # You the executor,runner,user accept all liability.
rem # This code comes with ABSOLUTELY NO WARRANTY.
rem # You may redistribute copies of the code under the terms of the GPL v2.
rem # -----------------------------------------------------------------------
rem # 2010.03.01 ver FINAL
rem #
rem # Summary:
rem # Configures Outlook using referenced Outlook Profile, created by Office
rem # Custom Install Wizard.
rem # Future Versions:
rem # Future versions will use PowerShell as I am migrating to PowerShell. 
rem # Using PowerShell’s native syntax you can enumerate Outlook.exe’s
rem # location and call that versus static entries in the file or using reg.exe
rem #************************************************************************

@echo off rem title Configure Outlook Module set errorlevel= set strProfileDir= set strOutlookDir= set ExchServer=EXCHANGE.DOMAIN.EXT set OWAServer=OWA.DOMAIN.EXT set MailProfile=Outlook set ExchProfile=exch_cach_ssl.PRF rem Check for Server OS, if server OS exit %logonserver%netlogontoolsREG.EXE query "HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProductName" | findstr Server>nul && goto :EoF rem Determine Outlook version, 2003 or 2007 if exist "%ProgramFiles(x86)%Microsoft OfficeOFFICE11OUTLOOK.EXE" set strOutlookDir=%ProgramFiles(x86)%Microsoft OfficeOFFICE11 if exist "%ProgramFiles(x86)%Microsoft OfficeOFFICE12OUTLOOK.EXE" set strOutlookDir=%ProgramFiles(x86)%Microsoft OfficeOFFICE12 if exist "%ProgramFiles%Microsoft OfficeOFFICE11OUTLOOK.EXE" set strOutlookDir=%ProgramFiles%Microsoft OfficeOFFICE11 if exist "%ProgramFiles%Microsoft OfficeOFFICE12OUTLOOK.EXE" set strOutlookDir=%ProgramFiles%Microsoft OfficeOFFICE12 if not exist "%strOutlookDir%" goto :EoF rem Determine XP, Vista or Later ver | findstr /c:"Version 6.">nul && set strProfileDir=%USERPROFILE%AppDataRoamingMicrosoftOutlook ver | findstr /c:"Version 5.">nul && set strProfileDir=%USERPROFILE%Local SettingsApplication DataMicrosoftOutlook rem If Profile Exist Exit if exist "%strProfileDir%*.*" goto :EoF rem Check for Account Exclusions, If Excluded Exit FOR /F "usebackq delims== " %%a IN (%logonserver%netlogonmodulesexclusionsexchange.log) DO if /i '%%a'=='%username%' goto :EoF :import rem Import Profle start "" "%strOutlookDir%OUTLOOK.EXE" /importprf %logonserver%netlogonmodulesexchange-profiles%ExchProfile%

Example Outlook Profile – exch_cach_ssl.PRF


; **************************************************************
; Section 1 - Profile Defaults
; **************************************************************

[General]
Custom=1
ProfileName=Exchange with SSL Profile
DefaultProfile=Yes
OverwriteProfile=Yes
ModifyDefaultProfileIfPresent=TRUE
; **************************************************************
; Section 2 - Services in Profile
; **************************************************************

[Service List]
ServiceX=Microsoft Outlook Client
ServiceEGS=Exchange Global Section
Service1=Microsoft Exchange Server
ServiceEGS=Exchange Global Section

;***************************************************************
; Section 3 - List of internet accounts
;***************************************************************

[Internet Account List]

;***************************************************************
; Section 4 - Default values for each service.
;***************************************************************

[ServiceX]
CachedExchangeMode=0x00000002
CachedExchangeSlowDetect=TRUE

[ServiceEGS]
CachedExchangeConfigFlags=0x00000100
MailboxName=%UserName%
HomeServer=%ExchServer%
RPCoverHTTPflags=0x002b
RPCProxyServer=%OWAServer%
RPCProxyPrincipalName=
RPCProxyAuthScheme=0x0001

[Service1]
OverwriteExistingService=Yes
UniqueService=Yes
MailboxName=%UserName%
HomeServer=%ExchServer%
OfflineAddressBookPath=%USERPROFILE%local settingsapplication datamicrosoftoutlook
OfflineFolderPath=%USERPROFILE%local settingsapplication datamicrosoftoutlookoutlook.ost
AccountName=Microsoft Exchange Server

;***************************************************************
; Section 5 - Values for each internet account.
;***************************************************************

;***************************************************************
; Section 6 - Mapping for profile properties
;***************************************************************

[Microsoft Exchange Server]
ServiceName=MSEMS
MDBGUID=5494A1C0297F101BA58708002B2A2517
MailboxName=PT_STRING8,0x6607
HomeServer=PT_STRING8,0x6608
OfflineAddressBookPath=PT_STRING8,0x660E
OfflineFolderPath=PT_STRING8,0x6610

[Exchange Global Section]
SectionGUID=13dbb0c8aa05101a9bb000aa002fc45a
MailboxName=PT_STRING8,0x6607
HomeServer=PT_STRING8,0x6608
RPCoverHTTPflags=PT_LONG,0x6623
RPCProxyServer=PT_UNICODE,0x6622
RPCProxyPrincipalName=PT_UNICODE,0x6625
RPCProxyAuthScheme=PT_LONG,0x6627
CachedExchangeConfigFlags=PT_LONG,0x6629

[Microsoft Mail]
ServiceName=MSFS
ServerPath=PT_STRING8,0x6600
Mailbox=PT_STRING8,0x6601
Password=PT_STRING8,0x67f0
RememberPassword=PT_BOOLEAN,0x6606
ConnectionType=PT_LONG,0x6603
UseSessionLog=PT_BOOLEAN,0x6604
SessionLogPath=PT_STRING8,0x6605
EnableUpload=PT_BOOLEAN,0x6620
EnableDownload=PT_BOOLEAN,0x6621
UploadMask=PT_LONG,0x6622
NetBiosNotification=PT_BOOLEAN,0x6623
NewMailPollInterval=PT_STRING8,0x6624
DisplayGalOnly=PT_BOOLEAN,0x6625
UseHeadersOnLAN=PT_BOOLEAN,0x6630
UseLocalAdressBookOnLAN=PT_BOOLEAN,0x6631
UseExternalToHelpDeliverOnLAN=PT_BOOLEAN,0x6632
UseHeadersOnRAS=PT_BOOLEAN,0x6640
UseLocalAdressBookOnRAS=PT_BOOLEAN,0x6641
UseExternalToHelpDeliverOnRAS=PT_BOOLEAN,0x6639
ConnectOnStartup=PT_BOOLEAN,0x6642
DisconnectAfterRetrieveHeaders=PT_BOOLEAN,0x6643
DisconnectAfterRetrieveMail=PT_BOOLEAN,0x6644
DisconnectOnExit=PT_BOOLEAN,0x6645
DefaultDialupConnectionName=PT_STRING8,0x6646
DialupRetryCount=PT_STRING8,0x6648
DialupRetryDelay=PT_STRING8,0x6649

[Personal Folders]
ServiceName=MSPST MS
Name=PT_STRING8,0x3001
PathToPersonalFolders=PT_STRING8,0x6700 
RememberPassword=PT_BOOLEAN,0x6701
EncryptionType=PT_LONG,0x6702
Password=PT_STRING8,0x6703

[Unicode Personal Folders]
ServiceName=MSUPST MS
Name=PT_UNICODE,0x3001
PathToPersonalFolders=PT_STRING8,0x6700 
RememberPassword=PT_BOOLEAN,0x6701
EncryptionType=PT_LONG,0x6702
Password=PT_STRING8,0x6703

[Outlook Address Book]
ServiceName=CONTAB

[LDAP Directory]
ServiceName=EMABLT
ServerName=PT_STRING8,0x6600
UserName=PT_STRING8,0x6602
UseSSL=PT_BOOLEAN,0x6613
UseSPA=PT_BOOLEAN,0x6615
DisableVLV=PT_LONG,0x6616
DisplayName=PT_STRING8,0x3001
ConnectionPort=PT_STRING8,0x6601
SearchTimeout=PT_STRING8,0x6607
MaxEntriesReturned=PT_STRING8,0x6608
SearchBase=PT_STRING8,0x6603

[Microsoft Outlook Client]
SectionGUID=0a0d020000000000c000000000000046
FormDirectoryPage=PT_STRING8,0x0270
WebServicesLocation=PT_STRING8,0x0271
ComposeWithWebServices=PT_BOOLEAN,0x0272
PromptWhenUsingWebServices=PT_BOOLEAN,0x0273
OpenWithWebServices=PT_BOOLEAN,0x0274
CachedExchangeMode=PT_LONG,0x041f
CachedExchangeSlowDetect=PT_BOOLEAN,0x0420

[Personal Address Book]
ServiceName=MSPST AB
NameOfPAB=PT_STRING8,0x001e3001
Path=PT_STRING8,0x001e6600
ShowNamesBy=PT_LONG,0x00036601

; ************************************************************************
; Section 7 - Mapping for internet account properties.  DO NOT MODIFY.
; ************************************************************************

[I_Mail]
AccountType=POP3
;--- POP3 Account Settings ---
AccountName=PT_UNICODE,0x0002
DisplayName=PT_UNICODE,0x000B
EmailAddress=PT_UNICODE,0x000C
;--- POP3 Account Settings ---
POP3Server=PT_UNICODE,0x0100
POP3UserName=PT_UNICODE,0x0101
POP3UseSPA=PT_LONG,0x0108
Organization=PT_UNICODE,0x0107
ReplyEmailAddress=PT_UNICODE,0x0103
POP3Port=PT_LONG,0x0104
POP3UseSSL=PT_LONG,0x0105
; --- SMTP Account Settings ---
SMTPServer=PT_UNICODE,0x0200
SMTPUseAuth=PT_LONG,0x0203
SMTPAuthMethod=PT_LONG,0x0208
SMTPUserName=PT_UNICODE,0x0204
SMTPUseSPA=PT_LONG,0x0207
ConnectionType=PT_LONG,0x000F
ConnectionOID=PT_UNICODE,0x0010
SMTPPort=PT_LONG,0x0201
SMTPUseSSL=PT_LONG,0x0202
ServerTimeOut=PT_LONG,0x0209
LeaveOnServer=PT_LONG,0x1000

[IMAP_I_Mail]
AccountType=IMAP
;--- IMAP Account Settings ---
AccountName=PT_UNICODE,0x0002
DisplayName=PT_UNICODE,0x000B
EmailAddress=PT_UNICODE,0x000C
;--- IMAP Account Settings ---
IMAPServer=PT_UNICODE,0x0100
IMAPUserName=PT_UNICODE,0x0101
IMAPUseSPA=PT_LONG,0x0108
Organization=PT_UNICODE,0x0107
ReplyEmailAddress=PT_UNICODE,0x0103
IMAPPort=PT_LONG,0x0104
IMAPUseSSL=PT_LONG,0x0105
; --- SMTP Account Settings ---
SMTPServer=PT_UNICODE,0x0200
SMTPUseAuth=PT_LONG,0x0203
SMTPAuthMethod=PT_LONG,0x0208
SMTPUserName=PT_UNICODE,0x0204
SMTPUseSPA=PT_LONG,0x0207
ConnectionType=PT_LONG,0x000F
ConnectionOID=PT_UNICODE,0x0010
SMTPPort=PT_LONG,0x0201
SMTPUseSSL=PT_LONG,0x0202
ServerTimeOut=PT_LONG,0x0209
CheckNewImap=PT_LONG,0x1100
RootFolder=PT_UNICODE,0x1101

[INET_HTTP]
AccountType=HOTMAIL
Account=PT_UNICODE,0x0002
HttpServer=PT_UNICODE,0x0100
UserName=PT_UNICODE,0x0101
Organization=PT_UNICODE,0x0107
UseSPA=PT_LONG,0x0108
TimeOut=PT_LONG,0x0209
Reply=PT_UNICODE,0x0103
EmailAddress=PT_UNICODE,0x000C
FullName=PT_UNICODE,0x000B
Connection Type=PT_LONG,0x000F
ConnectOID=PT_UNICODE,0x0010
Be Sociable, Share!