我在asp里createoject()一个activex,然后调用函数,只能第一次打开网页的时候调用正常!

碼上道 2007-08-08 05:12:39
我在asp里createoject()一个activex,然后调用函数,只能第一次打开网页的时候调用正常!当再刷新一下网页的时候就有错误了,奇怪了!
Set myob = CreateObject("Client.ClientCtrl.1")
rt = myob.Connect2Server("127.0.0.1",5000)
'rt = myob.test("127.0.0.1",34)
Set myob = nothing
上面是asp里面的代码
我当开网页,第一次打开的时候正常,再打开就不行了,出现以下提示:
Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft VBScript 运行时错误 错误 '800a01fb'

出现一个意外错误: 'myob.Connect2Server'

/localstart.asp,行5

当我重启后,第一次打开网页才正常!!请问是不是我的activex没有翻放的原因,还是什么原因!请高手指点啊
...全文
161 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒋晟 2007-08-09
  • 打赏
  • 举报
回复
::AfxSocketInit();
这个不要每次都调用把
一次就可以了
碼上道 2007-08-09
  • 打赏
  • 举报
回复
我调用其它的函数都没有问题,我发现m_clientSocket.Create();这句话导致有问题的
碼上道 2007-08-09
  • 打赏
  • 举报
回复
mfc可以支持的,我已经重载了IsInvokeAllowed函数!
蒋晟 2007-08-08
  • 打赏
  • 举报
回复
MFC做的控件在被容器激活之前默认不支持被自动化
youngwolf 2007-08-08
  • 打赏
  • 举报
回复
MFC做的控件,不能放在服务器端,比如asp或者asp.net,应该用ATL来做。
碼上道 2007-08-08
  • 打赏
  • 举报
回复
我调用的函数为下面的代码,有没有高手指点一下啊

BOOL CClientCtrl::Connect2Server(LPCTSTR lpServerAddress, short stPort)
{
// TODO: Add your dispatch handler code here
if(m_clientSocket)
m_clientSocket.Close();
::AfxSocketInit();
m_clientSocket.Create();
if(m_clientSocket.Connect(lpServerAddress,stPort)) //connect to server
{
m_clientSocket.m_bConnected = true;
MessageBox(_T("Connect ok!"));
}
else
AfxMessageBox(_T("Connect failed!"));
return TRUE;
}

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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