procedure TPmain.FormCreate(Sender: TObject);
var
myreg:Tregistry;
SDir,check:String;
begin
Dir:=ExtractFilePath(Application.ExeName);
SetLength(SDir,144);
if GetSystemDirectory(PChar(SDir),144) <> 0 then
SetLength(Sdir,Strlen(Pchar(Sdir)));
myreg:=Tregistry.Create;
myreg.RootKey := HKEY_CURRENT_USER;
if not myreg.KeyExists('\Software\ODBC\ODBC.INI\just for xy') then
begin
myreg:=Tregistry.Create;
try
if myreg.OpenKey('\Software\ODBC\ODBC.INI\just for xy', True) then
begin
myreg.WriteString('Driver',SDir + '\odbcjt32.dll');
myreg.WriteString('DBQ',Dir + 'picture');
myreg.WriteString('FIL','MS Access;');
myreg.WriteString('UID','');
myreg.WriteInteger('DriverId',25);
myreg.WriteInteger('SafeTransactions',0);
end;
if myreg.OpenKey('\Software\ODBC\ODBC.INI\just for xy\Engines\Jet', True) then
begin
myreg.WriteString('ImplicitCommitSync','');
myreg.WriteString('UserCommitSync','Yes');
myreg.WriteInteger('MaxBufferSize',2048);
myreg.WriteInteger('PageTimeout',5);
myreg.WriteInteger('Threads',3);
end;
if myReg.OpenKey('\Software\ODBC\ODBC.INI\ODBC Data Sources', True) then
myreg.WriteString('just for xy','Driver do Microsoft Access (*.mdb)');
finally
myreg.CloseKey;
end;
end
else
begin
if myreg.OpenKey('\Software\ODBC\ODBC.INI\just for xy', True) then
begin
check:= myreg.ReadString('DBQ');
if check<>dir+'picture' then
myreg.WriteString('DBQ',Dir + 'picture');
end;
end;
myreg.Free;
end;
var
AParams: TStringList;
Dir: string;
begin
if not Session.IsAlias('MyAlias') then
begin
ShowMessage('Alias MyAlias does not exist');
Exit;
end;
AParams := TStringList.Create;
try
// get the current PATH parameter
Session.GetAliasParams('MyAlias',AParams);
Dir := Copy(AParams.Strings[0],6,255);
// get the new PATH parameter
if InputQuery('MyAlias Alias Path','Path:' ,Dir) then
begin
// Update the alias parameters
AParams.Clear;
AParams.Add('PATH=' + Dir);
Session.ModifyAlias('MyAlias',AParams);
Session.SaveConfigFile;
end;
finally
AParams.Free;
end;
end;