Call the SQLAllocHandle function, which takes the following parameters:
An identifier for the type of item being allocated
The handle of the parent item
A pointer to the location of the handle to be allocated
For a full description, see SQLAllocHandle in the Microsoft ODBC Programmer's Reference.
Use the handle in subsequent function calls.
Free the object using SQLFreeHandle, which takes the following parameters:
An identifier for the type of item being freed
The handle of the item being freed
For a full description, see SQLFreeHandle in the Microsoft ODBC Programmer's Reference.
The following code fragment allocates and frees an environment handle:
SQLHENV env; 
SQLRETURN retcode; 
retcode = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env );
if ( retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO )
{
   // success: application code here
}