RIL_EnumRadios (Compact 2013)
3/26/2014
This function retrieves the count of radios. It optionally retrieves a list of RADIOINFO structures for the radios.
The RADIOINFO structures are filled with data from the registry.
The RADIOINFO structure member dwRadioIndex is a unique identifier for the radio which is used to initialize a RIL instance using RIL_Initialize.
Syntax
HRESULT RIL_EnumRadios(
LPRADIOINFO lpRadioInfo,
DWORD *lpdwNumRadio
);
Parameters
[in, out] lpRadioInfo
[in] A pointer to a storage area for the output.NULL if no structure output is desired.
[out] A pointer to an array of RADIOINFO structures.
[in, out] lpdwNumRadio
[in] If lpRadioInfo is not NULL, the array size of lpRadioInfo.[out] A pointer to the number of radios.
[out] The required buffer array size when ERROR_INSUFFICIENT_BUFFER is returned.
Return Value
HRESULT is S_OK for success, or a standard error value.
ERROR_INSUFFICIENT_BUFFER if lpRadioInfo buffer is not NULL and the buffer is not big enough for the output.
Example
// assumption: the device has 2 radios.
HRESULT hr;
DWORD dwRadioCount = 0;
RADIOINFO *lpRadioInfo = NULL;
// get the number of radios
hr = RIL_EnumRadios( NULL, &dwRadioCount );
// dwRadioCount now = 2
if ( dwRadioCount > 0 ){
// allocate buffers for the RADIOINFO
lpRadioInfo = new RADIOINFO[ dwRadioCount ];
if ( NULL == lpRadioInfo ){
// we could not allocate memory
break;
}
hr = RIL_EnumRadios( lpRadioInfo, &dwRadioCount);
if ( FAILED( hr ) ){
// we could not get the RADIOINFO
}
}
Remarks
This function returns 1 radio with Radio ID 1, Radio Type 0, and Radio Name empty when the "HKEY_LOCAL_MACHINE\Comm\Cellular\RADIO\RadioNumber" registry entry does not exist. This provides backward compatibility.
Requirements
Library |
Ril.lib |