CRM Registry Settings

Today we have a relatively serious topic: Registry Settings. Unfortunately this can be an extremely boring topic – so I have opted for a more casual and sarcastic style.

Microsoft Dynamics CRM 3.0 has a boatload of additional settings which many of you might be unaware of. These additional settings are stored in the registry of web server machines. If you don’t know how to edit the registry – then you probably shouldn’t be (as patrician as that sounds – trust me – it’s for your own good). Wikipedia has a nice overview of the Windows Registry or there is the rather dry MSDN version.

Let’s start with supported vs unsupported. If you modify a registry setting which is not documented in our SDK then it is an unsupported modification. The undocumented ones are used for the internal operation of the system: changing them only makes you look smart – it doesn’t actually make you smart. Those technical readers out there will be aware of the type of person I’m referring to: the one who unnecessarily modifies their registry to impress others.

Here is the list of items from the SDK which you can modify:

Registry Setting

Description

AbsoluteExpirationMinutes

For Hosted Microsoft Dynamics CRM 3.0 release only. Used to control authentication in a hosted environment.

AllowUnresolvedPartiesOnEmailSend

Used to allow unresolved parties on e-mail send.

CookieDomain

For Hosted Microsoft Dynamics CRM 3.0 release only. Used to control authentication in a hosted environment.

DebugExceptionsInfo

Returns unmanaged code exceptions.

DebugTraceLevel

Returns managed code exceptions.

FaxCoverPageDirectory

Used to override the location Microsoft CRM searches for fax cover pages on Microsoft CRM SBE installed on SBS.

IgnoreErrorsFlags

Used to allow the Outlook client to load regardless of error conditions.

LogPerfData

Used to enable performance tracing.

LogPerfDataDetails

Used to get additional details when using logging.

LogPerfDataLevel

Used to specify the level of tracing.

maxrecordsforexporttoexcel

Used to indicate the number of records to export to Microsoft Excel.

MaxRowsPerPage

Specifies the maximum number of rows returned from a Fetch query.

maxuploadfilesize

Used to set the size limit for files uploaded to Microsoft CRM through Bulk Import or as attachments.*

ProgramFilesDir

Used to change the installation path for the Microsoft CRM Desktop Client.

ReportViewingUrl

For Hosted Microsoft Dynamics CRM 3.0 release only. Used to specify the URLs for viewing reports. Multiple URLs are supported for multiple server configurations.

ServerUrl

Updated by appending an ‘s’ at the end of the ‘http’ value after enabling Secure Socket Layers (SSL) after the Microsoft CRM server is installed.

SessionExpirationMinutes

For Hosted Microsoft Dynamics CRM 3.0 release only. Used to control authentication in a hosted environment.

SmtpCodePage

Used to override the codepage used when sending e-mail in Microsoft CRM.

SOCKETTIMEOUT

Used to set the timeout value for the Post Url action.

SQLRsServerURL

Updated by appending an ‘s’ at the end of the ‘http’ value after enabling Secure Socket Layers (SSL) after the Microsoft CRM server is installed.

timeout

Used to set the timeout value for .NET assemblies.

TurnOffFetchThrottling

Specifies whether or not to use the value set for MaxRowsPerPage.

WFPoolingInterval

Controls the time interval (in seconds) for workflow service pooling the event log table. Used to configure the workflow pooling interval.

WFWorkerThreads

Used to configure the number of threads run by the workflow service.

WorkflowPostUrlAuth

Used to indicate that the Post Url action should post security information.

One of the most common settings to be modified is the maxfileuploadsize setting. It’s been blogged a couple times by some others but recently I’ve been getting a few questions about this. CRM restricts the size of files for import (for email attachments, regular attachments, sales literature documents and customization import files) via this registry key. The CRM client also has the same setting which it uses for uploading files. You can find the client key here: HKEY_CURRENT_USER\Software\Microsoft\MSCRMClient.

If you are using the CRM integration products you can also adjust the database which the product uses. 

Remember that any time you modify the registry of your CRM implementation you will need to make these changes on all the web services in the load balanced cluster.