AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [InnoSetup] Wie INI-Datei abändern ?
Thema durchsuchen
Ansicht
Themen-Optionen

[InnoSetup] Wie INI-Datei abändern ?

Ein Thema von Hansa · begonnen am 22. Mär 2006 · letzter Beitrag vom 23. Mär 2006
Antwort Antwort
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

[InnoSetup] Wie INI-Datei abändern ?

  Alt 22. Mär 2006, 01:07
Hi,

Programm soll damit wie gewohnt installiert werden. Laufwerk/Verzeichnis auswählen usw. Dahin dann eben speichern. Ok, soweit kein Problem. Es handelt sich lediglich um eine Kopier-Operation ohne systemnahe Sachen (Registry usw.). Nun das Problem : Programm muß nach Installation wissen, wo die Datenbank jetzt gelandet ist. Hierfür ist eine INI-Datei vorgesehen, in der der genaue Pfad drinsteht. Angeblich geht das in einem Arbeitsschritt. Aber wo und wie ? Also : User ändert Pfad innerhalb der Installation und die INI muß dementsprechend angepaßt werden, damit das Programm dann weiß, wo die DB letztenendes liegt.

Allerdings habe ich die Info darüber anscheinend innerhalb eines Access-Trouble-Forums gefunden. Vieleicht gehts ja so nicht. Für Access scheints jedenfalls ziemlicher Krampf zu sein, so was hinzukriegen. 8)
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.643 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: [InnoSetup] Wie INI-Datei abändern ?

  Alt 22. Mär 2006, 06:42
Man kann ja bei InnoSetup auch script-Code einfügen. Hier ein kleines Beispiel für nach der Installation:

[code=delphi]
Code:
var
  FinishedInstall: Boolean;

procedure DeInitializeSetup();
var
  FileName,NewFileName: String;
begin
  if not FinishedInstall then exit;

  NewFileName := ExpandConstant('{app}')+'\RSC\CORE\BACKGROUND.JPG';
  FileName := ExpandConstant('{src}')+'\BACKGROUND.JPG';
  if FileExists(FileName) then
    FileCopy(FileName,NewFileName,false);
 
  NewFileName := ExpandConstant('{app}')+'\ETC\CONTACT.INI';
  FileName := ExpandConstant('{src}')+'\CONTACT.INI';
  if FileExists(FileName) then
    FileCopy(FileName,NewFileName,false);
end;

procedure CurStepChanged(CurStep: Integer);
begin
  if CurStep = csFinished then
    FinishedInstall := True;
end;
Nun gibts da auch Ini-Funktionen. Näheres findest Du in der InnoSetup-Hilfe

Delphi-Quellcode:

function IniKeyExists(const Section, Key, Filename: String): Boolean;
function IsIniSectionEmpty(const Section, Filename: String): Boolean;

function GetIniBool(const Section, Key: String; const Default: Boolean; const Filename: String): Boolean
function GetIniInt(const Section, Key: String; const Default, Min, Max: Longint; const Filename: String): Longint;
function GetIniString(const Section, Key, Default, Filename: String): String;

function SetIniBool(const Section, Key: String; const Value: Boolean; const Filename: String): Boolean;
function SetIniInt(const Section, Key: String; const Value: Longint; const Filename: String): Boolean;
function SetIniString(const Section, Key, Value, Filename: String): Boolean;

procedure DeleteIniSection(const Section, Filename: String);
procedure DeleteIniEntry(const Section, Key, Filename: String);
Sven Harazim
--
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#3

Re: [InnoSetup] Wie INI-Datei abändern ?

  Alt 23. Mär 2006, 03:10
Thx, jo geht echt alles einfach. Habe 3 Testversionen verschickt. Mal sehen, was die sagen. 8)
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz