做梦遇见下大雨:asp.net调试错误解决方法收集(2)

来源:百度文库 编辑:中财网 时间:2024/04/29 20:56:27
12“/WebApplication1”应用程序中的服务器错误。
--------------------------------------------------------------------------------对路径“D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary asp.net Files\webapplication180d7be\b46d84c0”的访问被拒绝。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.UnauthorizedAccessException: 对路径“D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary asp.net Files\webapplication180d7be\b46d84c0”的访问被拒绝。 asp.net 未被授权访问所请求的资源。请考虑授予 asp.net 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。 若要授予 asp.net 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 asp.net 帐户,选中所需访问权限对应的框。 调试权限不够
Try:
根据设计,ASP.NET 要求对根 Web 站点上或任何虚拟目录上的 ASPNET 帐户(Aspnet_wp.exe 进程帐户)具有读取、执行和列出访问权限。这是必需的,以便 ASP.NET 可以访问内容文件并可以监视文件更改。
解决方案
若要为根 Web 站点上或任何虚拟目录上的 ASPNET 帐户添加读取、执行和列出访问权限,请执行以下步骤:
在 Windows 资源管理器中,浏览到包含根 Web 站点(默认情况下是 C:\Inetpub\Wwwroot)或虚拟目录的文件夹。
右键单击该文件夹,然后单击属性。
在安全性选项卡上,单击添加。
键入计算机名\ASPNET(例如,在名为 Webdev 的计算机上,键入 Webdev\ASPNET),然后单击确定。
允许以下 ASPNET 帐户权限:
读取并执行
列出文件夹内容
读取 单击确定以关闭属性对话框并保存所做更改。
备注:如果 Everyone 组或用户组已具有对根 Web 站点或虚拟目录的读取访问权限,则无需执行这些步骤。
-------
添加 IUSR_YouComputerName 和ASPNET 这两个用户对 C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\webapplication1dd84b00\b065eec7目录的访问权限,设置为完全访问,
--------
将 asp.net 用户(具体是什么记不太清楚了:< 可以到“安全性--用户/用户组”中查看)对目录
   C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files
的权限改为可写或更高即可。 13System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.UnauthorizedAccessException: 拒绝访问。 --- 内部异常堆栈跟踪的结尾 --- at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) at System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters) at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args) at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args) at aspnetc.pubFunction.IISManager.Create(VirtualDirectory newdir) in f:\ziliao1\aspc\pubfunction\iismanager.cs:line 132 如果是在asp.net 下使用的话,要记得在  中添加
否则就会出现 “异常详细信息: System.UnauthorizedAccessException: 拒绝访问“。 iis访问站点时出现输入用户名和密码 1.iis->站点->属性->目录安全性->身份验证和访问控制->启用匿名访问
2.不知你有没有添加这"IUSR_yourname"INTERNET 来宾账户!如没有添加就应该是这个问题所引起.
(在"默认网站---属性-----目录安全性-----编辑------浏览-----高级-----立即查找"即可找到本账户,双击添加即可)
3.把你网站文件所在的目录的,全权改成 everyone 再试一下先. 楼上们 所说的一般情况下默认是不会错的.
4把iis目录所在的文件夹权限加iuser_机器名 "Visual Studio .NET已检测到指定的Web服务器运行的不是ASP.NET 1.1 版..."的解决办法 选择自 great_domino 的 Blog
关键字 "Visual Studio .NET已检测到指定的Web服务器运行的不是ASP.NET 1.1 版..."的解决办法
出处 昨天同事MM在调试一台装有.NET WEB服务器又出现了"Visual Studio .NET已检测到指定的Web服务器运行的不是ASP.NET 1.1 版.."的错误,叫我去帮忙搞,搞了半天,才搞定,到底是什么问题原来她将IIS中"默认web站点"删除,自己新建了一个站点,运行正常,就是无法编译,新建也不成,出现非1.1版本错误,以前出现错误是因为,服务器使用了固定IP,而管理员将属性中的IP地址为指定的ip地址!现在也很有必要做个总结!步骤尝试如下:1.当然先确定一下,是否真的装了1.1的版本,查看路径 C:\WINNT\Microsoft.NET\Framework\v1.1.43222.也是很多人都知道,重新安装 aspnet_regiis ,怎么安装,就不多说了,网上很多!3.重启IIS,重新启动ASP.NET服务程序4.如果你的Web服务器使用了固定IP:确定你的"Internet信息服务"中使用的是"默认web站点"并且其属性中的IP地址为"(全部未分配)",而不是你己指定的ip地址。可以修改"默认web站点"的名字,但不要删除,一旦删除,只要在新建的时候,名称严格为"默认web站点"也可以恢复5.如果你的IE使用了代理的话,把 Bypass Proxy Server for local adresses勾上6.如果你本身已经有个web站点,请把它卸载掉,不用重新安装vs.net,只要重新安装下iis也可以。7.如果还是不行,那可真没什么办法了,那就重装IIS,FRAMWORK,.NET,操作系统吧最后说一个安全问题,尽量不要把IIS指向默认路径C:\Inetpub\wwwroot 这个路径很容易受攻击,最好重新指向一个新的路径,然后把wwwroot文件夹删除掉,需要用户上传文件的,千万要阻止上传".HTA"文件,做好访问网站的权限,屏蔽执行HTA文件,做好数据库备份工作!又是工作中的一点经验,供大家参考,少走弯路!
确实是Bug 1.你的Web服务器使用了固定IP:确定你的"Internet信息服务"中使用的是"默认web站点"并且其属性中的IP地址为"(全部未分配)",而不是你己指定的ip地址。然后在回到VS.NET中重试,或许可以解决。
2.以上方法不能解决问题时,考虑MSDN中的解决办法,如下:
Visual Studio .NET 无法确定在 Web 服务器计算机上运行的是否为 ASP.NET 1.1 版。该错误可能在几种不同情况下发生。请检查是否属于以下情况:
a, 确保 .NET Framework 1.1 版安装在 Web 服务器计算机上。有关详细信息,请参见 Visual Studio .NET 软件要求。
b, 如果 ASP.NET 已安装在 Web 服务器计算机上,但仍然遇到此错误,则可能是配置问题。为了纠正有问题的安装或配置,可以使用名为 aspnet_regiis 的 ASP.NET 实用工具。在类似如下所示的路径中可以找到此命令行实用工具:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.nnnn\
其中 nnnn 表示四位内部版本号。在最高版本号下查找。使用 /i 开关运行该实用工具:
aspnet_regiis /i
提示 您可以从命令的正确目录中直接打开该命令窗口。从 Windows 的"开始"菜单,指向"程序"、"Visual Studio .NET 2003"、"Visual Studio .NET 工具",然后选择"Visual Studio .NET 命令提示"。在窗口打开后,键入 aspnet_regiis /i。
不需要吧,在程序的vs.net的vs.net tool 的 vs.net command prompt下
输入:
aspnet_regiis -r 问题就可以解决了。
仔细的看看 aspnet_regiis 的参数的意义
查询参数 aspnet_regiis /all
会列出所有的参数
---------------------------------------------
1、当站点主目录没有创建应用程序:
通过FP扩展+虚拟目录的方式来建立WEBAPP,步骤如下:
(1)、右击站点---所有任务--配置服务器扩展
(2)、建立虚拟目录***,并使其配置应用程序
(3)、在VS中建立WEB项目,名称也为***
(4)、通过通过FP扩展来建立WEB
2、当站点主目录创建应用程序:
第一种方法--FP扩展:
(1)、右击站点---所有任务--配置服务器扩展
(2)、在VS中建立WEB项目,名称自己随便定
(3)、通过通过FP扩展来建立WEB
第二种方法--WEB共享:
(1)在IIS中将IP地址改为全部未分配
(2)将地址改为127.0.0.1或LOCALHOST
3、还不能建立时请试用下列方法:
(1)“站点”---右键---“属性”---“所有任务”---“重新计算 Web 上的超链接”
      然后在vs.net下通过frontpage服务器扩展创建 
   (2)指示要通过文件共享直接访问 Web 服务器上的项目文件;不需要在该服务器上安装 FrontPage 服务器扩展。
     安装 Visual Studio .NET 时,将创建一个“VS Developers”(VS 开发人员)用户组,并授予该用户组对 inetpub\wwwroot 文件夹的读/写权限。想使用计算机上的文件共享创建 Web 项目的任何用户都需要添加到“VS Developers”(VS 开发人员)用户组中。新建的“VS Developers”(VS 开发人员)组没有任何成员,所以,即使是安装 Visual Studio 的用户,也必须手动将自己添加到这个组中。
如果不希望将 Visual Studio 安装到服务器上,可以通过 Visual Studio 安装程序仅安装服务器组件,以创建“VS Developers”(VS 开发人员)组。
   (3)win2003下:
在VS.NET中,为了测试URL和UNC, VS.NET会在目录下面生成一个.tmp文件,然后通过HTTP对该文件发出请求。但是在IIS 6中,出于安全考虑,tmp文件没有注册,默认情况下,会被block然后产生HTTP 404错误。
解决这个问题,请您参阅下面的方法:
1。打开IIS管理器。
2。右键点击"Default Web Site"并选择Properties.
3。 点击"Http Header".
4。 点击"MIME Types".
5。 点击“New”。
6。 在Extension中,输入".tmp". (不需要引号)
7。 在MIME Type中,输入 "Temp". (不需要引号)
还有一种解决方法,您可以使用下面的命令行:
%systemdrive%\inetpub\adminscripts\adsutil.vbs set w3svc/1/root/MimeMap .tmp,temp
在创建Web Application时,VS.Net需要在创建路径下创建后缀名为.tmp的临时文件。
当VS.Net创建好项目之后,就会以HTTP的方式向Web文件夹寻求项目文件,同时也寻求临时文件。由于windows2003在某些安装步骤下的IIS没有把.tmp文件设置为MIME类型,所以IIS向VS.Net返回了未知文件类型的错误,即找不到文件。所以VS.Net认为你的IIS路径设置不对。  未指定的错误
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Runtime.InteropServices.COMException: 未指定的错误  试图运行项目时出错:无法在 WEB 服务器上启动调试。您没有调试该服务器的权限。
验证您是服务器上“Debugger Users”组的成员。1.作为 Administrator 登录。
 
2.运行 Administrator tools 中的 Computer management。
 
3.选择 Local users and groups\groups 节点。
 
4.双击右边窗格中的 Debugger Users 组。
 
5.单击 Debugger users properties 对话框中的 Add 按钮。
 
6. 键入用户帐户并单击 OK。  设备未就绪。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.IO.IOException: 设备未就绪。posted on 2006-03-23 11:15 DotNet菜园 阅读(1843) 评论(1)  编辑 收藏 引用 收藏至365Key 所属分类: AspNet
 Feedback
private void PrepareConnection()
{
string ConnStr=System.Configuration.ConfigurationSettings.AppSettings["ConnectionSqlServer"];
connection=new SqlConnection(ConnStr);
string strSql="select * from Questions";
command = connection.CreateCommand();
command.CommandText= strSql;
command.CommandType=CommandType.Text;
adapter= new SqlDataAdapter();
adapter.SelectCommand = command;
commandBuilder = new SqlCommandBuilder(adapter);
adapter.UpdateCommand=commandBuilder.GetUpdateCommand();
adapter.DeleteCommand=commandBuilder.GetDeleteCommand();
adapter.InsertCommand=commandBuilder.GetInsertCommand();
} 为什么出现: 对于不返回任何键列信息的 SelectCommand 不支持 UpdateCommand 的动态 SQL 生成。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: 对于不返回任何键列信息的 SelectCommand 不支持 UpdateCommand 的动态 SQL 生成。 源错误:
行 39: adapter.SelectCommand = command;
行 40: commandBuilder = new SqlCommandBuilder(adapter);
行 41: adapter.UpdateCommand=commandBuilder.GetUpdateCommand();
行 42: adapter.DeleteCommand=commandBuilder.GetDeleteCommand();    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zsczyhua/archive/2008/02/19/2104870.aspx