You can use this API to determine what capabilities to expose or hide in the user interface depending on the current provider.
You access the Capabilities API by way of the connection object. The availability of this API is not dependent on the connection state; it is always available. This static definition represents the maximum set of capabilities available through the current provider under optimum conditions. For example, the capabilities API says that the Oracle provider supports the update command; however, the execution of an update command could throw an exception because the user has not been granted access to the table to be updated. In this example, the update capability is conditional on user privilege. The exception message provides the additional information you need to use the capability successfully.
Use the FdoIConnection object to obtain the capability objects whose class names are FdoICommandCapabilities, FdoIConnectionCapabilities, FdoIExpressionCapabilities, FdoIFilterCapabilities, FdoIRasterCapabilities, FdoISchemaCapabilities, and FdoITopologyCapabilities.