Avatar billede fedtoere Praktikant
01. februar 2010 - 15:49 Der er 12 kommentarer og
1 løsning

Kan man have source kode i f.eks ini filer og så benytte det i delphi programmet i stedet for hardkodet tekst.

Kan man have source kode i f.eks ini filer og så benytte det i delphi programmet i stedet for hardkodet tekst.

Min ide er at jeg i et færdigt program ønsker at have conditions liggende i f.eks en ini fil i stedet for hard-kodet i mit program.
Dermed kan jeg let ændre på disse hvis der kommer tilføjelser og hvis betingelserne ændres.

Mit program henter forskellige filer, sorterer disse og sammenligner indhold ud fra hard-kodet betingelser.

Det jeg ønsker er at disse betingelser evt kan gøres variable ved at have den ene del af betingelsen liggende som input fra f.eks en ini fil.

Dvs jeg ville kunne lave en sammenligning imellem en string A og en anden string B. Hvor B kommer fra en ini file eller anden tekst fil.

A := 'ELEFANT'
B := 'LØVE TIGER MUS ELEFANT KO SLANGE' (input f.eks fra ini fil)

så kan jeg lave en tekst sammenligning om den ene string er i den anden, er den det så er min betingelse sand ellers falsk.

Er dette muligt ?
Avatar billede fedtoere Praktikant
01. februar 2010 - 15:57 #1
Glemt lige noget....

Jeg er klar over at jeg kan oprette en string og så overføre indholdet fra min ini fil til denne.
Denne kan jeg så sammenligne som ovenstående A og B.

Men kan man includere f.eks "if" sætninger og andet script som man så kan benytte i Delphi programmet.

F.eks kunne B være:

B := 'IF A <> 100 then begin .... end;'
Avatar billede kroning Nybegynder
01. februar 2010 - 15:58 #2
Ja der er ingen problemer i at gemme tekst strenge i en ini fil, se i hjælpen om IniFiles
Avatar billede claes57 Ekspert
01. februar 2010 - 15:58 #3
typisk laver man faktisk oversættelser til flere programmer på den måde - ved programstart indlæses den valgte ini-fil med sprog.
IrfanView, og programmer fra Nirsoft.net bruger det.
I nirsoft's programmer kan du starte prg med en parameter, så laver den en ny ini-fil til sprog (med engelsk indhold) - den kan du så bare oversætte til dansk, og så kører programmet på dansk.
Avatar billede claes57 Ekspert
01. februar 2010 - 15:59 #4
og det er kun tekst - ikke kode, som jo skal oversættes før brug.
Avatar billede arne_v Ekspert
01. februar 2010 - 16:20 #5
Du kan putte tekst i INI fil, laese teksten og bruge denne i programmet.

Du kan putte navn paa DLL i INI fil, loade denne og kalde kode i den.
Avatar billede fedtoere Praktikant
01. februar 2010 - 17:17 #6
Tak for jeres svar.

Mit problem er ikke at hente tekst i ini filer men at lave mit program mere fleksibelt. Så jeg kan ændre i en tekst fil (f.eks ini fil) og så ændre betingelserne i programmet. F.eks i stil med script eller lignende.
Jeg har og benytter allerede ini filer, men jeg mangler at kunne "kompilere" mit delphi program ved afviklingen (så at sige).
Ved at hente f.eks if sætninger ind i den eksisterende kode noget i stil med #preprocessoren i C programmering men helst mere avanceret.

Jeg kan selvfølgelig selv forsøge mig at kode det "dynamisk" så jeg vha input udefra kan vælge mange setup, men så forsvinder hele ideen hvis jeg skal lave alt for meget kode for at opnå dette.

Hvis jeg bruger en DLL fil, så flytter jeg vel blot mit problem til en anden "source" kode fil som jeg så skal ændre i hvis jeg ønsker ændringer. Det jeg håbede var at jeg ikke skulle compilere men blot ændre i et tekstdokument eller lign.
Avatar billede arne_v Ekspert
01. februar 2010 - 17:45 #7
C preprocessoren kraver ogsaa rebuild for for at aendre funktionalitet.

Hvis DLL ikke er godt nok, saa skal du nok kigge paa at embedde en script engine som kan fortolke noget kode fra INI filen.

Mne jeg er totalt blank med hensyn til at lave det i Delphi.
Avatar billede fedtoere Praktikant
01. februar 2010 - 18:12 #8
Hej Arne.

Ja jeg er klar over at preprocessoren kræver at blive kompileret, men håbede på noget i den stil men med en feature a la script.
Script engine lyder som noget i den rigtige retning, jeg menes at have set noget i den stil brugt sammen med Delphi. Men desværre er jeg endnu mere blank end du når det drejer sig om at implementere dette :-)

Måske kan jeg lave det på en anden brugbar måde, det vil jeg lige undersøge.
I er selvfølgelig velkomme med flere gode forslag imens :-)
Avatar billede arne_v Ekspert
02. februar 2010 - 01:36 #9
Check denne her liste:
  http://www.torry.net/pages.php?id=280
Avatar billede arne_v Ekspert
02. februar 2010 - 03:31 #10
Jeg legede lidt med RemObjects Pascal Script.

Smart !!
Avatar billede arne_v Ekspert
01. marts 2010 - 01:45 #11
Kommet videre?
Avatar billede fedtoere Praktikant
14. februar 2011 - 23:13 #12
Hej Arne.
Nej, måtte finde alternativ løsning. Mindre smuk og mere besværlig.
hvis du giver et svar så får du point.
Avatar billede arne_v Ekspert
15. februar 2011 - 02:23 #13
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester