对路径“C:\WINNT\system32\email.htm”的访问被拒绝。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.UnauthorizedAccessException: 对路径“C:\WINNT\system32\email.htm”的访问被拒绝。 ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 <identity impersonate="true"/> 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。 若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  堆栈跟踪: 
[UnauthorizedAccessException: 对路径“C:\WINNT\system32\email.htm”的访问被拒绝。]
   System.IO.__Error.WinIOError(Int32 errorCode, String str) +393
   System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean useAsync, String msgPath, Boolean bFromProxy) +888
   System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize) +44
   System.IO.StreamWriter.CreateFile(String path, Boolean append) +55
   System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize) +49
   System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding) +20
   Qiying.Job.Web.Person.MyCenter.Resume.SendResumeMe.Send_Click(Object sender, EventArgs e) in C:\Inetpub\wwwroot\020job\person\mycenter\resume\sendresumeme.aspx.cs:91
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
   System.Web.UI.Page.ProcessRequestMain() +1292
--------------------------------------------------------------------
 
我的sendresumeme.aspx.cs:文件中有个函数是把aspx生成htm
通过htm发email送给用户,sendresumeme.aspx.csstring StrUrl = "我的url"
string lcHtml="";
HttpWebRequest loHttp ;
loHttp =(HttpWebRequest) WebRequest.Create(StrUrl);//你的url?参数
loHttp.Timeout = 50000;   
HttpWebResponse loWebResponse = (HttpWebResponse) loHttp.GetResponse();
Encoding enc = Encoding.GetEncoding("GB2312"); StreamReader loResponseStream = new StreamReader(loWebResponse.GetResponseStream(),enc);
lcHtml = loResponseStream.ReadToEnd();
loWebResponse.Close();
loResponseStream.Close();//写文件操作
//这个就是我写的写入lchtml,之后只要把lcHtml发给用户就行了,
StreamWriter  objWriter=new StreamWriter("email.htm",true,System.Text.Encoding.GetEncoding("GB2312"));
objWriter.WriteLine(lcHtml); 
objWriter.Close();//发送email-----------------------------------------------------------------------------
但是我的虚拟提供商不给我改(我是在E路无忧注册的)
他们说这不是服务器的问题,
大家说说因该怎么改,
我把这个网页发给他们看看,

解决方案 »

  1.   

    可能是IIS的权限问题,或是你写了一些IIS不给权限的代码,,
      

  2.   

    权限的问题。asp.net对此目录没有访问权限。加上就可以了。
      

  3.   

    C:\WINNT\system32\email.htm,没有ASP.NET的访问权限,添加上权限就可以了!
      

  4.   

    权限的问题。asp.net对此目录没有访问权限。加上就可以了。
      

  5.   

    很明显权限不够。
    你的虚拟主机提供商加上就是了win 2003加添加用户NETWORK SERVICE,并赋予其“完全控制”的权限。
      

  6.   

    若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。说了很明白嘛,就是权限不够
      

  7.   

    我明白了
    我的虚拟主机系统是win 2003怎么办?
      

  8.   

    说的已经很明显了的给asp.net权限
    选择“属性”,然后选择“安全”选项卡
    win 2003 加添加用户NETWORK SERVICE,
    你把asp.net也添上,
      

  9.   

    权限了,
    还有你有文件为什么要放在C:\WINNT\system32  下啊,就放在自己的目录不行吗,在系统目录人家当然不能随便给你写的权限了
      

  10.   

    对c:\winnt\访问?你的服务商肯定不会给你。
    该你的代码吧StreamWriter  objWriter=new StreamWriter(server.mappath("email.htm"),true,System.Text.Encoding.GetEncoding("GB2312"));
      

  11.   

    我也不知道,怎么就到C:\WINNT\system32下面了
    他们给我设的,
    我想只要给我的文件夹asp.net
    就行了吧
      

  12.   

    email.htm
    把路径改了?
    StreamWriter  objWriter=new StreamWriter(server.mappath("email.htm"),true,System.Text.Encoding.GetEncoding("GB2312"));
    我的这一句把email.htm写到那了我也不知道?
      

  13.   

    @"d:\test\record.txt"
    path = @"d:\temp\test.asp";
      

  14.   

    StreamWriter  objWriter=new StreamWriter(server.mappath("\\") + "email.htm",true,System.Text.Encoding.GetEncoding("GB2312"));