问题描述如下:
1、我有WebServices类型是ISAP
2、我在WebServices的数据模块中加入一个ADOConnection控件,并在构造函数中连接这个ADOConnection到SQL服务器,服务器信息保存在一个ini文件中
3、我把这个动态库,和保存服务器信息的ini文件拷到虚目录中
4、结果前端连接时出现错误,如果在设计时直接用ADOConnection连接数据库则不会出错代码如下:
数据模块的构造函数:
__fastcall TWebDataModule::TWebDataModule(TComponent* Owner) : TSoapDataModule(Owner)
{
int ConnectCount=0;
AnsiString IStrCount="";
try
{
FADOConnection=new TADOConnection(Owner);
FADOConnection->Close();
FADOConnection->ConnectionString=GetConnectionStr();
FADOConnection->LoginPrompt=false;
FADOConnection->Open(); ADOQuery1->Connection=FADOConnection;
}catch(...)
{
}
}//从ini文件中读SQL配置的函数
AnsiString TWebDataModule::GetConnectionStr()
{
AnsiString r="", IFileName;
IFileName=ConfigFileName;
TIniFile *pIniFile;
pIniFile = new TIniFile("SQLConfig.ini");
if (pIniFile!=NULL)
{
r="Provider=SQLOLEDB.1;Password=";
r+=pIniFile->ReadString("DataBase","PassWord","")+";";
r+="Persist Security Info=false;User ID=";
r+=pIniFile->ReadString("DataBase","UseName","")+";";
r+="Initial Catalog=";
r+=pIniFile->ReadString("DataBase","DatabaseName","")+";";
r+="Data Source="+pIniFile->ReadString("DataBase","DataSource","");
}
delete pIniFile;
return r;
}
1、我有WebServices类型是ISAP
2、我在WebServices的数据模块中加入一个ADOConnection控件,并在构造函数中连接这个ADOConnection到SQL服务器,服务器信息保存在一个ini文件中
3、我把这个动态库,和保存服务器信息的ini文件拷到虚目录中
4、结果前端连接时出现错误,如果在设计时直接用ADOConnection连接数据库则不会出错代码如下:
数据模块的构造函数:
__fastcall TWebDataModule::TWebDataModule(TComponent* Owner) : TSoapDataModule(Owner)
{
int ConnectCount=0;
AnsiString IStrCount="";
try
{
FADOConnection=new TADOConnection(Owner);
FADOConnection->Close();
FADOConnection->ConnectionString=GetConnectionStr();
FADOConnection->LoginPrompt=false;
FADOConnection->Open(); ADOQuery1->Connection=FADOConnection;
}catch(...)
{
}
}//从ini文件中读SQL配置的函数
AnsiString TWebDataModule::GetConnectionStr()
{
AnsiString r="", IFileName;
IFileName=ConfigFileName;
TIniFile *pIniFile;
pIniFile = new TIniFile("SQLConfig.ini");
if (pIniFile!=NULL)
{
r="Provider=SQLOLEDB.1;Password=";
r+=pIniFile->ReadString("DataBase","PassWord","")+";";
r+="Persist Security Info=false;User ID=";
r+=pIniFile->ReadString("DataBase","UseName","")+";";
r+="Initial Catalog=";
r+=pIniFile->ReadString("DataBase","DatabaseName","")+";";
r+="Data Source="+pIniFile->ReadString("DataBase","DataSource","");
}
delete pIniFile;
return r;
}
解决方案 »
- 那位老大能把这段C代码改为Delphi
- 修改表里datetime项的问题!
- 一个TXT文件中有分割符,想根据分割符取数出来导入到SQLServer 2000中!!
- 用SocketConnection做三层,在服务端如何得到客户的机器名或用户名
- 如何读取驱动器的盘符
- 谁会做假的进度条现实窗口?
- 菜鸟提问
- 请问怎么样用"PageDown"按键实现"Alt+Tab"键的功能?
- 怎麼對計算字段求和??? 特急,哪位大哥幫幫我..........
- 请教一个关于*.ini文件的问题!
- createtable建表问题,加索引就出错,大家帮忙,解决马上结贴,在线等
- 为什么从SQL6.5升级到2000的数据库补支持下面这个语句
在服务器上应该可以指定目录读取'SQLConfig.ini';
楼主可以一步一步确定错误的根源:
1、Ini读取的路径要对
2、检查DLL传出的参数,可以在页面上显示出来,便于观察