delphi下有例子,你认真看一下

解决方案 »

  1.   

    delphi 中有一个控件可以实现的
      

  2.   

    to各位高手:
    能具体点吗?能把代码贴出来吗本人学DELPHI没多久???
      

  3.   

    先在uses后面加入Registry然后:
    procedure TForm1.Button1Click(Sender: TObject);
    Const
    FPath = '\Software\Microsoft\Office\8.0\Word\InstallRoot';
    FKey = 'Path';
    FMyPath = '\Software\MyPath';
    FMyKey = 'MyString';
    Var
    Reg : TRegistry;
    begin
    Reg := TRegistry.Create;
    try
    Reg.RootKey := HKEY_LOCAL_MACHINE;//要操作的主键
    If Reg.OpenKey(FPath, False) then
    ShowMessage(Reg.ReadString(FKey)); // 读出的 WinWord 的路径就显示出来了。
    Reg.CreateKey(FMyPath); // 创建我们的主键
    Reg.OpenKey(FMyPath, True); // 打开我们自己的主键中
    Reg.WriteString(FMyKey, 'Welcome Edit Reg');// 写入字符串键值。
    finally
    Reg.Free; // 用 Try..Finally 结构确保 REG 变量能够释放。end;
    end;
      

  4.   

    (*例如我想取注册表中:hkey_local_machine下的software下的oracle下的homeo中的oracle_home中的值,在delphi5程序中怎么实现呢?请高手给以解决.解决马上给分!!!*)
    Uses Registry
    var
     Reg:TRegistry;
     Str:String;
    begin
    try
     Reg:=TRegistry.Create;
     Reg.RootKey:=HKEY_LOCAL_MACHINE;
     Reg.OpenKey('software\oracle\home',True);
      //True代表如果目录不存在,则自动创建;False不创建);
     Str:= Reg.ReadString('oracle_home');
      //如果oracle_home是Binary类型值,则调用Reg.ReadBinary;
      //如果oracle_home是Integer类型值,则调用Reg.ReadInteger;
    finally
     Reg.Free;
    end;
    end;
      

  5.   

    下面是一个自动配置ODBC及BDE的实例,怎样找到你所要的注册表中的值应该不用具体再说明了吧
    procedure Tfrmmain.BitBtn1Click(Sender: TObject);
    var
      MyList: TStringList;
      registerTemp : TRegistry;
      //bData : array[ 0..0 ] of byte;
    begin
        registerTemp := TRegistry.Create; //建立一个Registry实例
        with registerTemp do
           begin
              RootKey:=HKEY_USERS;//设置根键值为HKEY_USERS          //找到Software\ODBC\ODBC.INI\ODBC Data Sources
              if OpenKey('.DEFAULT\Software\ODBC\ODBC.INI\ODBC Data Sources',True) then
              begin //注册一个DSN名称
                  WriteString( ''+edit1.text+'',''+combobox1.text+'' );
              end          else
                begin//创建键值失败
                 memo1.lines.add('增加ODBC数据源失败');
                 exit;
                end;
              CloseKey;        //找到或创建Software\ODBC\ODBC.INI\MyAccess,写入DSN配置信息
              if OpenKey('.DEFAULT\Software\ODBC\ODBC.INI\'+edit1.text+'',True) then
                begin
                  //WriteString( 'DBQ', 'C:\inetpub\wwwroot\test.mdb' );//数据库目录
                  WriteString( 'Description', ''+Edit2.text+'' );//数据源描述
                  WriteString( 'Driver', 'C:\Windows\SYSTEM\sqlsrv32.dll' );//驱动程序DLL文件
                  //WriteInteger( 'DriverId', 25 );//驱动程序标识
                  //WriteString( 'FIL', 'Ms Access;' );//Filter依据
                  //WriteInteger( 'SafeTransaction', 0 );//支持的事务操作数目
                  WriteString( 'Server', ''+EDit3.Text+'' );//服务器名称
                  //WriteString( 'Laster', ''+EDit5.text+'' );//用户名称
                 // bData[0] := 0;
                 // WriteBinaryData( 'Exclusive', bData, 1 );//非独占方式
                  //WriteBinaryData( 'ReadOnly', bData, 1 );//非只读方式
                end
              else//创建键值失败
                begin
                  memo1.lines.add('增加ODBC数据源失败');
                  exit;
                end;
              CloseKey;        //找到或创建Software\ODBC\ODBC.INI\MyAccess\Engines\Jet
            //写入DSN数据库引擎配置信息
              {if OpenKey('Software\ODBC\ODBC.INI\''%'+Edit1.text+'%''\Engines\Jet',True) then
                begin
                       WriteString( 'ImplicitCommitSync', 'Yes' );
                       WriteInteger( 'MaxBufferSize', 512 );//缓冲区大小
                       WriteInteger( 'PageTimeout', 10 );//页超时
                       WriteInteger( 'Threads', 3 );//支持的线程数目
                       WriteString( 'UserCommitSync', 'Yes' );
                  end
                else//创建键值失败
                  begin
                    memo1.lines.add('增加ODBC数据源失败');
                    exit;
                  end;}
              CloseKey;
              memo1.lines.add('增加新ODBC数据源成功!');
              Free;
          end;//end with
      MyList := TStringList.Create;
      try
        with MyList do
        begin
          add('database name='+Edit1.text+'');
          add('SQLQRYMODE=SERVER');
          add('ODBC DSN='+Edit1.Text+'');
          //Add('SERVER NAME=IB_SERVER:/PATH/DATABASE.GDB');
          //Add('USER NAME=MYNAME');
        end;
        Session.AddAlias(''+edit1.text+'', 'SQL Server', MyList);
        Session.SaveConfigFile;
        memo1.Lines.Add('BDE配置成功!');
        MyList.Free;
      except
        memo1.Lines.Add('错误!'+#13+'数据库别名已存在!');
        MyList.Free;
      end;
      bitbtn1.Enabled:=false;
    end;满意吗?加分吧
      

  6.   

    toJonHua(玉龙) :
    你这里的edit(1-5)及combobox1具体是指什么呢?combobox1中是不是指数据驱动程序,那它里面的这些驱程序项怎么加到 combobox1中去呢?还有:
    Session.AddAlias(''+edit1.text+'', 'SQL Server', MyList);你这里是不是配置sql server数据库存啊!又要麻烦你啦!明白马上给分!
      

  7.   

    toJonHua(玉龙) :
    怎么没消息了。
      

  8.   

    你给我一个Email地址,我将程序发给你吧,自己去看好吗?