方法一:
修改 machine.config 文件,将 <processmodel 部分中的 username 改成 system.方法二:
在 my documents的属性设置页面的安全设置里,添加 aspnet用户,允许其读取.

解决方案 »

  1.   

    感谢您使用微软产品。首先,不建议您把ASPNET的工作进程调整为System, 这样可能会造成潜在的安全问题。根据错误信息,感觉您的代码在服务器端没有写的权限。应该跟浏览器端没有关系。您是要从浏览器端上传一个客户端的文件到服务器端么?如果是这样,您的代码中的FileStream应该是对应于服务器端的Stream对象,而不是浏览器端的。关于如何上传文件,请您参阅下面的帖子:
     
    http://www.csdn.net/expert/topic/945/945606.xml?temp=.7109644同时,关于ASP.NET中的安全性问题,建议您参阅下面的文章:http://www.microsoft.com/china/community/article.asp?oBODY=TechZone/TechArticle/TechDoc/NETcertification&oXSLT=TechZone/TechArticle/TechContent如果您需要改变您的ASP.NET中的security context, 建议您使用impersonate, 您可以参阅下面的微软知识库文章:Q306158 INFO: Implementing Impersonation in an ASP.NET Application
    http://support.microsoft.com/support/kb/articles/q306/1/58.asp希望对您有所帮助。 
     
    -微软全球技术中心  -zgh
     
    本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
    为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
      

  2.   

    请问哪里有machine.config文件?
    我只看到web.config文件
      

  3.   

    Spring_OK
    你的第一种方法我觉得影响了安全性(就像zgh_ms所说得那样)
    第二种方法我试了,在本机上可以了,但是别人在其他机子上调用我的页面还是不行(不能将他的“我的文档”中的文件上传并保存到服务器)
    我知道如果在他机子上也用第二种方法,就可以的,但是这太麻烦了请问:有没有其他的方法
    使我的页面能把“我的文档”中的文件读取到服务器
    而不修改客户端的设置?谢谢!
      

  4.   

    问题已解决,改成以下这样就ok了
    谢谢各位了。结贴
    Dim stmFile As System.IO.Stream
    Dim abytFile() As BytestmFile = fUploaded.InputStream
    ReDim abytFile(stmFile.Length)

    stmFile.Read(abytFile, 0, stmFile.Length)