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ń |
---|
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