由于问题很急,希望大虾们多给点意见。在线等,解决就给分!!!
环境:vc6.0+mysql 用c API连接mysql;
问题描述:创建的ATL COM组件,主要做一些数据库操作。COM组件被php调用显示返回值的。
现在问题是,每次在应用服务器把com组件生成的dll注册后,只能调用一次,第二次就显示页面无法连接。 重起后又能连接一次。这是为什么?是不是php调用的libmysql.dll和com组件调用的libmysql.dll有冲突? 还是其它原因。ps:源代码中连接多次数据库,如:mysql_init(NULL);
mysql_real_connect(mysql,"","","","",3306,NULL,0))
char* sql = "select count(uid) from product_sponsor where s='2'";
int rc = mysql_real_query
得到结果判断 if(结果>0)
{
mysql_init(NULL);
mysql_real_connect(mysql,"","","","",3306,NULL,0))
char* sql = "select count(uid) from product_sponsor where s='3'";
int rc = mysql_real_query
}如果不重新连接就不能执行mysql_real_query查询。这个又是为什么? 我在普通mfc exe工程都可以的。
环境:vc6.0+mysql 用c API连接mysql;
问题描述:创建的ATL COM组件,主要做一些数据库操作。COM组件被php调用显示返回值的。
现在问题是,每次在应用服务器把com组件生成的dll注册后,只能调用一次,第二次就显示页面无法连接。 重起后又能连接一次。这是为什么?是不是php调用的libmysql.dll和com组件调用的libmysql.dll有冲突? 还是其它原因。ps:源代码中连接多次数据库,如:mysql_init(NULL);
mysql_real_connect(mysql,"","","","",3306,NULL,0))
char* sql = "select count(uid) from product_sponsor where s='2'";
int rc = mysql_real_query
得到结果判断 if(结果>0)
{
mysql_init(NULL);
mysql_real_connect(mysql,"","","","",3306,NULL,0))
char* sql = "select count(uid) from product_sponsor where s='3'";
int rc = mysql_real_query
}如果不重新连接就不能执行mysql_real_query查询。这个又是为什么? 我在普通mfc exe工程都可以的。
解决方案 »
- VC如何获取显示器信息
- 怎样让电脑发出“滴”的响声
- 为何使用CFileDialog 会造成数据库打开失败
- 在vc/Mfc中#include<iostream.h>还有用不?
- CreateThread的问题
- 如何理解COM的“和语言无关性”?
- 那为大哥能送我一个用VB,VC做个“老虎机”?(急!急!急)高手请进!
- 我做了个小组件,实现了IPersistFile接口
- 请推荐:1、学vc的经典书 2、学习编程算法的经典书(印刷版)!!!!!!!!!!!!!!重金酬谢!!
- 都说可参看MFC源码,但是哪儿有呢?
- 问一个下拉列表框 CComboBox 里 图片 项目的问题
- ACTIVEX上用新线程调用CSOCKET.CREATE()函数会出错 AfxSocketInit(),和头文件#include <afxsock.h>都加了,就是不行,请大家帮忙研究研究
还有一种可能性是你的组件是被CGI调用的,而每个CGI都是一个独立的进程,所以即使同时存在多个请求同时产生了多个组件实例,它们之间也无法共享数据。