80求救,就剩这点分啦,高手请进来看看,救命!

bottoline 2007-04-16 10:50:40
我的asp.net程序在Visual Web Developer 2005 Express Edition下编译后用系统自带的Asp.net Development Server下调试运行正常,但是在IIS 5.1下就出错,捕获的错误提示为“无效的过程调用或参数”。
系统说明:
开发平台是:winxp sp2 + Sql 2000 + Visual 2005 + IIS 5.1;
在asp.net项目中调用原系统VB编译的一个dll文件,函数名为FindMeByUserName(ByVal strUserName As String);具体代码如下:
//---------------------------------------------------------
Public Function FindMeByUserName(ByVal strUserName As String)

On Err GoTo Err_FindMeByUserName

objErr.ErrorLog "Cls_用户", "FindMeByUserName", "请求开始", "Null"

Dim rs As New ADODB.Recordset
Dim strSql As String

strSql = "SELECT * FROM TB_用户 WHERE 用户名=" & "'" & strUserName & "'"
''' & " AND 删除标志<>1 "
rs.Open strSql, g.Cn, adOpenKeyset, adLockOptimistic '执行
mCopyProperties rs

Exit Function

Err_FindMeByUserName:
objErr.ErrorLog "Cls_用户", "FindMeByUserName", "内部错误:", Err.Description

End Function

//---------------------------------------------------------
在asp.net(C#)下的调用:
//--------------------------------------------------------------- webyingping.Cls_Main objMain = new webyingping.Cls_Main();
YingPing.Cls_用户 obj用户 = new YingPing.Cls_用户();

protected void BtnSubmit_Click(object sender, EventArgs e)
{
string name = this.txtUsername.Text.Trim();
string psw = this.txtPassword.Text.Trim();
try
{
obj用户.FindMeByUserName( name);
}
catch(Exception se)
{
objMain.ShowMessage(se.Message,Response);
objMain.ShowMessage("错误:"+name, Response);
}

 //---------------------------------------------------------------

在这个地址下调试是无错误的,http://localhost:1055/WebYingPingV1.2/login.aspx
但在,http://192.168.0.100/web/login.aspx下出现错误:“无效的过程调用或参数。”以及“连接无法用于执行此操作,在此上下文中它可能已被关闭或无效。”是为什么?已经郁闷了好几天了。
那位能给出个解决办法来,在此先谢谢了。


...全文
271 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
bottoline 2007-04-16
  • 打赏
  • 举报
回复
我要抓狂了。
bottoline 2007-04-16
  • 打赏
  • 举报
回复
问题:
1,hertcloud,“http://localhost:1055/WebYingPingV1.2/login.aspx”这个是VWD运行时产生的一个访问地址,在它下面运行一切正常。但在IIS下运行就会出错。另,我没有访问任何文件,现在就一个简单的调用DLL函数,也出错。真搞不明白了。
2,gezichong,数据库连接是正确的。
3,seesea125,在DLL中数据库连接一直是保持连接状态的。
seesea125 2007-04-16
  • 打赏
  • 举报
回复
以及“连接无法用于执行此操作,在此上下文中它可能已被关闭或无效。”是因为你的连接池已经满了,你打开操作后要关闭他rs.close,不然一会就满了,就提示这个问题
gezichong 2007-04-16
  • 打赏
  • 举报
回复
是不是你的数据库连接出错了??....
andyhooo 2007-04-16
  • 打赏
  • 举报
回复
帮顶
hertcloud 2007-04-16
  • 打赏
  • 举报
回复
IIS 5.1
只能建立一个地址的网站 楼主
http://localhost:1055/WebYingPingV1.2/login.aspx
这个地址 到 http://192.168.0.100/web/login.aspx
是将默认网站地址和端口彻底改变了
看看是不是是你的某些函数里面有访问文件 这个路径你使用的相对或绝对路径不对着成的呢
bottoline 2007-04-16
  • 打赏
  • 举报
回复
自己顶起来。

1,babyrockxray,我现在用的是混合验证模式,sa登录。
2,fxqyyzg,难道意味着要安装win2003 + iis 6吗?我现在的平台不可以调试是吗?


fxqyyzg 2007-04-16
  • 打赏
  • 举报
回复
升级iis
bomberwu 2007-04-16
  • 打赏
  • 举报
回复
为什么要用Windows验证呢?
用sa登录,
babyrockxray 2007-04-16
  • 打赏
  • 举报
回复
windows验证?
改成sa登录试试
wangkun9999 2007-04-16
  • 打赏
  • 举报
回复
非托管代码,先得转换下吧:
tlbimp webyingping.tlb /out:webyingping.dll

http://blog.csdn.net/gasx/archive/2006/06/25/834036.aspx
bottoline 2007-04-16
  • 打赏
  • 举报
回复
在线等,那位能给个正解。

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧