新建一data module,在上面放置adoconnection1,新建连接词如下:
Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=DataBaseName;Data Source=127.0.0.1
把LoginPrompt置为false
可是当把程序移植到其他机子上运行的时候,由于他人的机子上用户sa设置了密码,登陆就会失败
现在想制作出这样的效果,如何在登陆失败时弹出一个窗体,窗体上显示:登陆失败,可能是由以下原因造成.....并出现三个按钮:恢复数据库(就是将备份的数据库文件恢复到数据库中) 输入用户名密码重试 退出程序
请问应该在程序的哪个位置对连接失败进行检测?
最好能给出完整代码,谢谢~

解决方案 »

  1.   

    try 
      adoconnection1.connected:=true;
    except 
    on E:Exception do
    beign
      Application.messagebox('连接失败,可能原因:''+#13#13+E.Message+ ',mb_ok+mb_stop);
      
    end;
    并出现三个按钮:恢复数据库(就是将备份的数据库文件恢复到数据库中) 输入用户名密码重试 退出程序
    //另外做一个窗体吧,....不要老是希望别人给你原代码,,,最好自己动手写,碰到解决不了的再问......
      

  2.   

    对于mdejtod(稻草人)的回答我非常感谢,可是麻烦回答一下,这段代码应该放在哪个位置才能起作用呢??因为我发现data module中的adoconnection是在程序启动的时候就自动进行连接的,并不需要手动去进行连接.而且如果这段代码放在project工程代码中,在data module的create事件之后,那么能create一个窗体,但是没办法在定义Tbutton.所以我才说麻烦给出代码..
      

  3.   

    在 datamodule 窗体中.....你的程序在设计时也许adoconnectio 是连接的.但你可以在数据窗体创建时让ADOCONNECTIO连接...