Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você pode recompilar um aplicativo como um aplicativo Unicode de duas maneiras:
Inclua o #define Unicode contido no arquivo de cabeçalho Sqlucode.h no aplicativo.
Compile o aplicativo com a opção Unicode do compilador. (Essa opção será diferente para compiladores diferentes.)
Para converter um aplicativo ANSI em um aplicativo Unicode, escreva o aplicativo para armazenar e passar dados Unicode. Além disso, as chamadas para funções que dão suporte a argumentos SQLPOINTER devem ser convertidas para utilizar contagem de bytes.
Depois que um aplicativo é compilado como um aplicativo Unicode, se o aplicativo chama uma função de API ODBC (sem sufixo), o Gerenciador de Driver reconhece o aplicativo como um aplicativo Unicode e converte a chamada de função em uma função Unicode (com o sufixo W ) se o driver subjacente dá suporte ao Unicode. Quando um aplicativo ANSI faz uma chamada de função sem sufixo, o Gerenciador de Driver o converte em ANSI se o driver subjacente dá suporte a ANSI. Se o aplicativo e o driver derem suporte à mesma codificação de caracteres, o gerenciador de driver passará as chamadas para o driver (com certas exceções para aplicativos ANSI).
Um aplicativo pode chamar as funções Unicode (com o sufixo W ) e as funções ANSI (com ou sem o sufixo A ). Chamadas de função Unicode e ANSI podem ser misturadas. No entanto, se a biblioteca de cursores for usada, as chamadas de função Unicode e ANSI não poderão ser misturadas. A biblioteca de cursores é Unicode ou ANSI, não uma mistura.
Um aplicativo pode ser escrito de modo que possa ser compilado como um aplicativo Unicode ou um aplicativo ANSI. Nesse caso, os tipos de dados de caractere podem ser declarados como SQL_C_TCHAR. Essa é uma macro que insere SQL_C_WCHAR se o aplicativo for compilado como um aplicativo Unicode ou insere SQL_C_CHAR se ele for compilado como um aplicativo ANSI. O programador de aplicativos deve ter cuidado com as funções que tomam SQLPOINTER como argumento, pois o tamanho do argumento de comprimento será alterado (para tipos de dados de cadeia de caracteres), dependendo se o aplicativo é ANSI ou Unicode.
Uma função pode ser chamada de uma das três maneiras: como uma chamada de função somente Unicode (com o sufixo W ), como uma chamada de função somente ANSI (com o sufixo A ) ou como a chamada de função ODBC sem sufixo. Os argumentos para as três formas de uma função são idênticos. Somente essas funções com argumentos SQLCHAR * ou argumentos SQLPOINTER que apontam para cadeias de caracteres exigem formulários Unicode e ANSI. Para funções que têm argumentos que podem ser declarados como um tipo de caractere, como SQLBindCol ou SQLGetData (que não têm formulários Unicode e ANSI), o argumento pode ser declarado como o tipo Unicode, o tipo ANSI ou, no caso de um argumento de tipo C, a macro SQL_C_TCHAR. Para obter mais informações, consulte Dados Unicode.
Um aplicativo pode ser escrito como um aplicativo Unicode mesmo que nenhum drivers Unicode esteja disponível para que ele funcione. O Gerenciador de Driver mapeará funções Unicode e tipos de dados para ANSI. Há algumas restrições aos mapeamentos Unicode para ANSI que podem ser realizados. A existência de um driver Unicode para o aplicativo Unicode com o qual trabalhar resultará em um melhor desempenho e removerá as restrições inerentes aos mapeamentos Unicode para ANSI.