The answer is Yes, you get this information - but indirectly.
One of the design principles of our product is that it makes the OPC Server itself "invisible"- i.e. you only work with objects such as OPC items, because that's what the application really needs - the item data. Status of the OPC Server is therefore "projected" into all OPC items you work with. The component checks the status of the OPC Server (among others, it calls IOPCServer::GetStatus periodically), and if it detects a failure, it reports it to the application for all items the application is working with.
If the OPC Server reports OPC_STATUS_FAILED in IOPCServer::GetStatus, the actual error code returned by the component is 0xC0049001L, and the error message is:
Server failed. This error originates in the OPC Data Access server. A vendor specific fatal error has occurred within the server.
The server is no longer functioning. The recovery procedure from this situation is vendor specific. The application will try to
reconnect to the server after a configurable period.
Technical information: The call to IOPCServer::GetStatus on the OPCServer object has returned OPC_STATUS_FAILED in the
OPCSERVERSTATUS structure.
Your application will receive this error in a way that depends on the method you used to interface with the component:
For "one-shot" method calls that work with a single item (such as ReadItemValue), this error will be the HRESULT returned by the actual function call.
For methods calls that work with multiple items at once (such as ReadMultipleItems), this error will be in Exception.HResult property of each of the operation results objects returned.
If you are subscribed to items and the server goes into this state, all subscribed items will receive an ItemChanged notification that bears this code in Exception.HResult property of the "event arguments" object passed to the notification handler.
Status codes other than OPC_STATUS_FAILED are currently not reported to the application, because they do not mean a "hard" failure and do not require the component to perform a disconnect and reconnect, and the OPC server also reflects the problem in the quality/errors associated with each item, so an indication that there is a problem will get to the client anyway. We can think of passing this information to the application in some upcoming version update, if that's your requirement.