unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
ADOConnection1: TADOConnection;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure conn;
begin
form1.ADOConnection1.Connected:=true;
end;procedure TForm1.Button1Click(Sender: TObject);
var
hThread:Thandle;//定义一个句柄
ThreadID:DWord;
connStr:String;
begin
connStr:='Provider=Microsoft.Jet.OLEDB.4.0;'
+'Data Source='+extractfilepath(application.ExeName)+'db.mdb;'
+'Persist Security Info=False';
ADOConnection1.ConnectionString:=connStr;
我这样写就有错误 提示"......‘尚未调用’CoInitialize......
//创建线程,同时线程函数被调用
hthread:=CreateThread(nil,0,@conn,nil,0,ThreadID);但我直接调用过程conn是正常的
conn;end;end.为什么呀哪位大哥帮小弟一下吧
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
ADOConnection1: TADOConnection;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure conn;
begin
form1.ADOConnection1.Connected:=true;
end;procedure TForm1.Button1Click(Sender: TObject);
var
hThread:Thandle;//定义一个句柄
ThreadID:DWord;
connStr:String;
begin
connStr:='Provider=Microsoft.Jet.OLEDB.4.0;'
+'Data Source='+extractfilepath(application.ExeName)+'db.mdb;'
+'Persist Security Info=False';
ADOConnection1.ConnectionString:=connStr;
我这样写就有错误 提示"......‘尚未调用’CoInitialize......
//创建线程,同时线程函数被调用
hthread:=CreateThread(nil,0,@conn,nil,0,ThreadID);但我直接调用过程conn是正常的
conn;end;end.为什么呀哪位大哥帮小弟一下吧
解决方案 »
- cxgrid与 TcxGridPopupMenu 窗体封装到DLL中出现EConvertError的问题
- DELPHI程序(XP下编译完移植到2000上)连接MS SQL 2000的问题!
- 数据感知组件如何显示记录集RecordsSet的数据
- 谁有bds2006 repack cd1里的shkbds1r.r01,谢谢,急啊
- 我想让我的程序memo里可以输入韩文字"가"任何系统都可以正常浏览,应该怎么做??
- 小问题:如何读取“.cpp”类型的文件内容?
- 调查:单机数据库选取?
- 高手!请帮我看看这段代码!(在线等....)
- ***江湖救急!!!如何用CREATE语句在ACCESS创建一个含有自增量的字段***
- 请问哪里有object pascal的教程下载
- 100分:socket连接时为什么不能捕获到异常?
- TreeView中的TreeNode是否可以再增加其子TreeNode?
先用CoInitializeEx(NULL, COINIT_MULTITHREADED);
用完再调CoUninitialize();
我将
procedure conn;
begin
form1.ADOConnection1.Connected:=true;
end;
改为
function conn(p:pointer):longint;stdcall;
begin
form1.ADOConnection1.Connected:=true;
end;
结果没有什么区别
在 hthread:=CreateThread(nil,0,@conn,nil,0,ThreadID);时还是出错to htyx(清风夜私语)
怎么写呀在哪里调用呀to yurenjf(极限)
我也没有activeX控件呀只有一个TAdoConnection控件??我是想 在连库时如果很慢,窗口也不会像死了似的也可以改变大小有没有什么办法呀
就是
procedure conn;
begin
CoInitializeEx(NULL, COINIT_MULTITHREADED);
form1.ADOConnection1.Connected:=true;
CoUninitialize();
end;
编译不过去
[Error] Unit1.pas(32): Undeclared identifier: 'CoInitializeEx'
[Error] Unit1.pas(32): Undeclared identifier: 'COINIT_MULTITHREADED'
[Error] Unit1.pas(34): Undeclared identifier: 'CoUninitialize'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
还需哪个单元文件吗?
能不能告诉我 COINIT_MULTITHREADED这个参数是起什么作用的呀