Pokusaj sa wide_char (UNICODE) setom. Mada (iako je MessageBoxW implementiran i u Win98) nisam siguran u kojoj su meri u Win98 (Win98 ima znacajno slabiju podrsku za UNICODE od WinNT-a i sistem rada sa istim inace se znacajno razlikuje) implementirane/podrzane ostale UNICODE funkcije u odnosu na WinNT, ali pokusaj. Znaci nesto kao:
Code:
TCHAR string = TEXT("TestString");
U vezi sa ovim stringom, ne mozes koristit standardne ANSI funkcije kao sto je npr. strlen() jer se velicina karaktera razlikuje (ANSI 1 bajt, UNICODE ili short ili wide_char 2 bajta).U tom slucaju mozes da koristis lstrlen (ANSI ili WCHAR verzija). Takodje TCHAR moze biti ANSI ili WCHAR. To zavisi od toga, da li si definisao UNICODE verziju. U slucaju da nisi onda je:
Code:
#ifdef _UNICODE
typedef wchar_t TCHAR; // UNICODE
// suprotno
#else
typedef char TCHAR; // ANSI
Slicno je sa ostalim funckijma, npr. MessageBox:
Code:
#ifdef _UNICODE
typedef MessageBoxW MessageBox; // UNICODE
// suprotno
#else
typedef MessageBoxA MessageBox; // ANSI
Takodje, da se ne bi pri svakom definisanju stringa, stavljao leading L ispred, koristi se makro TEXT() koji to to odradjuje.
Mozda ces naci neki drugi nacin za resavanje tvog problema, ako ti npr. velicina karaktera ne odgovora. All in all, nadam se da je bilo od pomoci.
Pozdrav.