bug? OpenDialog1.Execute; 在2000下没事 ,在XP下报错:access violation at address.. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 还有这种事?你的OpenDialog1是动态创建的么? 不是呀,不过它是放在一动态创建的窗体上的。我这事挺急,有别的方法先用上也行,有别的东西能实现OpenDialog吗? unit CTLogin;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls,dm;type Tloginform = class(TForm) Panel1: TPanel; Label1: TLabel; Edit1: TEdit; Button3: TButton; OpenDialog1: TOpenDialog; procedure FormKeyPress(Sender: TObject; var Key: Char); procedure Button3Click(Sender: TObject); procedure OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean); private { Private declarations } public { Public declarations } end;var loginform: Tloginform;implementation{$R *.dfm}procedure Tloginform.FormKeyPress(Sender: TObject; var Key: Char);beginif key=#13 thenbeginperform(wm_nextdlgctl,0,0);end;if key=#27 thenclose;end;procedure Tloginform.Button3Click(Sender: TObject);begin OpenDialog1.Filter := '备份文件 (*.mdb)|*.mdb|所有文件 (*.*)|*.*'; OpenDialog1.Execute;end;procedure Tloginform.OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean);var mypath:string;beginwith DataModule1.ADOConnection1 dobegin close; mypath:=OpenDialog1.FileName; ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source='+mypath+';' +'Persist Security Info=False;Jet OLEDB:Database Password=""'; try open; self.close; except Application.MessageBox('连接出错!','提示',MB_OK); end;end;end;end. procedure Tloginform.OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean);这块一点就不行了:access violation at address..,其实数据库也连上了,后面的程序正常,但是关闭整个程序时:runtime... DataModule1.ADOConnection1检查这个对象... XPMan.dcu这个文件找不到是怎么回事? 大虾们,帮帮忙吧 以前一直有C++,现在初学Delphi,关于自定义类的使用求救! 改变默认1433为1435 bde 连接不上sqlserver 请教:TreeView与ComboBox的组合问题 這個問題很困攏。請幫忙看一下了!!!!! 我在uses里添加了DsgnIntf后,编译时出错说没有DsgnIntf这个文件,请问是怎么回事? 使用Tidtcpclient发送的问题 想用回车键代替TAB键? ASP好还是CGI好? 使用SPCOMM发送数据,怎么老是提示发送失败? DELPHI70+SQL在WINXP下出错
你的OpenDialog1是动态创建的么?
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls,dm;type
Tloginform = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Edit1: TEdit;
Button3: TButton;
OpenDialog1: TOpenDialog;
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure Button3Click(Sender: TObject);
procedure OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;var
loginform: Tloginform;implementation
{$R *.dfm}procedure Tloginform.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
perform(wm_nextdlgctl,0,0);
end;
if key=#27 then
close;
end;procedure Tloginform.Button3Click(Sender: TObject);
begin
OpenDialog1.Filter := '备份文件 (*.mdb)|*.mdb|所有文件 (*.*)|*.*';
OpenDialog1.Execute;
end;procedure Tloginform.OpenDialog1CanClose(Sender: TObject;
var CanClose: Boolean);
var mypath:string;
begin
with DataModule1.ADOConnection1 do
begin
close;
mypath:=OpenDialog1.FileName;
ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source='+mypath+';'
+'Persist Security Info=False;Jet OLEDB:Database Password=""';
try
open;
self.close;
except
Application.MessageBox('连接出错!','提示',MB_OK);
end;
end;
end;end.
var CanClose: Boolean);
这块一点就不行了:access violation at address..,
其实数据库也连上了,后面的程序正常,但是关闭整个程序时:runtime...