Microsoft Office Web 应用和 VMware

本文由技术专家 汤姆·肖尔撰写。

使用 VMware 在非系统驱动器上安装 Microsoft Office Web 应用或Office Online Server时会出现几个问题。 问题在于将 Microsoft Office Web 应用 CacheLocation 或 RenderingCacheLocation 设置为 VMware 中具有 HotAdd/HotPlug 功能的非系统驱动器位置。

此问题有许多可能的症状,在查看/编辑文档时最明显。 例如,你可能会在 SharePoint 统一日志记录服务中看到以下错误, (ULS) 日志。

下面是使用 ULS 条目) 你看到的异常行为的一个示例 (:

“Microsoft Word Online”

“很抱歉,有问题,无法打开此文档。 如果再次发生这种情况,请尝试在 Microsoft Word 中打开文档。”

SharePoint 统一日志记录服务 (U L S) 日志中的错误的屏幕截图。

下面是你在 ULS 日志中看到的内容的示例:

03/14/2014 14:02:40.53 w3wp.exe (UTMSSP01:0x1620) 0x0BB8 SharePoint Foundation General ai1wu Medium System.IO.FileNotFoundException: The system cannot find the file specified. (Exception from HRESULT: 0x80070002), StackTrace:    at Microsoft.SharePoint.SPWeb.GetList(String strUrl)     at Microsoft.SharePoint.SPWeb.get_SiteAssetsLibrary()     at Microsoft.SharePoint.Utilities.SPWOPIHost.GetHomeUrlForFile(SPFile file, Boolean isAttachment)     at Microsoft.SharePoint.SoapServer.Wopi.RunCheckFile(HttpContext context, CommonRequestData requestData, CommonResponseData responseData)     at Microsoft.SharePoint.SoapServer.Wopi.ProcessRequestCore(HttpContext context, CommonRequestData requestData, CommonResponseData responseData)     at Microsoft.SharePoint.SoapServer.Wopi.ProcessRequest(HttpContext context)     at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()     at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)     at System.Web.HttpApplication.PipelineStepManager.ResumeSteps(Exception error)     at System.Web.HttpApplication.BeginProcessRequestNotification(HttpContext context, AsyncCallback cb)     at System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)     at System.Web.Hosting.UnsafeIISMethods.MgdIndicateCompletion(IntPtr pHandler, RequestNotificationStatus& notificationStatus)     at System.Web.Hosting.UnsafeIISMethods.MgdIndicateCompletion(IntPtr pHandler, RequestNotificationStatus& notificationStatus)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags) 33bd837e-42a2-4d46-89cf-e992045d4964

解决方案

最可靠的解决方法是卸载 Microsoft Office Web 应用或Office Online Server,然后在驱动器 C) 上重新安装 (,应用更新并重新生成场。

还可以使用以下文章中提供的方法来解决此问题:

在 ESXi 5.x 和 ESXi/ESX 4.x 虚拟机中禁用 HotAdd/HotPlug 功能 (1012225)