Skocz do zawartości

Recommended Posts

Napisano

witam serdecznie ;]

mam drobny problem, staram sie otworzyc plik w ktorym mam zapisana nazwe pliku ktory mam otworzyc. po wyciagnieciu nazwy tego pliku do stringa (char) nie mam pojecia jak moge go przetworzyc do formatu LPCTSTR ;( w druga strone operacja jest prosta, ale nie udaje mi sie skonwertowac STRING -> LPCTSTR.

z gory dziekuje
pozdrawiam

Napisano

LPCTSTR This type is declared in Winnt.h as follows:

#ifdef UNICODE
typedef LPCWSTR LPCTSTR;
#else
typedef LPCSTR LPCTSTR;

a z koleji

LPCSTR Pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.
This type is declared in Winnt.h as follows:

typedef CONST CHAR *LPCSTR;

Czyli jak masz sciezke w tablicy char zakonczonej '\0' to podajesz po prostu wskaznik i rzutujesz na LPCTSTR - byc moze rzutowanie nie bedzie konieczne. To oczywiscie bedzie dzialac o ile nie kompilujesz z unikodem.

pozdrowka

Napisano

Nie zabardzo wiem jakiego stringa masz na mysli jesli chodzi ci o stringa z STL-a to konwersja wyglada tak:

std:string strBuffer = "abcdefghi...";
LPCSTR cpszBuffer = strBuffer.c_str();

Jesli nie sprecyzuj swoje pytanie.

Cala sprawa wyglada tak:

FILE* pFile = fopen(...);
if (pFile)
{
   char szBuffer[100];
   fgets(szBuffer, 100, pFile);
   LPCSTR cpszFileName = (LPCSTR)szBuffer;
   fclose(pFile)
}

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...