[This is preliminary documentation and subject to change.]
The msbdnOutputGetValue function retrieves a specific dynamic value of the virtual interface DLL's configuration for the MMR.
HRESULT msbdnOutputGetValue(
IN MSBDN_OUTPUT_SUBSYSTEM *Subsystem,
IN/OUT MSBDN_OUTPUT_VALUE *Value
);
Returns zero if the function was successful. If the function fails, the return value is non-zero. If the Index member of MSBDN_OUTPUT_VALUE in the Value parameter is not valid, msbdnOutputGetValue should return E_INVALIDARG.
The MMR calls msbdnOutputGetValue to obtain a dynamic value from the virtual interface's configuration with the value's index. The msbdnOutputGetValue function should set the name and data type of the configuration value and the member of the union within MSBDN_OUTPUT_VALUE in the Value parameter corresponding to the correct data type.
If the virtual interface specifies the data type as a string, the virtual interface DLL must allocate this string on the heap. The virtual interface should never return a pointer to global storage; this practice is not safe in a multithreaded environment. To release memory storage for this string, the MMR calls msbdnOutputFreeBuffer.
msbdnOutputFreeBuffer, msbdnOutputSetValue, MSBDN_OUTPUT_SUBSYSTEM, MSBDN_OUTPUT_VALUE