ADOConnection的问题(没有结束前,请帮忙提前!谢谢)(100分)

  • 主题发起人 主题发起人 cnbobo
  • 开始时间 开始时间
C

cnbobo

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.Button1Click(Sender: TObject);
begin
PromptDataSource(Handle, 'Provider=SQLOLEDB.1;Persist Security Info=False');
adoconnection1.Connected:=true;
label1.Caption:=adoconnection1.ConnectionString;
end;
1。弹出数据库链接属性窗口后,设好了服务器,用户名,数据库,测试也通过了。确定后
报错:不能用administrator用户登陆,我在属性窗口设的用户名是sa,为什么会用
administrator登陆???

2。label1.caption得不到adoconnection1.ConnectionString的值;

3。如何保存第一次的设置。不要用ini,我不会。最好是写注册表,稍微懂点。最好能给点源码
谢谢客位![:D][:D]
 
第一个问题有变化,我把adoconnection1的loginprompt设为true,弹出了登陆对话框。
用户名是空的没有sa,我在adoconnection1.ConnectionString属性窗口设好,在弹出
了登陆对话框用户名有sa。
 
老大,有没有搞错。loginprompt是数据库的用户名和密码。你的问题说清楚些。。。。
给点分鼓励先。。。
 
你应该把Loginprompt设为false,这样测试通过后,就不会弹出登录对话框了。
 
var
reg:TRegistry;
IniFile:TIniFile;
begin
//注册表操作,让服务自动启动
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
if not reg.KeyExists('SOFTWARE/YULINJL') then
begin
reg.CreateKey('SOFTWARE/YULINJL');
reg.OpenKey('SOFTWARE/YULINJL',true);
reg.WriteString('Company',''); //公司名称
reg.WriteInteger('Register',iRegister); //注册码,初始为1
reg.CloseKey;
end
else
begin //读取
reg.OpenKey('SOFTWARE/YULINJL',false);
iRegister:=reg.ReadInteger('Register'); //注册码
end;
reg.CloseKey;
reg.Free;
end;
 
在设adoconnection1.Connected:=true;前如何判断数据库已连接
 
procedure TForm1.Button1Click(Sender: TObject);
begin
// promptDataSource是函数,在连接页勾上允许保存密码
adoconnection1.connectionstring := PromptDataSource(Handle, 'Provider=SQLOLEDB.1;Persist Security Info=False');
adoconnection1.Connected:=true;
label1.Caption:=adoconnection1.ConnectionString;
end;

写注册表看看TRegistry对象。
 
正确的设置应该是下面的
Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=sa;Initial Catalog=his;Data Source=server
密码 登陆名 数据库名 服务器名
你可以把以上的值写到一个txt文件中,然后读取他
例如
var
myfile:textfile;
str:string;
begin
reset(myfile,'c:/log.txt');
read(myfile,str);
adoconnection1.ConnectionString:=str;
adoconnection1.Connected:=true;
close(myfile);
我直接在对话框上写的,你看那不对改一下,就可以用了
把配置文件写到c:/log.txt中,或别的目录中![:)][:)][:)][:)]


 
对了,我上面的ado是用sql2000连的,你可以把他改成odbc的很简单的![:)]
 
我已经用其它方式解决了,自已写了个登陆窗口,然后进行注册表读取。
但是我很想用PromptDataSource弹出的数据库连接属性窗口。设好一切后。按确定能够自
动保存,也就是第一次出现数据库连接属性窗口,已后就不出现了。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部