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 alkalmazások Unicode-alkalmazásként való újrafordítására kétféleképpen van lehetőség:
Vegye fel a Sqlucode.h fejlécfájlban található Unicode #define-et az alkalmazásba.
Állítsa össze az alkalmazást a fordító Unicode-beállításával. (Ez a beállítás eltérő lesz a különböző fordítók esetében.)
Ha unicode-alkalmazássá szeretne konvertálni egy ANSI-alkalmazást, írja meg az alkalmazást Unicode-adatok tárolásához és átadásához. Emellett az SQLPOINTER argumentumokat támogató függvények hívásait bájtok számának használatára kell konvertálni.
Ha egy alkalmazás Unicode-alkalmazásként van lefordítva, ha az alkalmazás ODBC API-függvényt hív meg (utótag nélkül), az Illesztőprogram-kezelő Unicode-alkalmazásként ismeri fel az alkalmazást, és Unicode-függvénysé alakítja a függvényhívást ( w utótaggal), ha az alapul szolgáló illesztőprogram támogatja a Unicode-ot. Ha egy ANSI-alkalmazás utótag nélkül indít függvényhívást, az Illesztőprogram-kezelő ANSI-vé alakítja, ha a mögöttes illesztőprogram támogatja az ANSI-t. Ha az alkalmazás és az illesztőprogram is támogatja ugyanazt a karakterkódolást, az illesztőprogram-kezelő átadja a hívásokat az illesztőprogramnak (bizonyos kivételekkel az ANSI-alkalmazások esetében).
Az alkalmazások meghívhatják a Unicode-függvényeket ( w utótaggal) és az ANSI-függvényeket is ( az A utótaggal vagy anélkül). A Unicode- és ANSI-függvényhívások keverhetők. A kurzortár használata esetén azonban a Unicode és az ANSI függvényhívások nem keverhetők. A kurzortár Unicode vagy ANSI, nem keverék.
Az alkalmazások úgy írhatók, hogy Unicode-alkalmazásként vagy ANSI-alkalmazásként fordíthatók le. Ebben az esetben a karakter adattípusai SQL_C_TCHAR deklarálhatók. Ez egy makró, amely SQL_C_WCHAR szúr be, ha az alkalmazás Unicode-alkalmazásként van lefordítva, vagy beszúrja SQL_C_CHAR, ha ANSI-alkalmazásként van lefordítva. Az alkalmazásprogramozónak óvatosnak kell lennie az SQLPOINTER argumentumot használó függvényekkel, mert a hossz argumentum mérete (sztring adattípusok esetén) attól függően változik, hogy az alkalmazás ANSI vagy Unicode.
A függvények háromféleképpen hívhatók meg: Unicode-függvényhívásként ( W utótaggal), csak ANSI-függvényhívásként ( A utótaggal), vagy utótag nélküli ODBC-függvényhívásként. A függvény három formájának argumentumai azonosak. Csak azok a függvények igényelnek Unicode- és ANSI-űrlapokat, amelyek sqlchar* argumentumokkal vagy SQLPOINTER-argumentumokkal mutatnak sztringekre. Olyan függvények esetében, amelyek argumentumai karaktertípusként deklarálhatók, például SQLBindCol vagy SQLGetData (amelyek nem rendelkeznek Unicode- és ANSI-űrlapokkal), az argumentum Unicode-típusként, ANSI-típusként vagy C típusú argumentum esetén a SQL_C_TCHAR makróként deklarálható. További információ: Unicode-adatok.
Egy alkalmazás akkor is megírható Unicode-alkalmazásként, ha nem áll rendelkezésre Unicode-illesztőprogram. Az Illesztőprogram-kezelő Unicode-függvényeket és adattípusokat képez le az ANSI-be. Egyes korlátozások vonatkoznak a Unicode és ANSI közötti leképezésekre, amelyek végrehajthatók. A Unicode-illesztőprogram léte a Unicode-alkalmazáshoz javítani fogja a teljesítményt, és megszünteti az Unicode-ról ANSI-re történő leképezések velejáró korlátait.