微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CompileAssemblyFromSource返回错误“编译表达式:无法打开c:\ Users \ *”,以读取'c:\ Users \ *不是有效的Win32资源文件

如何解决CompileAssemblyFromSource返回错误“编译表达式:无法打开c:\ Users \ *”,以读取'c:\ Users \ *不是有效的Win32资源文件

我的应用程序生成并编译代码运行时:

CompilerParameters m_cp = new CompilerParameters();
m_cp.ReferencedAssemblies.Add("system.dll");            
m_cp.GenerateExecutable = false;
m_cp.GenerateInMemory = true;
m_cp.CompilerOptions = "/optimize";
...
CompilerResults cr = new CSharpCodeProvider().CompileAssemblyFromSource(m_cp,code.ToString());
if (cr.Errors.HasErrors)
{
   //getting here with error:
   //"Compiling Expression: cannot open c:\Users\*" for reading 
   //'c:\Users\* is not a valid Win32 resource file
   // Example of file c:\Users\[User]\AppData\Local\Temp\1\faw31esr\CSC23CEA88A205E4588B799FD8B4456176B.TMP
}

仅某些用户会遇到问题,但是他们的访问是可以的(访问与无故障用户相同)。例如。有问题的用户可以进入显示的目录并删除文件

解决方法

其中一种漏洞管理产品阻止了文件访问并导致错误。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。