使用vs2005开发analysis service项目时,当编辑计算选项卡时,出现错误
出现错误:" 尝试读取或写入受保护的内存。这通常指示其它内存已损坏"

甚至在建立的analysis service项目未部署和处理时点击计算选项卡时,会关闭vs2005. 经过部署和处理后,就会出项以上错误信息,无法添加新的计算。

原因:
http://support.microsoft.com/kb/926422/zh-cn

症状

考虑以下情形:
具有 SQL Server 2005 安装计算机上安装 Microsoft Office Excel 2007。
计算机上使用 SQLServerManagementStudio 或 SQL Server Business Intelligence Development Studio (BIDS)。
在此方案, 可能会收到一个或多个以下错误信息:
错误 1
发生意外错误: 应用程序中错误 ' '。
错误 2
发生意外错误: ' 已尝试来读取或写入保护内存。 ' 这通常表明其他内存已损坏。
错误 3
试图读取或写入保护内存。 这通常表明其他内存已损坏。 (msmgdsrv)
错误 4
设计器无法显示计算因为 MDX 脚本中有一个或多个语法错误。 要显示这些计算, 通过切换到计算视图工具栏, 上的脚本视图, 然后编辑 MDX 脚本解决语法错误。
错误 5
语法检查失败并出现以下信息:
应用程序中 error。
错误 6
应用程序中错误。 (msmgdsrv)
错误 7
查询准备失败。
已知以下操作来触发这些错误消息:
使用 SQLServerManagementStudio
尝试创建新角色或编辑现有角色用于 SQL Server 2005 分析服务数据库。 在 创建角色 或 编辑角色 对话框中, 您按照这些步骤:
1. 单击左窗格中 维度数据 。
2. 在右窗格中单击 高级 选项卡。
3. 单击 检查 。
此外, 当您按照这些步骤 创建角色 或 编辑角色 对话框中可能出现相同错误信息:
1. 单击左窗格中 单元格数据 。
2. 在右窗格中单击 高级 选项卡。
3. 单击 检查 。
使用 SQL Server BusinessIntelligenceDevelopmentStudio
创建或打开 AnalysisService 项目。 在多维数据集设计器, 您执行下列操作之一:
单击 计算 选项卡。
单击 操作 选项卡, 然后执行操作其中调用多维表达式 (MDX) 语法检查。
单击选项卡, KPI , 然后执行操作其中调用多维表达式 (MDX) 语法检查。
是否存在于多维数据集计算单击 Perspectives 选项卡。
是否存在于多维数据集计算单击 转换 选项卡。
当报告服务器项目向导用于创建报表使用 AnalysisServices 数据源时此外, 发生该问题。 报表向导 对话框中, 您执行下列操作之一:
单击 查询生成器 , 并单击 查询生成器 对话框中 添加计算成员 。 在 计算成员生成器 对话框中, 单击 检查 。
单击 查询生成器 生成查询, 然后单击 确定 。

回到顶端

原因

发生此问题是因为安装 Office Excel 2007年时安装新版本的 Msmgdsrv.dll 文件。 新版本的 Msmgdsrv.dll 文件与旧版本的 Msmdlocal.dll 文件, SQLServerManagementStudio 和 SQL Server BusinessIntelligenceDevelopmentStudio 将加载到 " 症状 " 部分中提到操作不兼容。

回到顶端

解决方案

修复信息

现在支持修补程序可从 Microsoft, 但是它只能用于解决本文中描述问题。 它只适用于系统都遇到此特定问题。 此修复程序可能需要接受其他测试。 因此, 如果您受此问题, 的影响不严重我们建议您等待下 Microsoft SQL Server 2005 服务包包含此修复程序。

要立即, 解决问题请与 Microsoft 产品支持服务以获取此修复程序。 有关 Microsoft 产品支持服务电话号码和支持费用, 信息的完整列表请访问 Microsoft Web 站点:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
注意 在特殊情况下, 如果 Microsoft 支持专家确定该特定更新将解决问题可能是免, 是正常收取支持电话费用。 通常支持成本将应用于其他支持问题和问题做不符合特定更新问题。

先决条件

SQL Server 2005 Service Pack 1
有关详细信息, 请单击下列文章编号以查看 Microsoft 知识库中相应:
913089 (http://support.microsoft.com/kb/913089/) 如何获取最新服务包对于 SQL Server 2005

重新启动信息

如果有要替换文件正在使用安装程序必须重新启动计算机。 为了避免重新启动计算机, 关闭所有 SQLServerAnalysisServices 工具和客户。 如果服务器被配置为提供 HTTP 访问此外, 必须停止 MicrosoftInternet 信息服务 (IIS)。 如果已安装 SQLServerAnalysisServices 作为命名实例, 您应也停止 SQLServer 浏览器服务因为应用此修复程序时是 SQLServer 浏览器服务 Msmdredir.dll 组件更新。

注册表信息

您不必更改注册表。

修复文件信息

此修复程序仅包含需要纠正问题, 本文列出这些文件。 此修复程序可能不包含所有文件, 您必须有到产品完全更新到最新版本。

文件属性 (或更高文件属性) 的此修复程序英文版具有下表中列出。 中协调通用时间 (UTC) 列出日期和时间对这些文件。 当您查看文件信息, 将转换为本地时间。 要查找 UTC 与本地时间, 区别控制面板中 DateandTime 项目中使用 时区 选项卡。