DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: qwe0987654321
今日帖子: 5
在线用户: 15
导航: 论坛 -> 数据库专区 斑竹:liumazi,waterstone  
作者:
男 windows.net (windows.net) ★☆☆☆☆ -
盒子活跃会员
2003/10/28 16:48:08
标题:
请教! 浏览:2039
加入我的收藏
楼主: 下面的代码是用来在登陆的时候检查有没有配置文件,没有就创建my.ini的配置文件,然后对my.ini中的server进行检测,为空就需要设置数据库连接,然后进行下面的adodm的数据库连接
procedure TFrm_login.FormCreate(Sender: TObject);
var
sqlserver:string;
begin
if not FileExists(ExtractFilePath(paramstr(0))+‘my.ini‘) then //判断hnzg_sp.ini文件有没有,(主要的功能是第一次运行的判断,用来连接数据库)
begin
filename:=ExtractFilePath(paramstr(0))+‘my.ini‘; //设置ini配置文件的名称
myinifile :=TIniFile.Create(filename); //连接ini文件
myinifile.WriteString(‘config‘,‘server‘,‘‘); //写入选项名称
myinifile.WriteString(‘config‘,‘user‘,‘‘);
myinifile.WriteString(‘config‘,‘password‘,‘‘);
myinifile.WriteString(‘config‘,‘database‘,‘‘);
myinifile.Free ;
end
else
begin
filename:=ExtractFilePath(paramstr(0))+‘my.ini‘; //指定ini文件的位置和文件名
myinifile :=TIniFile.Create(filename); //连接配置文件
sqlserver:=myinifile.ReadString(‘config‘,‘server‘,‘‘); //取出server的值
end;
if sqlserver=‘‘ then //如果为空就弹出设置数据的窗口sqlsetup
begin
sqlsetup.showmodal; //显示数据库设置窗口
frm_login.ModalResult :=0; //返回login窗口的值为0,不让登陆!
end
else
begin

程序执行到下面的任何一句都出错!
adodm.Tuser.TableName:=‘tbl_user‘;
adodm.Tuser.Active :=true;
username.ListSource :=adodm.dsuser ;
username.KeyField :=adodm.Tuser.FieldValues[‘username‘];
end;

end;
----------------------------------------------
| | 凡事无绝对 | | 不须太强求 | |
作者:
男 cnxxx (我本高手) ★☆☆☆☆ -
盒子活跃会员
2003/10/28 16:57:39
1楼: adodm是什么东西,错误抓图出来看看或者题是什么错误嘛,我懒得看这么多代码。
----------------------------------------------
黑夜中,一眼望去,我就是高手。
作者:
男 windows.net (windows.net) ★☆☆☆☆ -
盒子活跃会员
2003/10/28 17:04:49
2楼: 错误信息见附件,adodm是数据模块,Tuser是ADoTable
此帖子包含附件:
GIF 图像
大小:8.3K
----------------------------------------------
| | 凡事无绝对 | | 不须太强求 | |
作者:
男 windows.net (windows.net) ★☆☆☆☆ -
盒子活跃会员
2003/10/31 1:29:03
3楼: 前天已经找到答案了
1不能放在formcreate中,放在formshow中就可以了
2,username.KeyField :=adodm.Tuser.FieldValues[‘username‘];
应改为
username.KeyField :=adodm.Tuser.Fields.fields[0].fullname;
----------------------------------------------
| | 凡事无绝对 | | 不须太强求 | |
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行82.03125毫秒 RSS