使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

假设你使用适用于 Microsoft Office Outlook 的 Microsoft Dynamics CRM 2011 客户端,并且该文件夹重定向已在客户端上启用。 在此情况下,当你尝试跟踪项目或运行 与 CRM 同步 函数时,你将收到类似于以下内容的错误消息:

[2011-09-07 11:11: 08.517]过程: OUTLOOK |组织: 00000000-0000-0000-0000-000000000000 |线程: 24 |类别:例外 |用户: 00000000-0000-0000-0000-000000000000 |级别:错误 |CrmException..ctorat CrmException..CrmException 上的 ctor (字符串消息、异常 innerException、Int32 errorCode、布尔 isFlowControlException)。CrmSqlCeConnection 上的 ctor (字符串消息,异常内部异常)。 <在 CatchClause (TryFilter (操作正文、谓词 "1 筛选器,操作" 1 IdMappingTable)处 b__2>打开 MarkAllItemsNotVisited () >Crm 异常:消息: SQL CE 数据库文件正由其他进程使用,错误代码:-2147220970 存在文件共享冲突。 其他进程可能正在使用该文件。 [ \\<server>\C$\<user>\Microsoft\MSCRM\Client\OutlookSyncCache.sdf ].

原因

出现此问题的原因是 Microsoft SQL Server 2000 Windows CE 版本3.5 (SQL Server CE 3.5)中的限制。 

解决方案

提示 应用了 Outlook 更新汇总15的 Microsoft Dynamics CRM 后,它将自动升级到 SQL CE 4.0。 因此,下面的解决方案仅在更新汇总14和更低的情况下才是必需的。 若要在应用程序数据文件夹位于远程共享位置运行 Microsoft Dynamics CRM 2011,请按照下列步骤操作:

  1. 安装 SQL Server CE 4.0。 若要执行此操作,请访问以下 Microsoft 网站:

    http://www.microsoft.com/download/en/details.aspx?id=17876注意

    • 此步骤需要提升的权限。

    • 在 SQL Server CE 4.0 中,64位客户端无需安装32位版本。

  2. 在位于程序 Files\MSCRM\Client 文件夹中的 CrmClient {14B13B7A-CA08-40bd-AC60-8C45367E807C} .config 文件中的 configuration 元素下添加以下 XML 代码:

    <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">   <dependentAssembly>      <assemblyIdentity name="System.Data.SqlServerCe" publicKeyToken="89845dcd8080cc91" culture="neutral" />      <bindingRedirect oldVersion="3.5.1.0"      newVersion="4.0.0.0"/>   </dependentAssembly> </assemblyBinding></runtime>

    注意

    • 此步骤需要提升的权限。

    • 请确保在 </configuration> 标记之前添加此代码。

  3. 此外,配置向导还会调用第二个配置文件。 该文件命名为 ConfigWizard,并且该文件位于 C:\Program Files\Microsoft Dynamics CRM\Client\ConfigWizard 文件夹中,其内容是:

    <configuration>  <startup>    <supportedRuntime version="v4.0.30319" />  </startup>  <runtime>    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">      <probing privatePath="..\bin"/>      <dependentAssembly>        <assemblyIdentity name="System.Data.SqlServerCe"        publicKeyToken="89845dcd8080cc91"        culture="neutral" />        <bindingRedirect oldVersion="3.5.1.0"        newVersion="4.0.0.0"/>      </dependentAssembly>    </assemblyBinding>  </runtime>  <system.net>    <defaultProxy useDefaultCredentials="true" />  </system.net></configuration>
  4. 删除 % localappdata%% appdata% 文件夹中的所有 .sdf 文件。 有关详细信息,请参阅 "CRM 中的数据库列表" 部分。注意 在 SQL Server CE 3.5 中创建的 .SDF 文件与 SQL Server CE 4.0 不兼容。

警告

从 SQL Server CE 3.5 升级到 SQL Server CE 4.0 后,首次运行 Microsoft Dynamics CRM 时可能会遇到性能下降。 之所以会出现此行为,是因为 Microsoft Dynamics CRM 必须重新创建所有缓存。 某些缓存受收件箱大小的影响。

验证步骤

若要验证是否正确应用了解决方案,请按照下列步骤操作:

  1. 在 "解决方案" 部分中执行上述所有步骤后,启动 Outlook。

  2. 请确保 Microsoft Dynamics CRM 插件正确启动。

  3. 启动 "流程资源管理器" 工具。 若要下载流程资源管理器,请访问以下 Microsoft 网站:

    http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

  4. 找到 " Outlook .exe " 进程,然后双击它。

  5. 选择 " .Net 程序集 " 选项卡,然后展开 " AppDomain: SharedDomain " (如果尚未展开)。

  6. 在列表中查找 SqlServerCe 。 请确保路径包含以下版本的 SQL Server CE: C:\windows\assembly\ GAC_MSIL \System.Data.SqlServerCe\4.0。注意 如果路径包含 SQL Server CE 3.5.1.0,则程序集重定向将不起作用。

CRM 中的数据库列表

  • %LocalAppData%\Microsoft\MSCRM\Client

    • CrmCache注意此文件包含非元数据平台缓存。

    • {Guid} [true | false] .Sdf注意 此文件包含 MAPI 存储内部存储。

    注意 可能有多个文件可供脱机使用和联机使用。

  • %AppData%\Microsoft\MSCRM\Client

    • EmailCache注意此文件包含 CRM 和 MAPI 项目之间的映射。

    • OutlookSyncCache 注意 此文件包含同步的内部状态。

为了在 Microsoft Dynamics CRM 中使用文件夹重定向,必须使用通用命名约定(UNC)路径。

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

更多信息

有关软件更新术语的更多信息,请单击下面的文章编号以查看 Microsoft 知识库中的相应文章:

824684 用于描述 Microsoft 软件更新的标准术语的说明有关 Microsoft Business 解决方案 CRM 软件修补程序和更新程序包术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

887283 Microsoft Business 解决方案 CRM 软件修补程序和更新程序包命名标准

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×