比如有下面这样一段程序:
 ……
  object ADOConnection1: TADOConnection
    Connected = True
    ConnectionString = 
      'Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data ' +
      'Source=DataBase.mdb;Mode=Share Deny None;Extended Properties="";' +
      'Persist Security Info=True;Jet OLEDB:System database="";Jet OLED' +
      'B:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engi' +
      'ne Type=4;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Par' +
      'tial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:N' +
      'ew Database Password="";Jet OLEDB:Create System Database=False;J' +
      'et OLEDB:Encrypt Database=False;Jet OLEDB:Don''t Copy Locale on C' +
      'ompact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet ' +
      'OLEDB:SFP=False'
    Mode = cmShareDenyNone
    Provider = 'Microsoft.Jet.OLEDB.4.0'
    Left = 16
    Top = 488
  end
……当把“'Source=DataBase.mdb”改为一个变量后,程序就提示出错?是不是在ConnectionString不允许使用变量?

解决方案 »

  1.   

    str := 'DataBase.mdb';...Source=' + str + '...;它不就是个字符串么?用+连接起来就是了
      

  2.   

    改后:[Error] RLINK32: Unsupported 16bit resource in file "..\Unit1.dfm"object ADOConnection1: TADOConnection
        str := 'DataBase.mdb';
        Connected = True
        ConnectionString =
          'Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data ' +
          'Source=' + str + ';Mode=Share Deny None;Extended Properties="";' +
          'Persist Security Info=True;Jet OLEDB:System database="";Jet OLED' +
          'B:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engi' +
          'ne Type=4;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Par' +
          'tial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:N' +
          'ew Database Password="";Jet OLEDB:Create System Database=False;J' +
          'et OLEDB:Encrypt Database=False;Jet OLEDB:Don''t Copy Locale on C' +
          'ompact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet ' +
          'OLEDB:SFP=False'
        Mode = cmShareDenyNone
        Provider = 'Microsoft.Jet.OLEDB.4.0'
        Left = 16
        Top = 488
      end
      

  3.   

    什么意思?为什么你要在dfm文件中修改?你直接在pas文件中写啊
      

  4.   

    窗体上放的是ADOConnection控件,没办法写Pas,我直接设置了控件的属性。
      

  5.   

    在设计时不指定ADOConnection属性
    在Pas里用代码指定