Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Az ODBC-alkalmazások első feladata az Illesztőprogram-kezelő betöltése; ez az operációs rendszertől függ. Például egy Microsoft Windows NT Server/Windows 2000 Server, Windows NT Workstation/Windows 2000 Professional vagy Microsoft Windows 95/98 rendszerű számítógépen az alkalmazás vagy a Driver Manager könyvtárra hivatkozik, vagy meghívja a LoadLibraryt a Driver Manager DLL betöltéséhez.
A következő feladat, amelyet el kell végezni, mielőtt egy alkalmazás bármilyen más ODBC-függvényt meghívhat, az ODBC-környezet inicializálása és egy környezeti leíró lefoglalása az alábbiak szerint:
Az alkalmazás egy SQLHENV típusú változót deklarál. Ezután meghívja az SQLAllocHandle-t , és átadja a változó címét és a SQL_HANDLE_ENV lehetőséget. Például:
SQLHENV henv1; SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv1);Az Illesztőprogram-kezelő allokál egy struktúrát, amelyben tárolhatja a környezettel kapcsolatos információkat, és a környezeti leírót visszaadja a változóban.
Az Illesztőprogram-kezelő jelenleg nem hívja meg az SQLAllocHandle-t az illesztőprogramban, mert nem tudja, melyik illesztőprogramot hívja meg. Késlelteti az SQLAllocHandle meghívását az illesztőprogramban, amíg az alkalmazás nem hív meg egy függvényt az adatforráshoz való csatlakozáshoz. További információkért lásd: A Driver Manager szerepe a kapcsolódási folyamatban, ennek a szakasznak egy későbbi részében.
Ha az alkalmazás befejezte az ODBC használatát, felszabadítja a környezeti leírót az SQLFreeHandle használatával. A környezet felszabadítása után alkalmazásprogramozási hiba a környezet leírójának használata egy ODBC-függvény hívásában; ez nem definiált, de valószínűleg végzetes következményekkel jár.
Az SQLFreeHandle meghívásakor az illesztőprogram felszabadítja a környezettel kapcsolatos információk tárolására használt struktúrát. Vegye figyelembe, hogy az SQLFreeHandle nem hívható meg környezeti leíróra mindaddig, amíg az adott környezeti leíró összes kapcsolati leíróját fel nem szabadították.
A környezeti fogantyúval kapcsolatos további információkért lásd: Környezeti fogantyúk.