以下为引用的内容: //在之前uses ComObj,ActiveX //声明连接字符串 Const SConnectionString = ''Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;'' +''Jet OLEDB:Database Password=%s;''; Www.Chinaz.com //============================================================================= // Procedure: GetTempPathFileName // Author : ysai // Date : 2003-01-27 // Arguments: (None) // Result : string //============================================================================= function GetTempPathFileName():string; //取得临时文件名 var SPath,Sfile&:array [0..254] of char; begin GetTempPath(254,SPath); GetTempFileName(SPath,''~SM'',0,SFile); result:=SFile; DeleteFile(PChar(result)); end;
中国站长_站,为中文网站提供动力 //============================================================================= // Procedure: CreateAccessFile // Author : ysai // Date : 2003-01-27 // Arguments: FileName:String;PassWord:string='''' // Result : boolean //============================================================================= function CreateAccessFile(FileName:String;PassWord:string=''''):boolean; //建立Access文件,如果文件存在则失败 var STempFileName:string; vCatalog:OleVariant; begin STempFileName:=GetTempPathFileName; try vCatalog:=CreateOleObject(''ADOX.Catalog''); vCatalog.Create(format(SConnectionString,[STempFileName,PassWord])); result:=CopyFile(PChar(STempFileName),PChar(FileName),True); DeleteFile(STempFileName); except result:=false; end; end; 中国.站.长站 //============================================================================= // Procedure: CompactDatabase // Author : ysai // Date : 2003-01-27 // Arguments: AFileName,APassWord:string // Result : boolean //============================================================================= function CompactDatabase(AFileName,APassWord:string):boolean; //压缩与修复数据库,覆盖源文件 var STempFileName:string; vJE:OleVariant; begin STempFileName:=GetTempPathFileName; try vJE:=CreateOleObject(''JRO.JetEngine''); vJE.CompactDatabase(format(SConnectionString,[AFileName,APassWord]), format(SConnectionString,[STempFileName,APassWord])); result:=CopyFile(PChar(STempFileName),PChar(AFileName),false); DeleteFile(STempFileName); except result:=false; end; end; 中国站长_站,为中文网站提供动力 //============================================================================= // Procedure: ChangeDatabasePassword // Author : ysai // Date : 2003-01-27 // Arguments: AFileName,AOldPassWord,ANewPassWord:string // Result : boolean //============================================================================= function ChangeDatabasePassword(AFileName,AOldPassWord,ANewPassWord:string):boolean; //修改ACCESS数据库密码 var STempFileName:string; vJE:OleVariant; begin STempFileName:=GetTempPathFileName; try vJE:=CreateOleObject(''JRO.JetEngine''); vJE.CompactDatabase(format(SConnectionString,[AFileName,AOldPassWord]), format(SConnectionString,[STempFileName,ANewPassWord])); result:=CopyFile(PChar(STempFileName),PChar(AFileName),false); DeleteFile(STempFileName); except result:=false; end; end; 中.国站长站 |