WinApi GetProvateProfileString()

0

Środowisko Code::Block
Mam taki kod:

#include <Windows.h>
#include <tchar.h>
#include <stdio.h>

    using namespace std;

int main()
{
    _tprintf ( TEXT("Ini File test:\n\n") );
    TCHAR Value[ 50 ] ;
    GetPrivateProfileString( TEXT("Sekcja"), TEXT("Klucz"), TEXT("Error"), Value, 50, TEXT("test.ini") );
    _tprintf ( TEXT( "Key = %s \n\n" ), Value);
    system( "pause" );
    return 0;
}

I wszystko ładnie się kompiluje.
Do tego taki plik "test.ini":

[Sekcja]
Klucz = Value

Ale przy włączaniu programu wyświetla się:

Ini File test:

Key = Error

Press any key to continue . . .

Czy ktoś wie dlaczego ???

1

Kiedyś spotkałem się z problemem odczytu z INI przez to że był zapisany przy użyciu kodowania UTF-8 z BOM (właśnie ten BOM uniemożliwiał prawidłowy odczyt).

@FilipNL A jak nie tamto to jeszcze:

lpFileName [in]

The name of the initialization file. If this parameter does not contain a full path to the file, the system searches for the file in the Windows directory.

Więc nie wiem (nie pamiętam dawno tego nie używałem) czy przeszukuje ścieżkę w której jest aplikacja czy tylko Windows :/ Próbowałeś z pełną ścieżką?

0

Daj sobie spokój z tymi funkcjami, są deprecated.
Jak chcesz .ini to napisz własny parser.

0
kAzek napisał(a):

Kiedyś spotkałem się z problemem odczytu z INI przez to że był zapisany przy użyciu kodowania UTF-8 z BOM (właśnie ten BOM uniemożliwiał prawidłowy odczyt).

Dziękuję chodzilo kodowanie :D już wszystko działa ;3

1 użytkowników online, w tym zalogowanych: 0, gości: 1