4

在我们的开发服务器上的网站上出现此间歇性错误。每当用户在内容编辑器中时,在页面上或什至在从网站访问任何网页时都会随机收到此消息。使用 Sitecore 6.3。正在使用的 .NET Framework 是 3.5

检查事件日志时,它会发出此警告

错误是

Event Type: Warning 
Event Source:   ASP.NET 2.0.50727.0 
Event Category: Web Event  
Event ID:   1309 
Date:       3/26/2013 
Time:       9:26:02 AM 
User:       N/A 
Computer:   XXXXXX 
Description: 
Event code: 3005  
Event message: An unhandled exception has occurred.  
Event time: 3/26/2013 9:26:02 AM  
Event time (UTC): 3/26/2013 9:26:02 AM  
Event ID: 5d6aa660141a4ca0966f5a3fad3b0df6  
Event sequence: 726  
Event occurrence: 2  
Event detail code: 0    
Application information: 
    Application domain: /LM/W3SVC/1829939302/Root-1-130087629613322311 
    Trust level: Full 
    Application Virtual Path: / 
    Application Path: D:\WebSites\Dev\dev1.cms.local\ 
    Machine name: XXXXX    
Process information: 
    Process ID: 7728 
    Process name: w3wp.exe 
    Account name: NT AUTHORITY\NETWORK SERVICE    
Exception information: 
    Exception type: FileNotFoundException 
    Exception message: Could not find file 'C:\WINDOWS\TEMP\vhn7lf5h.dll'.    
Request information: 
    Request URL: http://dev1.cms.local/sitecore/shell/default.aspx?xmlcontrol=RichTextEditor&da=core&id=12b8259DD4D-BD3D-4035-80A4-BC8CB03D260D12d&ed=FIELD280399344&vs&la=en&fld=12b878702CE-F97D-40CB-8F1D-AA7AEBEC8B2412d&so=

Request path: /sitecore/shell/default.aspx 
User host address: 111.11.111.111 
User: sitecore\Anonymous 
Is authenticated: False 
Authentication Type:  
Thread account name: NT AUTHORITY\NETWORK SERVICE    
Thread information: 
    Thread ID: 45 
    Thread account name: NT AUTHORITY\NETWORK SERVICE 
    Is impersonating: False 
    Stack trace:    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)    at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)    at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)    at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames)    at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources)    at Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources)    at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources)    at Sitecore.CodeDom.Compiler.CSharpCompiler.Compile(String sourceFile, String code, String assemblyFile, StringCollection referencedAssemblies)    at Sitecore.CodeDom.Compiler.CSharpCompiler.Compile(String code, StringCollection referencedAssemblies)    at Sitecore.CodeDom.Compiler.CSharpCompiler.SourceToMemory(String code, StringCollection referencedAssemblies)    at Sitecore.Web.UI.XmlControls.FolderControlSource.BuildControlAssembly(XmlNode fileNode, String& assemblyKey, String& assemblyFile)    at Sitecore.Web.UI.XmlControls.FolderControlSource.GetControlAssembly(String controlName, String& assemblyKey)    at Sitecore.Web.UI.XmlControls.FolderControlSource.ResolveType(String controlName, Boolean includeDynamicTypes)    at Sitecore.Web.UI.XmlControls.ControlSource.GetControlType(String namespacePrefix, String controlName, String mode, Boolean includeDynamicTypes)    at Sitecore.Web.UI.XmlControls.ControlFactory.GetControlType(String controlName, String mode, Boolean includeDynamicTypes)    at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(Control parent, String controlName, String mode, Object[] properties, AllowGenericControl allowGeneric)    at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(String controlName)    at Sitecore.Shell.DefaultPage.OnInit(EventArgs e)    at System.Web.UI.Control.InitRecursive(Control namingContainer)    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

任何帮助将不胜感激。

谢谢。

4

4 回答 4

5

我有一个类似的异常消息Source file 'C:\windows\TEMP\2vddx2j2.0.cs' could not be found'并且内容编辑器不会加载。

Exception: Sitecore.CodeDom.Compiler.CompilerException
Message: Source file 'C:\windows\TEMP\2vddx2j2.0.cs' could not be found
Source: File: , line 0
   at Sitecore.CodeDom.Compiler.CSharpCompiler.AssertResults(String sourceFile, CompilerResults results)
   at Sitecore.CodeDom.Compiler.CSharpCompiler.Compile(String sourceFile, String code, String assemblyFile, StringCollection referencedAssemblies)
   at Sitecore.CodeDom.Compiler.CSharpCompiler.Compile(String code, StringCollection referencedAssemblies)
   at Sitecore.CodeDom.Compiler.CSharpCompiler.SourceToMemory(String code, StringCollection referencedAssemblies)
   at Sitecore.Web.UI.XmlControls.FolderControlSource.BuildControlAssembly(XmlNode fileNode, String& assemblyKey, String& assemblyFile)
   at Sitecore.Web.UI.XmlControls.FolderControlSource.GetControlAssembly(String controlName, String& assemblyKey)
   at Sitecore.Web.UI.XmlControls.FolderControlSource.ResolveType(String controlName, Boolean includeDynamicTypes)
   at Sitecore.Web.UI.XmlControls.ControlSource.GetControlType(String namespacePrefix, String controlName, String mode, Boolean includeDynamicTypes)
   at Sitecore.Web.UI.XmlControls.ControlFactory.GetControlType(String controlName, String mode, Boolean includeDynamicTypes)
   at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(Control parent, String controlName, String mode, Object[] properties, AllowGenericControl allowGeneric)
   at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(String controlName, String mode, Object[] properties, AllowGenericControl allowGeneric)
   at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(String controlName, String mode, Object[] properties)
   at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(String controlName, String mode)
   at Sitecore.Web.UI.XmlControls.ControlFactory.GetControl(String controlName)
   at Sitecore.Shell.DefaultPage.OnInit(EventArgs e)
   at System.Web.UI.Control.InitRecursive(Control namingContainer)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

原来 AppPool 用户ApplicationPoolIdentity没有对 C:\Windows\Temp\ 目录的写入权限。

于 2014-10-31T15:31:13.377 回答
3

这篇文绝对解决了我们面临的问题。

我们有这段代码

System.Diagnostics.Process.Start(RetrievedURL);

它在按钮单击和打开网页的背景中生成 IE 进程(因为 IE 是网络服务器上的默认浏览器)。

这不是一件聪明的事情,但我们删除了该代码,它肯定会在后台停止 IE 进程。

感谢您的研究和这篇博文 Slobodan Stipic,又名 Slobo。

希望此解决方案将来对其他人有所帮助。

于 2013-03-26T10:50:30.867 回答
0

如果您使用的是虚拟机,请尝试重新启动它。

于 2015-12-19T13:24:38.813 回答
-1

尝试将 IIS 应用程序池标识设置为网络服务。确保 C:\Windows\Temp 在安全选项卡中具有网络服务用户并具有完全控制权

于 2018-10-08T19:52:26.353 回答