可能是IIS版本的原因吧,我在XP,IIS5.1下调试,一切正常,可是在2003的6.0下调试,就出错了,但是它不显示是什么错误,而是直接把应用程序池apppool停了,看了事件查看器,没有DCOM权限问题,只是提示应用程序池被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误。没有regsvr32的时候,还提示是组件的问题,注册了dll后,反而什么提示都没有了,直接停了应用程序池,显示service unvalueable。真是怪了。各位有没有碰到这样的情况?我都郁闷了一晚上了。就是简单的hello world的组件,按照http://yulm2005.blog.163.com/blog/static/2385019720083491430361/
教程来做的。

解决方案 »

  1.   

    用调试器连接到IIS进程再发请求,看看调试器里面有啥未捕获异常。
      

  2.   

    说明一下,事件查看器里面显示停止应用程序池是在警告
    为应用程序池 提供服务的进程意外终止。进程 ID 是 '2432'。进程退出代码是 '0xeedfade'。
    后才有的。
    为什么在XP,IIS5里面完全正常运行的ASP组件,在WIN2003,IIS6里面就会进程意外终止呀?[size=4px]环贸证券[/size]
      

  3.   

    ASP服务器发现运行时错误:
    错 误 码:0x8000FFFF
    错误代码:Obj.DoSleep(1)
    错误描述:
    文件名称:d:\asp\test.asp
    所在行号:9
    附代码如下
    <%
    ' On Error Resume Next
    Set Obj = Server.CreateObject("sleep.mysleep")
    If Err.Number <> 0 Then
    Response.Write Err.Number
    Response.Write "sleep组件未注册!"
    Response.End
    End If
    Obj.DoSleep(1)
    Set Obj = nothing
    %>
      

  4.   

    在IIS的Web服务扩展中把ISAPI打开
      

  5.   

    最好要把regsrv32 "XXX.dll" 的文件放到System32下,否则会由于权限原因,调用失败!
    你没事可以看看人家木马的做法嘛,一般不都是这样啊