Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Z tego co mi wiadomo, LPCTSTR to wskaźnik na string w stylu C ( char ), tak więc konwersja z std::string powinna wyglądać następująco:

std::string sString = "Hello World!";
LPCTSTR lpString = sString.c_str();

Ku memu zaskoczeniu kompilator wywala błąd, kiedy próbuję wywołać funkcję MessageBox, gdyż pisze, że to zły typ. Wypisanie bezpośrednio C stringa "Tekst" daje praktycznie ten sam rezultat :( . Co robić?

 

Używam Microsoft Visual C++ 2008, w Dev-C++ kod działa, więc to chyba wina środowiska ? Może zna ktoś funkcję, która nadaje LPCTSTR wartość stringa ? Szukałem w dokumentacji.

Opublikowano

Rozumiem, że ciężko mnie zrozumieć, ale bez przesady :) . Chodzi mi o to:

MessageBox ( HWND hwnd, "Heja!", "Okienko", NULL );

Tam gdzie wstawiłem te łańcuchy, powinny być typy LPCTSTR, w Dev-C++ ten kod działa, bo i owszem, działać powinien. Natomiast w VC++ pisze, że mylę typ const char z LPCTSTR, więc próbuję dokonać konwersji tegoż typu.

Opublikowano

np W końcu forum jest po to żeby pytać.. czasem jednak trzeba używać tego formatu

LPCTSTR np: podczas obsługi DirectShow to wtedy wystarczy rzutować starym sposobem z starego C.

(LPCTSTR)"nazwaOkna" To taka mała uwaga.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...