When you distribute e-mail activities for a campaign in Microsoft Dynamics CRM, the e-mail activities are not automatically sent
to the recipients. Instead, you have to open each e-mail activity. Then, you
have to send each e-mail activity manually.
Update Rollup 1 for Microsoft Dynamics CRM 3.0 is available
This problem is fixed in Update Rollup 1 for Microsoft Dynamics CRM 3.0 Professional Edition for Service Providers.
For more information, click the following article number to view the article in the Microsoft Knowledge Base:
Update Rollup 1 for Microsoft Dynamics CRM 3.0 Professional Edition for Service Providers is available
Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
Change the value in the Web reference
name field to CrmSdk.
Click Add Reference.
Add the following using statement.
Create a public method that accepts a Guid parameter for the ActivityId field of the e-mail.
Note You must replace the GUID value that is specified in the service.CallerIdValue.CallerGuid line with the GUID value in the SystemUserId field of a user from
the Microsoft CRM system who has the appropriate permissions to send e-mail
You can use the Fetch method to retrieve this user. Your method will resemble
public void SendEmail(Guid campaignActivityID)
CrmService service = new CrmService();
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
service.CallerIdValue = new CallerId();
// Replace the GUID with the GUID of
the Microsoft CRM Administrator.
service.CallerIdValue.CallerGuid = new
SendEmailRequest req = new SendEmailRequest();
req.EmailId = campaignActivityID;
req.TrackingToken = "";
req.IssueSend = true;
SendEmailResponse res = (SendEmailResponse)service.Execute(req);
catch (System.Web.Services.Protocols.SoapException er)
// Process any error messages here.
After you change the service.CallerIdValue.CallerGuid line, click Build, and then click Build
Copy the newly created AutoSend.dll file that is in
the Bin\Debug folder of your solution to the following folder:
Program Files\Microsoft CRM\Server\Bin\Assembly
Add the assembly information to the Workflow.config file:
Click Start, point to
Programs, point to Administrative Tools, and
then click Services.
In the Services window, right-click Microsoft
CRM Workflow Service, and then click Stop.
Locate the Workflow.config file, and then open this
file in Notepad. By default, the path is as follows:
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
This problem was corrected in Microsoft Dynamics CRM 3.0 Update Rollup 1 and in Update Rollup 1 for Microsoft Dynamics CRM 3.0 Professional Edition for Service Providers.