【发布时间】:2013-05-24 20:44:58
【问题描述】:
代码:
using (var codeProvider = new CSharpCodeProvider())
{
var compilerParameter = new CompilerParameters(
_assemblies, assemblyName, false)
{
GenerateInMemory = true,
CompilerOptions = "/optimize"
};
var compilerResults = codeProvider.CompileAssemblyFromDom(
compilerParameter, templateResults.Select(r => r.GeneratedCode)
.ToArray());
}
它抛出异常:CS1567 生成 Win32 资源时出错:访问被拒绝。
什么意思?
【问题讨论】:
-
运行 procmon 并过滤错误,以便查看被拒绝的内容。
-
知道了。 CreateFile C:\Windows\SysWOW64\inetsrv\CSCA77DD801384044AFAFB245A7DED3D4DB.TMP 访问被拒绝
-
但是仍然不知道为什么它使用这个位置 C:\Windows\SysWOW64\inetsrv\ ?
-
让它工作!详情见答案..
标签: c# .net compiler-construction compilation code-generation