Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem winAPI aplikace Hello World

MS pouziva takzvane TCHAR, to je automaticky prekladacom zmenene na single byte alebo multibyte string (unicode), v zavislosti od nastaveni prekladaca.

Ked pises konstantny string, a ma z toho byt TCHAR, tak musis pouzit makro _T, aby to v pripade potreby skonvertoval na multibyte (unicode). T.j.
MessageBox(NULL, _T("Ahoj Win API !!!"),_T("První program"), MB_OK);

Je to jasne z tej chybovej hlasky. Nevie konvertovat const char (co je jendobytovy string) na LPCWSTR, co je wide. Prekladas unicode program (co je dobre), tak musis pouzivat tutorialy nejake novsie, ne nejake z roku 1998 :D

P.S. tie tchary ta budu prenasledovat neustale, ptz dementny MS kvoli nim uplne zmenil aj nazvy standardnych C funkcii, proste MS chaos :) Ale neni to ziaden velky problem. Musis ako programator vediet kde idu multibyte stringy a kde mas strikne jednobytove (napr. pri praci so subormi) a kde je pripadne nutna konverzia.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny