就是给连接库赋值后让链接库去存数据库
解决方案 »
- fastreport 分组问题
- InterBase 的数据库,创建视图出错
- 怎么在Activex里面声明一个方法,然后在网页页面调用。帮帮小弟
- 判断图像是否歪斜?急!
- 请各位大侠提供几个帮助制作软件!
- 用intraweb编写了一套程序,在运行中如何退出并关闭IE窗口?
- delphi做的dll,使用了第三方控件,调用时出错,怎么办?
- 请问如何将flash动态图片放入delphi的form中?
- 怎么辨别EOleException异常的类型?who can help me!!!!!!!
- 怎么在客户端发送一个请求,通过服务器程序响应返回一个记录集?
- 数据库备份恢复的问题
- DHTMLEDIT.OCX或相关问题。达淫乱入!100分!!
delphi里怎么做异型窗体和空间呀???
————————————————————————————————————————————
function linkdb(Sourcename,Userid,Password:PChar): Boolean;StdCall;export;
var
Aconn:TADOConnection;
Aquery:TADOQuery;
connstr:String;
strCommand:String;
mSourcename:String;
mUserid:String;
mPassword:String;
begin
connstr:='';
strCommand:='';
mSourcename:=String(Sourcename);
mUserid:=String(Userid);
mPassword:=String(Password);
linkdb:=false;
try
connstr:='';
connstr:=connstr+'Provider=SQLOLEDB.1;';
connstr:=connstr+'Persist Security Info=False;';
connstr:=connstr+'Password='+mPassword+';';
connstr:=connstr+'User ID='+mUserid+';';
connstr:=connstr+'Initial Catalog=pubs;';
connstr:=connstr+'Data Source='+mSourcename;
CoInitialize(nil);
Aconn:=TADOConnection.Create(nil);
Aconn.Close;
Aconn.ConnectionString:=connstr;
Aconn.Open();
//用Aquery操作别的
except
linkdb:=false; //链接不上SQL SEVER服务器!
Aconn.Close;
Aconn.Free;
exit;
end;
end;exports
linkdb;
begin
end.
————————————————————————————————————————————调用:
————————————————————————————————————————————
procedure TForm1.Button1Click(Sender: TObject);
type
TLinkdb=function(Sourcename,Userid,Password): Boolean;StdCall;
var
mlinkdb:TLinkdb;
myhandle:Thandle;
begin
myhandle:= LoadLibrary('你的dll全路径');
try
if myhandle<=0 then
raise exception.Create('DLL调用失败,错误代码为:'+inttostr(getlasterror))
else
begin
@mlinkdb:=GetProcAddress(myhandle,'linkdb');
if not assigned(mlinkdb) then
raise exception.Create('getproceaddress调用失败,错误代码:'+inttostr(getlasterror))
else
begin
if mlinkdb(PChar('192.168.0.12'),PChar('sa'),PChar('aa')) then showmessage('链接上');
end;
end;
finally
freelibrary(myhandle);
end;
end;
dll中try最后加:
linkdb:=true;