Avatar billede tigertool Nybegynder
23. september 2004 - 18:43 Der er 3 kommentarer og
1 løsning

Problem med OpenDialog og IniFile

Hej,

Jeg har noget kode der bare driller og driller.

Koedn ser sådan ud:
        TIniFile* ini = new TIniFile("./sounds.ini");
        if (OpenDialog1->Execute())
        {
                ini->WriteString("Sounds", "CTRL_0", OpenDialog1->FileName);
        }
        delete ini;

Det går ud på at hente den fulde sti + filnavn og gemme dette xom CTRL_0 i en ini fil!
Det virker bare ikke.

Jeg har prøvet at fjerne If'en og kun lave en ini->WriteString og så kastet en tilfældig value ind, og det virker fint.

Kan nogen se hvad mit problem er?
Avatar billede bertelbrander Novice
23. september 2004 - 23:08 #1
Hos mig (BCB 5.0 på XP) virker det, måske bortset fra at den smider sounds.ini i den mappe hvor man valgte fil.
Avatar billede tigertool Nybegynder
24. september 2004 - 09:25 #2
DOOH.. sounds.ini ligger jo i application mappen. Hvordan får jeg TIniFile til at hente filen der, uden at skulle angive den fulde sti? (For denne kan jo let variere)
Avatar billede bertelbrander Novice
24. september 2004 - 20:35 #3
Man kunne bruge (nej det er ikke kønt, men jeg gad ikke checke om BCB har en pænere metode):

  char MyPath[256];
  GetModuleFileName(0, MyPath, sizeof(MyPath));
  char *s = strrchr(MyPath, '\\');
  if(s == 0)
    return; // OhMy ...
  strcpy(s + 1, "Whatever.ini");
  TIniFile *Ini = new TIniFile(MyPath);
Avatar billede tigertool Nybegynder
18. januar 2005 - 22:33 #4
lukker.
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