Udostępnij za pośrednictwem


CWinApp::GetProfileBinary

Wywołać funkcję Członkowskie pobrać dane binarne z wpisu w określonej sekcji rejestru aplikacji lub.Plik INI.

BOOL GetProfileBinary(
   LPCTSTR lpszSection,
   LPCTSTR lpszEntry,
   LPBYTE* ppData,
   UINT* pBytes 
);

Parametry

  • lpszSection
    Wskazuje ciąg zakończony zerem, określający sekcji zawierającej zapis.

  • lpszEntry
    Wskazuje ciąg zakończony zerem, zawierający zapis, którego wartość ma być pobrana.

  • ppData
    Wskazuje wskaźnik, który odbierze adres danych.

  • pBytes
    Wskazuje UINT, który będzie odbierał rozmiar danych (w bajtach).

Wartość zwracana

Niezerowa, jeśli kończy się pomyślnie; 0 inaczej.

Uwagi

Członkowskie funkcja nie jest uwzględniana, więc ciągi w lpszSection i lpszEntry parametry mogą różnić się w przypadku.

[!UWAGA]

GetProfileBinary alokuje bufor i zwraca jego adres w *ppData.Obiekt wywołujący jest odpowiedzialny za zwolnienie przy użyciu buforu usunąć [.

Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

Dane zwrócone przez tę funkcję nie jest koniecznie NULL zakończone i wywołujący musi wykonać sprawdzanie poprawności.Aby uzyskać więcej informacji, zobacz Overruns buforu unikanie.

Przykład

CWinApp* pApp = AfxGetApp();

const TCHAR* pszKey = _T("My Section");
struct complex {
  double re, im;
} myData = { 1.4142, -0.5 };

// Write the information to the registry.

pApp->WriteProfileBinary(pszKey, _T("ComplexData"), (LPBYTE)&myData, 
   sizeof(myData));

// Read the information from the registry.

complex* pData;
UINT n;
BOOL ret = pApp->GetProfileBinary(pszKey, _T("ComplexData"), (LPBYTE*)&pData, 
   &n);

ASSERT(ret);
ASSERT(n == sizeof(complex));
ASSERT(myData.re == pData->re);
ASSERT(myData.im == pData->im);
delete [] pData; // free the buffer

Na przykład dodatkowe, zobacz CWinApp::WriteProfileBinary.

Wymagania

Nagłówek: afxwin.h

Zobacz też

Informacje

Klasa CWinApp

Wykres hierarchii

CWinApp::GetProfileInt

CWinApp::GetProfileString