When an application calls SQLAllocEnv through an ODBC 3.x driver, the call to SQLAllocEnv(phenv) is mapped to SQLAllocHandle as follows:
The Driver Manager allocates an environment handle and returns it to the application. The Driver Manager calls SQLSetEnvAttr to set the SQL_ATTR_ODBC_VERSION environment attribute to SQL_OV_ODBC2.
When the application establishes the first connection to a driver, the Driver Manager calls
SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, OutputHandlePtr)
in the driver with OutputHandlePtr set to phenv.