频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

动态配置ODBC数据源

来源:yesky 作者:ilamei 出处:巧巧读书 2005-11-22 进入讨论组

  为便于说明,假设主窗体名称为Form1,通过一命令钮Button1注册ODBC数据源。具体根据读者需要自行设定。

  procedure TForm1.Button1Click(Sender: TObject);varI : Integer;

  J : double;

  RegF: TextFile;

  SysDir: PChar;

  AppPath, Params, Path, DbPath: string;begin

  try

  //生成注册用的批处理文件

   Params :=′Regedit/s tmp.reg′; //批处理文件内容AppPath := ExtractFilePath(Application.ExeName); //取得应用程序当前路径AssignFile(RegF, AppPath+′Reg.Bat′); //指定批处理文件路径和名称ReWrite(RegF); //创建和打开指定的文本文件WriteLn(RegF, Params); //将注册命令批处理内容写入文件CloseFile(RegF);//生成注册表文件GetMem(SysDir, 255);GetSystemDirectory(SysDir, 255); //取得Windows系统目录Path := String(SysDir);Path := InsertSplash(Path); //将类似C:\WINDOWS\SYSTEM变为C:\\WINDOWS\\SYSTEMDelete(AppPath, Length(AppPath), 1); //将字符串尾部′\′字符删除DbPath := InsertSplash(AppPath); //取得数据库存放路径Params := Format(OdbcStr, [Path, DbPath]);AssignFile(RegF, AppPath+′Tmp.Reg′);ReWrite(RegF);WriteLn(RegF, Params);CloseFile(RegF);//通过Api函数执行reg.bat, Uses中加入对ShellApi的引用If ShellExeCute(Application.Handle,′Open′,′Reg.bat′,′′, PChar(AppPath), SW_HIDE) $#@60;= 32

   then

   Showmessage(′导入注册表文件信息失败′);finallyFreeMem(SysDir);end;end;上述代码调用了一字符串处理函数InsertSplash,用于将路径字符串中所有的′\′处理为′\\′;这样做是必需的,否则,上述注册信息DRIVER和DBQ项无法正确注册。InsertSplash函数代码如下:

  function InsertSplash(AStr: string): string; //需要在单元公有部分进行函数声明var

  I : Integer;begin

  For I := 1 to Length(AStr) do

  case AStr[I] =′\′of

  True : Result := Result+′\\′;

  False: Result := Result+AStr[I];end;上述操作实现ODBC数据源的动态注册并没有通过Delphi特有的功能去完成,而只是通过文件读写功能,根据具体安装环境,生成ODBC数据源注册信息和批处理文件,以完成ODBC数据源的注册。这种实现方法不依赖于某种特定的开发工具,不需要通过手工进行ODBC数据源的配置,具有通用性强和操作简单的特点。而且,用上述同样的方法,读者也可编写能够注册其它类型数据源的程序,甚至,写成ODBC注册动态连接库,以利于程序复用。
静态页面:http://www.qqread.com/other-database/a225904001.html 更多文章 更多内容请看电脑配置手册服务器配置专栏专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
较早的文章:JDBC2.0扩展API

较新的文章:Datawindow的制作技巧
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章