|
用Delphi编写安装程序(2)
俞文群 2001-04-09 13:15:34
//设置目录环境及配置文件
if not DirectoryExists(EdtDir.Text) then
// if MessageBox(getfocus,‘该目录不存在,是否创建该目录?‘,‘询问‘,1) = idOK then
try
ForceDirectories(EdtDir.Text);
except
MessageBox(getFocus,‘创建目录失败!‘,‘信息‘,0);
Exit;
end
// else Exit;
// ModalResult := mrOK;
Step 4:生成主程序配置文件
变量:
var
setupinfo : TiniFile;
//配置当前数据工作路径,选择与自己系统有关的驱动程序。
setupinfo:= Tinifile.Create( trim(FrmPathSelect.EdtDir.Text)+‘setup.ini‘);
setupinfo.WriteString(‘access‘,‘workdbpath‘,trim(FrmPathSelect.EdtDir.Text)+‘mynbdb.mdb‘;
setupinfo.WriteString(‘access‘,‘backdbpath‘,trim(FrmPathSelect.EdtDir.Text)+‘mynbdbbak.mdb‘);
setupinfo.Free;
Step 5:从资源文件中还原有关文件。
变量:
var
res:tresourcestream;
resname,resnewname:string;
RegFile:TRegIniFile;
begin
//从资源文件中还原数据库文件
resnewname:=trim(FrmPathSelect.EdtDir.Text)+‘mynbdb.mdb‘;
resname:=‘MYDBSRC‘;
res:=tresourcestream.Create(hinstance,resname,pchar(‘mydbsrcfile‘));
res.savetofile(resnewname);
res.free;
//从资源文件中还原主程序文件
resnewname:=trim(FrmPathSelect.EdtDir.Text)+‘Tnbdemo.exe‘;
resname:=‘MYDBAPP‘;
res:=tresourcestream.Create(hinstance,resname,pchar(‘mydbappfile‘));
res.savetofile(resnewname);
res.free;
//在注册表中写入主程序路径名及执行文件名的信息,以便在
//升级主程序时用到。
RegFile := TRegIniFile.Create;
RegFile.RootKey := HKEY_LOCAL_MACHINE;
RegFile.WriteString(‘SOFTWAREmynb‘,‘exepath‘,trim(resnewname));
|首 页||上一页||下一页||尾 页|
|