cbc的bug
我的Form1上有OpenDialog 和 ADOQyery 及ADOConnection组件,在没有用OpenDialog组件之前,ADOQyery 及ADOConnection 的连接都是正确的(ADOQyery的连接指向ADOConnection),但是一旦启用了OpenDialog之后,ADOConnection的连接路径就成了OpenDialog的路径了,之前ADOConnection连接数据库的路径就变了,因此就提示我在该路径下没有数据库,这是怎么回事情啊?
[解决办法]
AnsiString szLINK = this-> ADOConnection1-> ConnectionString;
this-> OpenDialog1-> Execute();
this-> ADOQuery1-> Active = true;
ShowMessage(szLINK);
没有发现你说的现象,无论我有没有选中文件并打开;最后弹出的messagebox内容均是
数据库联接字符串;
ps:用OpenDialog之后 文件路径发生改变的这种事 我的确碰到过
具体描述
AnsiString savePath = "\\save "; //用相对路径
OpenDialog1-> Excute();
AnsiString GetPath = OpenDialog-> FileName;
FileCreate(savePath+ "\\file.txt ");//绝对失败,因为此时 savePath已经成为 GetPath+ "\\ "+savePath...
[解决办法]
试了一下,没发现问题.
楼主说的 "ADOConnection的连接路径就成了OpenDialog的路径了 "中的ADOConnection的连接路径是什么?
另外建议在程序里有关路径之类的在使用之前先转换成绝对路径,比如
"abc.mdb "
改成
IncludeTrailingPathDelimiter(ExtractFilePath(Application-> ExeName))+ "abc.mdb ";
长是长了点,呵呵
[解决办法]
这个其实算不上啥BUG吧。。。以前就郁闷老久,好象记得必须按一个固定的顺序去做链接,否则OVER,建议楼上在程序中有代码弄这些东西,不要在IDE上搞了