List:Commits« Previous MessageNext Message »
From:pharvey Date:December 27 2005 8:07pm
Subject:Connector/ODBC 5 commit: r18 - MYODBCC/include MYODBCDbg/MYODBCDbgLib MYODBCDbg/MYODBCDbgTest MYODBCDbg/include MYODBCDia/MYODBCDiaLib MYODBCDrv/MYODB...
View as plain text  
Modified:
   MYODBCC/include/MYODBCC.h
   MYODBCDbg/MYODBCDbgLib/MYODBCDbg.cpp
   MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.cpp
   MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.pro
   MYODBCDbg/include/MYODBCDbg.h
   MYODBCDia/MYODBCDiaLib/MYODBCDiaAppend2.c
   MYODBCDrv/MYODBCDrvLib/SQLDriverConnect.c
   MYODBCDrv/MYODBCDrvTest/TSTAllocHandleDbc.c
   MYODBCDrv/MYODBCDrvTest/TSTAllocHandleEnv.c
   MYODBCDrv/MYODBCDrvTest/TSTAllocHandleStm.c
   MYODBCDrv/MYODBCDrvTest/TSTColumns.c
   MYODBCDrv/MYODBCDrvTest/TSTCreateTable.c
   MYODBCDrv/MYODBCDrvTest/TSTDelete.c
   MYODBCDrv/MYODBCDrvTest/TSTDisconnect.c
   MYODBCDrv/MYODBCDrvTest/TSTDriverConnect.c
   MYODBCDrv/MYODBCDrvTest/TSTDropTable.c
   MYODBCDrv/MYODBCDrvTest/TSTExecute.c
   MYODBCDrv/MYODBCDrvTest/TSTFetch.c
   MYODBCDrv/MYODBCDrvTest/TSTForeignKeys.c
   MYODBCDrv/MYODBCDrvTest/TSTFreeHandleDbc.c
   MYODBCDrv/MYODBCDrvTest/TSTFreeHandleEnv.c
   MYODBCDrv/MYODBCDrvTest/TSTFreeHandleStm.c
   MYODBCDrv/MYODBCDrvTest/TSTGetData.c
   MYODBCDrv/MYODBCDrvTest/TSTGetTypeInfo.c
   MYODBCDrv/MYODBCDrvTest/TSTInsert.c
   MYODBCDrv/MYODBCDrvTest/TSTNumResultCols.c
   MYODBCDrv/MYODBCDrvTest/TSTPrepare.c
   MYODBCDrv/MYODBCDrvTest/TSTPrimaryKeys.c
   MYODBCDrv/MYODBCDrvTest/TSTSelect.c
   MYODBCDrv/MYODBCDrvTest/TSTSetEnvAttr.c
   MYODBCDrv/MYODBCDrvTest/TSTStatistics.c
   MYODBCDrv/MYODBCDrvTest/TSTTables.c
   MYODBCDrv/MYODBCDrvTest/TSTUpdate.c
   MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp
   MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp
   MYODBCIns/MYODBCInsLib/MYODBCInsDriverConnect.cpp
   MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp
   MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro
   MYODBCIns/include/MYODBCInsDataSource.h
   MYODBCIns/include/MYODBCInsDriver.h
   MYODBCInstaller/MYODBCInstaller.c
   MYODBCShell/MYODBCShell.c
   MYODBCTst/MYODBCTstLib/MYODBCTstAllocHandle.c
   MYODBCTst/MYODBCTstLib/MYODBCTstCloseCursor.c
   MYODBCTst/MYODBCTstLib/MYODBCTstColumns.c
   MYODBCTst/MYODBCTstLib/MYODBCTstConnect.c
   MYODBCTst/MYODBCTstLib/MYODBCTstDisconnect.c
   MYODBCTst/MYODBCTstLib/MYODBCTstDriverConnect.c
   MYODBCTst/MYODBCTstLib/MYODBCTstDump.c
   MYODBCTst/MYODBCTstLib/MYODBCTstExecDirect.c
   MYODBCTst/MYODBCTstLib/MYODBCTstExecute.c
   MYODBCTst/MYODBCTstLib/MYODBCTstFetch.c
   MYODBCTst/MYODBCTstLib/MYODBCTstForeignKeys.c
   MYODBCTst/MYODBCTstLib/MYODBCTstFreeHandle.c
   MYODBCTst/MYODBCTstLib/MYODBCTstGetData.c
   MYODBCTst/MYODBCTstLib/MYODBCTstGetTypeInfo.c
   MYODBCTst/MYODBCTstLib/MYODBCTstNumResultCols.c
   MYODBCTst/MYODBCTstLib/MYODBCTstPrepare.c
   MYODBCTst/MYODBCTstLib/MYODBCTstPrimaryKeys.c
   MYODBCTst/MYODBCTstLib/MYODBCTstPrintDiagnostics.c
   MYODBCTst/MYODBCTstLib/MYODBCTstSetEnvAttr.c
   MYODBCTst/MYODBCTstLib/MYODBCTstStatistics.c
   MYODBCTst/MYODBCTstLib/MYODBCTstTables.c
   MYODBCTst/include/MYODBCTst.h
Log:
- address some porting issues (linux to xp)
- incremental improvements to MYODBCDbg

Modified: MYODBCC/include/MYODBCC.h
===================================================================
--- MYODBCC/include/MYODBCC.h	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCC/include/MYODBCC.h	2005-12-27 20:07:41 UTC (rev 18)
@@ -38,6 +38,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <tchar.h>
 
 #if !defined( max )
     #define max( a, b ) (((a) > (b)) ? (a) : (b))
@@ -149,6 +150,14 @@
     #define MYODBCCGetProcAddress(A,B) lt_dlsym(A,B)
 #endif
 
+/* unicode aware (or not) */
+#ifdef WIN32
+    #define MYODBCCL _T
+    #define MYODBCCfprintf _ftprintf_s
+    #define MYODBCCstrlen wcslen
+#else
+#endif
+
 /* macros to make some fairly standard C code more portable and to allow for use mem
checkers */
 #define MYODBCCMalloc(A) malloc(A)
 #define MYODBCCCalloc(A,B) calloc(A,B)
@@ -452,7 +461,7 @@
 */
 #define MYODBCCAssert(a1)\
 {\
-    fprintf( stderr, "[ASSERT][%s][%d] %s\n", __FILE__, __LINE__, a1 );\
+    MYODBCCfprintf( stderr, MYODBCCL("[ASSERT][%s][%d] %s\n"), __FILE__, __LINE__, a1 );\
     exit( 1 );\
 }
 
@@ -473,13 +482,13 @@
                   (LPTSTR)&pszError,\
                   0,\
                   NULL );\
-    fprintf( stderr, "[%s][%d] %d: %s\n", __FILE__, __LINE__, nError, pszError );\
+    MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] %d: %s\n"), __FILE__, __LINE__, nError,
pszError );\
     LocalFree( pszError );\
 }
 #else
 #define MYODBCCPrintLastError()\
 {\
-    fprintf( stderr, "[%s][%d] %d: %s\n", __FILE__, __LINE__, xxxx, xxxx );\
+    MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] %d: %s\n"), __FILE__, __LINE__, xxxx, xxxx
);\
 }
 #endif
 

Modified: MYODBCDbg/MYODBCDbgLib/MYODBCDbg.cpp
===================================================================
--- MYODBCDbg/MYODBCDbgLib/MYODBCDbg.cpp	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDbg/MYODBCDbgLib/MYODBCDbg.cpp	2005-12-27 20:07:41 UTC (rev 18)
@@ -42,42 +42,39 @@
     \sa     ZZZZ
             ZZZZ
 */
-MYODBCDbg::MYODBCDbg( const QString &stringFileName )
+MYODBCDbg::MYODBCDbg( QIODevice * device )
+    : QTextStream( device  )
 {
-    fileOutput.setFileName( stringFileName );
-    if ( fileOutput.open( QIODevice::WriteOnly | QIODevice::Text ) )
-        textstreamOutput.setDevice( &fileOutput );
 }
 
-/*! 
-    \brief  ZZZZ
-                
-            ZZZZ
-            
-    \sa     ZZZZ
-            ZZZZ
-*/
-MYODBCDbg::~MYODBCDbg()
+MYODBCDbg::MYODBCDbg( FILE * fileHandle )
+    : QTextStream( fileHandle, QIODevice::WriteOnly )
 {
-    if ( fileOutput.isOpen() )
-        fileOutput.close();
 }
 
+MYODBCDbg::MYODBCDbg( QString * string )
+    : QTextStream( string, QIODevice::WriteOnly )
+{
+}
+
 /*! 
     \brief  ZZZZ
                 
             ZZZZ
             
-    \param  stringMessage   ZZZZ
+    \param  ZZZZ
     
     \return void
     
     \sa     ZZZZ
             ZZZZ
 */
-void MYODBCDbg::doWrite( const QString &stringMessage )
+void MYODBCDbg::doEnter( const char *pszFile, int nLine, const char *pszFunction )
 {
-    textstreamOutput << stringMessage << endl;
+    QString stringMessage;
+
+    stringMessage.sprintf( "%s:%d: %s\n\t[ENTER  ] ", pszFile, nLine, pszFunction );
+    *this << stringMessage << endl;
 }
 
 /*! 
@@ -95,12 +92,12 @@
     \sa     ZZZZ
             ZZZZ
 */
-SQLRETURN MYODBCDbg::doReturn( SQLRETURN nReturn, const char *pszFunction, const char
*pszFile, int nLine )
+SQLRETURN MYODBCDbg::doReturn( const char *pszFile, int nLine, const char *pszFunction,
SQLRETURN nReturn )
 {
     QString stringMessage;
 
     stringMessage.sprintf( "%s:%d: %s\n\t[RETURN ] ", pszFile, nLine, pszFunction );
-    textstreamOutput << stringMessage << getReturnString( nReturn ) <<
endl;
+    *this << stringMessage << getReturnString( nReturn ) << endl;
 
     return nReturn;
 }

Modified: MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.cpp
===================================================================
--- MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.cpp	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.cpp	2005-12-27 20:07:41 UTC (rev 18)
@@ -41,7 +41,7 @@
 
     MYODBCDbgEnter();
 
-    MYODBCDbgPrint();
+    MYODBCDbgPrint( "" );
     MYODBCDbgPrint( "Got here" );
     MYODBCDbgPrint2( "gpMYODBCDbg = %p", gpMYODBCDbg )
     MYODBCDbgError( "Ooops" );
@@ -61,7 +61,7 @@
     int n;
     int nReturn = 0;
 
-    gpMYODBCDbg = new MYODBCDbg( "MYODBCDbg.out" );
+    gpMYODBCDbg = new MYODBCDbg( stderr );
 
     for ( n = 0; tests[n].name; n++ )
     {

Modified: MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.pro
===================================================================
--- MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.pro	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDbg/MYODBCDbgTest/MYODBCDbgTest.pro	2005-12-27 20:07:41 UTC (rev 18)
@@ -11,7 +11,7 @@
 INCLUDEPATH	+= ../../MYODBCC/include
 INCLUDEPATH	+= ../include
 LIBS		+= -L../../lib
-LIBS		+= -lMYODBCDbg -lMYODBCC
+LIBS		+= -lMYODBCDbg 
 
 # #########################################################
 # FILES

Modified: MYODBCDbg/include/MYODBCDbg.h
===================================================================
--- MYODBCDbg/include/MYODBCDbg.h	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDbg/include/MYODBCDbg.h	2005-12-27 20:07:41 UTC (rev 18)
@@ -31,19 +31,22 @@
 
 #include <MYODBCC.h>
 
-/* This is where we introduce Qt. */
+/* This is where we introduce Qt (or our home brew alternative). */
 #include <QString>
 #include <QFile>
 #include <QTextStream>
 
-class MYODBCDbg
+class MYODBCDbg : public QTextStream
 {
 public:
-    MYODBCDbg( const QString &stringFileName );
-    ~MYODBCDbg();
+    MYODBCDbg( QIODevice * device );
+    MYODBCDbg( FILE * fileHandle );
+    MYODBCDbg( QString * string );
+    MYODBCDbg( QByteArray * array );
+    MYODBCDbg( const QByteArray & array );
 
-    void doWrite( const QString &stringMessage );
-    SQLRETURN doReturn( SQLRETURN nReturn, const char *pszFunction, const char *pszFile,
int nLine );
+    void doEnter( const char *pszFile, int nLine, const char *pszFunction );
+    SQLRETURN doReturn( const char *pszFile, int nLine, const char *pszFunction,
SQLRETURN nReturn );
 
     static QString getConnectAttrString( SQLINTEGER nAttribute );
     static QString getConnectOptionString( SQLUSMALLINT nOption );
@@ -57,8 +60,7 @@
     static QString getStmtOptionString( SQLUSMALLINT nOption );
 
 protected:
-    QFile       fileOutput;
-    QTextStream textstreamOutput;
+
 };
 
 /*! 
@@ -89,13 +91,11 @@
             
     \sa     MYODBC_PRINT MYODBCDbgReturn            
 */
-#define MYODBCDbgEnter(A)\
+#define MYODBCDbgEnter()\
 {\
 if ( gpMYODBCDbg )\
 {\
-    QString stringMessage; \
-    stringMessage.sprintf( "%s:%d: %s\n\t[ENTER  ] " A, __FILE__, __LINE__, __FUNCTION__
); \
-    gpMYODBCDbg->doWrite( stringMessage ); \
+    gpMYODBCDbg->doEnter( __FILE__, __LINE__, __FUNCTION__ ); \
 }\
 }
 
@@ -115,7 +115,7 @@
 {\
     QString stringMessage; \
     stringMessage.sprintf( "%s:%d: %s\n\t\t[INFO   ] " A, __FILE__, __LINE__,
__FUNCTION__ ); \
-    gpMYODBCDbg->doWrite( stringMessage ); \
+    *gpMYODBCDbg << stringMessage << endl; \
 }\
 }
 
@@ -125,7 +125,7 @@
 {\
     QString stringMessage; \
     stringMessage.sprintf( "%s:%d: %s\n\t\t[INFO   ] " A, __FILE__, __LINE__,
__FUNCTION__, B ); \
-    gpMYODBCDbg->doWrite( stringMessage ); \
+    *gpMYODBCDbg << stringMessage << endl; \
 }\
 }
 
@@ -135,7 +135,7 @@
 {\
     QString stringMessage; \
     stringMessage.sprintf( "%s:%d: %s\n\t\t[ERROR  ] " A, __FILE__, __LINE__,
__FUNCTION__ ); \
-    gpMYODBCDbg->doWrite( stringMessage ); \
+    *gpMYODBCDbg << stringMessage << endl; \
 }\
 }
 
@@ -145,7 +145,7 @@
 {\
     QString stringMessage; \
     stringMessage.sprintf( "%s:%d: %s\n\t\t[WARNING] " A, __FILE__, __LINE__,
__FUNCTION__ ); \
-    gpMYODBCDbg->doWrite( stringMessage ); \
+    *gpMYODBCDbg << stringMessage << endl; \
 }\
 }
 
@@ -159,10 +159,10 @@
             
     \sa     MYODBCDbgEnter MYODBC_PRINT            
 */
-#define MYODBCDbgReturn(A) return(gpMYODBCDbg ? gpMYODBCDbg->doReturn( A,
__FUNCTION__, __FILE__, __LINE__ ) : A)
+#define MYODBCDbgReturn(A) return(gpMYODBCDbg ? gpMYODBCDbg->doReturn( __FILE__,
__LINE__, __FUNCTION__, A ) : A)
 
 #else
-#define MYODBCDbgEnter(A)    {}
+#define MYODBCDbgEnter()     {}
 #define MYODBCDbgPrint(A)    {}
 #define MYODBCDbgPrint2(A,B) {}
 #define MYODBCDbgError(A)    {}

Modified: MYODBCDia/MYODBCDiaLib/MYODBCDiaAppend2.c
===================================================================
--- MYODBCDia/MYODBCDiaLib/MYODBCDiaAppend2.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDia/MYODBCDiaLib/MYODBCDiaAppend2.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -39,7 +39,7 @@
 /*
     if ( !pDia )
     {
-        fprintf( stderr, "[%s][%s %s] %s", MYODBC_VENDOR, MYODBC_NAME, MYODBC_VERSION,
pszMessage );
+        MYODBCCfprintf( stderr, "[%s][%s %s] %s", MYODBC_VENDOR, MYODBC_NAME,
MYODBC_VERSION, pszMessage );
         return MYODBCDia_pStates[nState].diag_returncode;
     }
 */

Modified: MYODBCDrv/MYODBCDrvLib/SQLDriverConnect.c
===================================================================
--- MYODBCDrv/MYODBCDrvLib/SQLDriverConnect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvLib/SQLDriverConnect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -300,7 +300,7 @@
                           (LPTSTR) &pszMsg,
                           0, 
                           NULL );
-            fprintf( stderr, pszMsg );
+            MYODBCCfprintf( stderr, pszMsg );
             nReturn = MYODBCDiaAppend( pDbc->hDia, MYODBC_DIA_HY000, 0, pszMsg );
             LocalFree( pszMsg );
 #else

Modified: MYODBCDrv/MYODBCDrvTest/TSTAllocHandleDbc.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTAllocHandleDbc.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTAllocHandleDbc.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstAllocHandle( SQL_HANDLE_DBC, hEnv, &hDbc ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to allocate a connection.\n", __FILE__, __LINE__
);
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to allocate a connection.\n", __FILE__,
__LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTAllocHandleEnv.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTAllocHandleEnv.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTAllocHandleEnv.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstAllocHandle( SQL_HANDLE_ENV, NULL, &hEnv ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to allocate an environment.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to allocate an environment.\n", __FILE__,
__LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTAllocHandleStm.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTAllocHandleStm.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTAllocHandleStm.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstAllocHandle( SQL_HANDLE_STMT, hDbc, &hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to allocate a statement.\n", __FILE__, __LINE__
);
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to allocate a statement.\n", __FILE__,
__LINE__ );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTColumns.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTColumns.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTColumns.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -44,19 +44,19 @@
                                            pszTable, SQL_NTS,
                                            pszColumn, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to get columns.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to get columns.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstNumResultCols( hStm, &nCols ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to get number of result columns.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to get number of result columns.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( nCols != nColsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n",
__FILE__, __LINE__, nCols, nColsExpected );
         return MYODBC_C_FALSE;
     }
 
@@ -67,13 +67,13 @@
 
     if ( nRows != nRowsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %d rows but expected %d\n", __FILE__, __LINE__,
nRows, nRowsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %d rows but expected %d\n", __FILE__,
__LINE__, nRows, nRowsExpected );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstCloseCursor( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTCreateTable.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTCreateTable.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTCreateTable.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -35,7 +35,7 @@
 
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_CREATE_TABLE, SQL_NTS
) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTDelete.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTDelete.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTDelete.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -31,7 +31,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_DELETE, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTDisconnect.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTDisconnect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTDisconnect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstDisconnect( hDbc ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to disconnect.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to disconnect.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTDriverConnect.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTDriverConnect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTDriverConnect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -42,7 +42,7 @@
     */   
     if ( !SQL_SUCCEEDED( MYODBCTstDriverConnect( hDbc, NULL, MYODBC_DRV_TST_CONNECT,
SQL_NTS, NULL, 0, 0, SQL_DRIVER_NOPROMPT ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to connect using [%s].\n", __FILE__, __LINE__,
MYODBC_DRV_TST_CONNECT );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to connect using [%s].\n", __FILE__,
__LINE__, MYODBC_DRV_TST_CONNECT );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTDropTable.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTDropTable.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTDropTable.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_DROP_TABLE, SQL_NTS )
) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_TRUE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTExecute.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTExecute.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTExecute.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -52,25 +52,25 @@
 
     if ( !SQL_SUCCEEDED( MYODBCTstPrepare( hStm, pszSQL, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed prepare.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed prepare.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstExecute( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstNumResultCols( hStm, &nCols ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to get number of result columns.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to get number of result columns.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( nCols != nColsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld cols but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld cols but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
         return MYODBC_C_FALSE;
     }
 
@@ -81,7 +81,7 @@
         {
             if ( !SQL_SUCCEEDED( MYODBCTstGetData( hStm, nCol, SQL_C_CHAR,
(SQLPOINTER)szValue, sizeof(szValue), &nIndicator ) ) )
             {
-                fprintf( stderr, "[%s][%d]Failed to get column value for %ld.\n",
__FILE__, __LINE__, nCol );
+                MYODBCCfprintf( stderr, "[%s][%d]Failed to get column value for %ld.\n",
__FILE__, __LINE__, nCol );
                 return MYODBC_C_FALSE;
             }
 /*
@@ -95,7 +95,7 @@
 
     if ( nRows != nRowsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %d rows but expected %d\n", __FILE__, __LINE__,
nRows, nRowsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %d rows but expected %d\n", __FILE__,
__LINE__, nRows, nRowsExpected );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTFetch.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTFetch.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTFetch.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstFetch( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to fetch any rows.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to fetch any rows.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTForeignKeys.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTForeignKeys.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTForeignKeys.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -43,7 +43,7 @@
                                                "",
                                                SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
@@ -51,7 +51,7 @@
 
     if ( !SQL_SUCCEEDED( MYODBCTstCloseCursor( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTFreeHandleDbc.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTFreeHandleDbc.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTFreeHandleDbc.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstFreeHandle( SQL_HANDLE_DBC, hDbc ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed free connection handle.\n", __FILE__, __LINE__
);
+        MYODBCCfprintf( stderr, "[%s][%d]Failed free connection handle.\n", __FILE__,
__LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTFreeHandleEnv.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTFreeHandleEnv.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTFreeHandleEnv.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstFreeHandle( SQL_HANDLE_ENV, hEnv ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed free environment handle.\n", __FILE__, __LINE__
);
+        MYODBCCfprintf( stderr, "[%s][%d]Failed free environment handle.\n", __FILE__,
__LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTFreeHandleStm.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTFreeHandleStm.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTFreeHandleStm.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstFreeHandle( SQL_HANDLE_STMT, hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed free statement handle.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed free statement handle.\n", __FILE__,
__LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTGetData.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTGetData.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTGetData.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -43,7 +43,7 @@
         {
             if ( !SQL_SUCCEEDED( MYODBCTstGetData( hStm, nCol, SQL_C_CHAR,
(SQLPOINTER)szValue, sizeof(szValue), &nIndicator ) ) )
             {
-                fprintf( stderr, "[%s][%d]Failed to get column value for %ld.\n",
__FILE__, __LINE__, nCol );
+                MYODBCCfprintf( stderr, "[%s][%d]Failed to get column value for %ld.\n",
__FILE__, __LINE__, nCol );
                 return MYODBC_C_FALSE;
             }
 /*
@@ -59,7 +59,7 @@
 
     if ( nRows != nRowsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTGetTypeInfo.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTGetTypeInfo.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTGetTypeInfo.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstGetTypeInfo( hStm, SQL_ALL_TYPES ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to get type info.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to get type info.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTInsert.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTInsert.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTInsert.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -31,13 +31,13 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_INSERT1, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_INSERT2, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTNumResultCols.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTNumResultCols.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTNumResultCols.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -34,13 +34,13 @@
 
     if ( !SQL_SUCCEEDED( MYODBCTstNumResultCols( hStm, &nCols ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to get number of result columns.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to get number of result columns.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( nCols != nColsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld cols but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld cols but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTPrepare.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTPrepare.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTPrepare.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -46,7 +46,7 @@
 
     if ( !SQL_SUCCEEDED( MYODBCTstPrepare( hStm, pszSQL, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed prepare.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed prepare.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTPrimaryKeys.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTPrimaryKeys.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTPrimaryKeys.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -42,19 +42,19 @@
                                                pszSchema, 0,
                                                pszTable, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstNumResultCols( hStm, &nCols ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to get number of result columns.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to get number of result columns.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( nCols != nColsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n",
__FILE__, __LINE__, nCols, nColsExpected );
         return MYODBC_C_FALSE;
     }
 
@@ -65,13 +65,13 @@
 
     if ( nRows != nRowsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstCloseCursor( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTSelect.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTSelect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTSelect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -31,7 +31,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_SELECT, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
@@ -39,7 +39,7 @@
 
     if ( !SQL_SUCCEEDED( MYODBCTstCloseCursor( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTSetEnvAttr.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTSetEnvAttr.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTSetEnvAttr.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,7 +32,7 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstSetEnvAttr( hEnv, SQL_ATTR_ODBC_VERSION,
(SQLPOINTER)SQL_OV_ODBC3, 0 ) ) )
     {
-        fprintf( stderr, "[%s][%d]Failed to set SQL_ATTR_ODBC_VERSION.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d]Failed to set SQL_ATTR_ODBC_VERSION.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
     return MYODBC_C_TRUE;

Modified: MYODBCDrv/MYODBCDrvTest/TSTStatistics.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTStatistics.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTStatistics.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -45,19 +45,19 @@
                                               nUnique,
                                               SQL_QUICK ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstNumResultCols( hStm, &nCols ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to get number of result columns.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to get number of result columns.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( nCols != nColsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n",
__FILE__, __LINE__, nCols, nColsExpected );
         return MYODBC_C_FALSE;
     }
 
@@ -68,13 +68,13 @@
 
     if ( nRows != nRowsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstCloseCursor( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTTables.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTTables.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTTables.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -44,37 +44,37 @@
                                           pszTable, SQL_NTS,
                                           pszTableType, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to get columns.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to get columns.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstNumResultCols( hStm, &nCols ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to get number of result columns.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to get number of result columns.\n",
__FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( nCols != nColsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n", __FILE__,
__LINE__, nCols, nColsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld columns but expected %ld\n",
__FILE__, __LINE__, nCols, nColsExpected );
         return MYODBC_C_FALSE;
     }
 
     while ( SQL_SUCCEEDED( MYODBCTstFetch( hStm ) ) )
     {
         nRows++;
-/* fprintf( stderr, "[%s][%d] Found %d rows.\n", __FILE__, __LINE__, nRows ); */
+/* MYODBCCfprintf( stderr, "[%s][%d] Found %d rows.\n", __FILE__, __LINE__, nRows ); */
     }
 
     if ( nRows != nRowsExpected )
     {
-        fprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
+        MYODBCCfprintf( stderr, "[%s][%d] Found %ld rows but expected %ld\n", __FILE__,
__LINE__, nRows, nRowsExpected );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstCloseCursor( hStm ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed to close cursor.\n", __FILE__, __LINE__
);
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCDrv/MYODBCDrvTest/TSTUpdate.c
===================================================================
--- MYODBCDrv/MYODBCDrvTest/TSTUpdate.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCDrv/MYODBCDrvTest/TSTUpdate.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -31,13 +31,13 @@
 {
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_UPDATE1, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 
     if ( !SQL_SUCCEEDED( MYODBCTstExecDirect( hStm, MYODBC_DRV_TST_UPDATE2, SQL_NTS ) ) )
     {
-        fprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d] Failed execute.\n", __FILE__, __LINE__ );
         return MYODBC_C_FALSE;
     }
 

Modified: MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp
===================================================================
--- MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp	2005-12-27 20:07:41 UTC (rev 18)
@@ -28,7 +28,7 @@
 */
 #include "MYODBCInsInternal.h"
 
-#define MYODBC_INS_ODBCINI_HEADER_SECTION "ODBC Data Sources"
+#define MYODBC_INS_ODBCINI_HEADER_SECTION (LPWSTR)MYODBCCL("ODBC Data Sources")
 
 MYODBCInsDataSource::MYODBCInsDataSource( MYODBC_INS_DATASOURCE_MODE nMode )
 {
@@ -196,7 +196,7 @@
 
 QStringList MYODBCInsDataSource::getDataSourceNames( MYODBC_INS_DATASOURCE_SCOPE nScope )
 {
-    char        szBuffer[50000];
+    SQLWCHAR    szBuffer[50000];
     int         nChars = 0;
     int         nChar  = 0;
     QStringList stringlistFriendlyNames;
@@ -208,21 +208,7 @@
 
     SQLSetConfigMode( (UWORD)nScope );
 
-#if defined(WIN32)
-    /* 
-        This returns no data as does having a NULL for 1st arg!?
-
-        nChars = SQLGetPrivateProfileString( "ODBC 32 bit Data Sources", NULL, NULL,
pszBuffer, nBuffer - 1, "ODBC.INI" ); 
-    */
-    /*
-        This returns our data sources but includes "ODBC 32 bit Data Sources" as a data
sources
-        and does not respect config mode. Probably best until we use registery (MS is
getting sloppy
-        in supporting SQLGetPrivateProfileString).
-    */    
-    nChars = GetPrivateProfileString( NULL, NULL, NULL, pszBuffer, nBuffer - 1,
"ODBC.INI" );
-#else
-    nChars = SQLGetPrivateProfileString( NULL, NULL, "", szBuffer, sizeof(szBuffer) - 1,
"ODBC.INI" );
-#endif
+    nChars = SQLGetPrivateProfileString( NULL, NULL, (LPWSTR)MYODBCCL(""), szBuffer,
sizeof(szBuffer) / sizeof(SQLWCHAR), (LPWSTR)MYODBCCL("ODBC.INI") );
     if ( nChars < 1 )
         goto getDataSourceNamesExit1;
 
@@ -244,7 +230,6 @@
         }
     }
 
-
 getDataSourceNamesExit1:
     SQLSetConfigMode( nScopeToRestore );
 
@@ -253,10 +238,10 @@
 
 bool MYODBCInsDataSource::isExistsDataSourceName( const QString
&stringDataSourceName, MYODBC_INS_DATASOURCE_SCOPE nScope )
 {
-    char    szSectionNames[SQL_MAX_DSN_LENGTH * MYODBC_INS_MAX_DSN_NAMES];
-    char *  pszSectionName;
-    bool    bReturn         = false;
-    UWORD   nScopeToRestore = ODBC_BOTH_DSN;
+    SQLWCHAR    szSectionNames[SQL_MAX_DSN_LENGTH * MYODBC_INS_MAX_DSN_NAMES];
+    SQLWCHAR *  pszSectionName;
+    bool        bReturn         = false;
+    UWORD       nScopeToRestore = ODBC_BOTH_DSN;
 
     if ( !SQLGetConfigMode( &nScopeToRestore ) )
         return bReturn;
@@ -281,7 +266,7 @@
                 so we provide first arg and hope that there is at least one 
                 attribute (its likley anyway).
     */
-    if ( SQLGetPrivateProfileString( stringDataSourceName.toLocal8Bit(), NULL, "",
szSectionNames, sizeof( szSectionNames ) - 1, "ODBC.INI" ) > 0 )
+    if ( SQLGetPrivateProfileString( stringDataSourceName.toStdWString().data(), NULL,
(LPWSTR)MYODBCCL(""), szSectionNames, sizeof(szSectionNames) / sizeof(SQLWCHAR),
(LPWSTR)MYODBCCL("ODBC.INI") ) > 0 )
     {
         bReturn = true;
         goto isExistsDataSourceNameExit1;
@@ -289,7 +274,7 @@
     else
         goto isExistsDataSourceNameExit1;
 #else
-    if ( SQLGetPrivateProfileString( NULL, NULL, "", szSectionNames, sizeof(
szSectionNames ) - 1, "ODBC.INI" ) < 1 )
+    if ( SQLGetPrivateProfileString( NULL, NULL, (LPWSTR)MYODBCCL(""), szSectionNames,
sizeof( szSectionNames ) / sizeof(SQLWCHAR), (LPWSTR)MYODBCCL("ODBC.INI") ) < 1 )
         goto isExistsDataSourceNameExit1;
 #endif
     /*!
@@ -298,15 +283,14 @@
     pszSectionName = szSectionNames;
     while( *pszSectionName )
     {
-        QString stringSectionName( pszSectionName );
+        QString stringSectionName( QString::fromStdWString( pszSectionName ) );
 
         if ( QString::localeAwareCompare( stringSectionName.toUpper(),
stringDataSourceName.toUpper() ) == 0 )
         {
             bReturn = true;
             goto isExistsDataSourceNameExit1;
         }
-
-        pszSectionName += strlen( pszSectionName ) + 1;
+        pszSectionName += MYODBCCstrlen( pszSectionName ) + 1;
     }
 
 isExistsDataSourceNameExit1:
@@ -317,12 +301,12 @@
 
 bool MYODBCInsDataSource::doRead( const QString &stringDataSourceName,
MYODBC_INS_DATASOURCE_SCOPE nScope )
 {
-    char    szEntryNames[SQL_MAX_DSN_LENGTH * MYODBC_INS_MAX_DSN_NAMES];
-    char *  pszEntryName;
-    char    szValue[4096];
-    int     nChars  = 0;
-    UWORD   nScopeToRestore = ODBC_BOTH_DSN;
-    bool    bReturn = false;
+    SQLWCHAR    szEntryNames[SQL_MAX_DSN_LENGTH * MYODBC_INS_MAX_DSN_NAMES];
+    SQLWCHAR *  pszEntryName;
+    SQLWCHAR    szValue[4096];
+    int         nChars  = 0;
+    UWORD       nScopeToRestore = ODBC_BOTH_DSN;
+    bool        bReturn = false;
 
     if ( stringDataSourceName.isEmpty() )
         return false;
@@ -333,12 +317,12 @@
     SQLSetConfigMode( (UWORD)nScope );
 
     *szEntryNames = '\0';
-    if ( ( nChars = SQLGetPrivateProfileString( stringDataSourceName.toLocal8Bit(), NULL,
NULL, szEntryNames, sizeof( szEntryNames ) - 1, "ODBC.INI" ) ) < 1 )
+    if ( ( nChars = SQLGetPrivateProfileString(
stringDataSourceName.toStdWString().data(), NULL, NULL, szEntryNames,
sizeof(szEntryNames) / sizeof(SQLWCHAR), (LPWSTR)MYODBCCL("ODBC.INI") ) ) < 1 )
         goto doReadExit1;
 
 #if defined(WIN32)
     {
-        int     nLen    = strlen( szEntryNames );
+        int     nLen    = MYODBCCstrlen( szEntryNames );
 
         /*!
             \note   XP
@@ -358,7 +342,7 @@
             *szEntryNames = '\0';
             SQLSetConfigMode( ODBC_SYSTEM_DSN );
 
-            if ( ( nChars = SQLGetPrivateProfileString( pszDSN, NULL, NULL, szEntryNames,
sizeof( szEntryNames ) - 1, "ODBC.INI" ) ) < 1 )
+            if ( ( nChars = SQLGetPrivateProfileString(
stringDataSourceName.toStdWString().data(), NULL, NULL, szEntryNames,
sizeof(szEntryNames) / sizeof(SQLWCHAR), (LPWSTR)MYODBCCL("ODBC.INI") ) ) < 1 )
                 goto doReadExit1;
         }
     }
@@ -377,14 +361,14 @@
     {
         *szValue = '\0';
 #if defined(WIN32)
-        if ( SQLGetPrivateProfileString( stringDataSourceName.toLocal8Bit(),
pszEntryName, NULL, szValue, sizeof( szValue ) - 1, "ODBC.INI" ) > 0 )
+        if ( SQLGetPrivateProfileString( stringDataSourceName.toStdWString().data(),
pszEntryName, NULL, szValue, sizeof( szValue ) / sizeof(SQLWCHAR),
(LPWSTR)MYODBCCL("ODBC.INI") ) > 0 )
 #else
-        if ( SQLGetPrivateProfileString( stringDataSourceName.toLocal8Bit(),
pszEntryName, "", szValue, sizeof( szValue ) - 1, "ODBC.INI" ) > 0 )
+        if ( SQLGetPrivateProfileString( stringDataSourceName.toStdWString().data(),
pszEntryName, (LPWSTR)MYODBCCL(""), szValue, sizeof( szValue ) / sizeof(SQLWCHAR),
(LPWSTR)MYODBCCL("ODBC.INI") ) > 0 )
 #endif
         {
-            QString stringEntryName( pszEntryName );
+            QString stringEntryName( QString::fromStdWString( pszEntryName ) );
             QString stringEntryNameUpper = stringEntryName.toUpper();
-            QString stringValue( szValue );
+            QString stringValue( QString::fromStdWString( szValue ) );
 
             /*!
                 \internal ODBC Rule
@@ -399,100 +383,100 @@
             if ( QString::localeAwareCompare( stringEntryNameUpper, "DATABASE" ) == 0 ||
QString::localeAwareCompare( stringEntryNameUpper, "DB" ) == 0 )
             {
                 if ( stringDATABASE.isNull() )
-                    stringDATABASE = szValue;
+                    stringDATABASE = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "DESCRIPTION" )
== 0 || QString::localeAwareCompare( stringEntryNameUpper, "DESC" ) == 0 )
             {
                 if ( stringDESCRIPTION.isNull() )
-                    stringDESCRIPTION = szValue;
+                    stringDESCRIPTION = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "DRIVER" ) == 0
)
             {
 #if defined(WIN32)
                 if ( stringDriverFileName.isEmpty() )
-                    stringDriverFileName = szValue;
+                    stringDriverFileName = QString::fromStdWString( szValue );
 #else
                 if ( *szValue == '/' )
                 {
                     if ( stringDriverFileName.isEmpty() )
-                        stringDriverFileName = szValue;
+                        stringDriverFileName = QString::fromStdWString( szValue );
                 }
                 else
                 {
                     if ( stringDRIVER.isEmpty() )
-                        stringDRIVER = szValue;
+                        stringDRIVER = QString::fromStdWString( szValue );
                 }
 #endif
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "OPTION" ) == 0
)
             {    
                 if ( stringOPTION.isNull() )
-                    stringOPTION = szValue;
+                    stringOPTION = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "PWD" ) == 0 ||
QString::localeAwareCompare( stringEntryNameUpper, "PASSWORD" ) == 0 )
             {    
                 if ( stringPASSWORD.isNull() )
-                    stringPASSWORD = szValue;
+                    stringPASSWORD = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "PORT" ) == 0 )
             {    
                 if ( stringPORT.isNull() )
-                    stringPORT = szValue;
+                    stringPORT = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "SERVER" ) == 0
)
             {    
                 if ( stringSERVER.isNull() )
-                    stringSERVER = szValue;
+                    stringSERVER = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "SOCKET" ) == 0
)
             {    
                 if ( stringSOCKET.isNull() )
-                    stringSOCKET = szValue;
+                    stringSOCKET = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "STMT" ) == 0 )
             {    
                 if ( stringSTMT.isNull() )
-                    stringSTMT = szValue;
+                    stringSTMT = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryNameUpper, "UID" ) == 0 ||
QString::localeAwareCompare( stringEntryNameUpper, "USER" ) == 0 )
             {    
                 if ( stringUSER.isNull() )
-                    stringUSER = szValue;
+                    stringUSER = QString::fromStdWString( szValue );
             }
             else
             {
                 /* What the ? */
-                fprintf( stderr, "[%s][%d][ERROR] Unknown attribute (%s).\n", __FILE__,
__LINE__, pszEntryName );
+                MYODBCCfprintf( stderr, MYODBCCL("[%s][%d][ERROR] Unknown attribute
(%s).\n"), __FILE__, __LINE__, pszEntryName );
             }
         }
         else
-            fprintf( stderr, "[%s][%d][WARNING] Failed to get value for attribute
(%s).\n", __FILE__, __LINE__, pszEntryName );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d][WARNING] Failed to get value for
attribute (%s).\n"), __FILE__, __LINE__, pszEntryName );
 
-        pszEntryName += strlen( pszEntryName ) + 1;
+        pszEntryName += MYODBCCstrlen( pszEntryName ) + 1;
     } /* while */
 
 
     /* try harder to get the friendly driver name */
     if ( stringDRIVER.isEmpty() )
     {
-        if ( SQLGetPrivateProfileString( MYODBC_INS_ODBCINI_HEADER_SECTION, NULL, NULL,
szEntryNames, sizeof( szEntryNames ) - 1, "ODBC.INI" ) < 1 )
+        if ( SQLGetPrivateProfileString( MYODBC_INS_ODBCINI_HEADER_SECTION, NULL, NULL,
szEntryNames, sizeof(szEntryNames) / sizeof(SQLWCHAR), (LPWSTR)MYODBCCL("ODBC.INI") )
< 1 )
             goto doReadExit1;
 
         pszEntryName = szEntryNames;
         while ( *pszEntryName )
         {
-            QString stringEntryName( pszEntryName );
+            QString stringEntryName( QString::fromStdWString( pszEntryName ) );
             *szValue = '\0';
-            if ( SQLGetPrivateProfileString( MYODBC_INS_ODBCINI_HEADER_SECTION,
pszEntryName, NULL, szValue, sizeof( szValue ) - 1, "ODBC.INI" ) > 0 )
+            if ( SQLGetPrivateProfileString( MYODBC_INS_ODBCINI_HEADER_SECTION,
pszEntryName, NULL, szValue, sizeof(szValue) / sizeof(SQLWCHAR),
(LPWSTR)MYODBCCL("ODBC.INI") ) > 0 )
             {
 
                 if ( QString::localeAwareCompare( stringEntryName.toUpper(),
stringDataSourceName.toUpper() ) == 0 )
                 {
-                    stringDRIVER = szValue;
+                    stringDRIVER = QString::fromStdWString( szValue );
                     break;
                 }
             }
-            pszEntryName += strlen( pszEntryName ) + 1;
+            pszEntryName += MYODBCCstrlen( pszEntryName ) + 1;
         }
     }
 
@@ -539,40 +523,40 @@
         So we ensure that any existing DSN with same name is removed
         with the following call.
     */     
-    if ( !SQLRemoveDSNFromIni( stringDSN.toLocal8Bit() ) )
+    if ( !SQLRemoveDSNFromIni( stringDSN.toStdWString().data() ) )
         goto doReadExit1;
 
     /* create/replace data source name */
-    if ( !SQLWriteDSNToIni( stringDSN.toLocal8Bit(), stringDRIVER.toLocal8Bit() ) )
+    if ( !SQLWriteDSNToIni( stringDSN.toStdWString().data(),
stringDRIVER.toStdWString().data() ) )
         goto doReadExit1;
 
     /* add details */
     if ( !stringDATABASE.isNull() && 
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "DATABASE",
stringDATABASE.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("DATABASE"), stringDATABASE.toStdWString().data(),
(LPWSTR)MYODBCCL("odbc.ini") ) )
         goto doReadExit1;
     if ( !stringDESCRIPTION.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "DESCRIPTION",
stringDESCRIPTION.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("DESCRIPTION"), stringDESCRIPTION.toStdWString().data(),
(LPWSTR)MYODBCCL("odbc.ini") ) )
         goto doReadExit1;
     if ( !stringOPTION.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "OPTION",
stringOPTION.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("OPTION"), stringOPTION.toStdWString().data(),
(LPWSTR)MYODBCCL("odbc.ini") ) )
         goto doReadExit1;
     if ( !stringPASSWORD.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "PWD",
stringPASSWORD.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("PWD"), stringPASSWORD.toStdWString().data(),
(LPWSTR)MYODBCCL("odbc.ini") ) )
         goto doReadExit1;
     if ( !stringPORT.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "PORT",
stringPORT.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("PORT"), stringPORT.toStdWString().data(), (LPWSTR)MYODBCCL("odbc.ini")
) )
         goto doReadExit1;
     if ( !stringSERVER.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "SERVER",
stringSERVER.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("SERVER"), stringSERVER.toStdWString().data(),
(LPWSTR)MYODBCCL("odbc.ini") ) )
         goto doReadExit1;
     if ( !stringSOCKET.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "SOCKET",
stringSOCKET.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("SOCKET"), stringSOCKET.toStdWString().data(),
(LPWSTR)MYODBCCL("odbc.ini") ) )
         goto doReadExit1;
     if ( !stringSTMT.isNull() && 
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "STMT",
stringSTMT.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("STMT"), stringSTMT.toStdWString().data(), (LPWSTR)MYODBCCL("odbc.ini")
) )
         goto doReadExit1;
     if ( !stringUSER.isNull() &&
-         !SQLWritePrivateProfileString( stringDSN.toLocal8Bit(), "UID",
stringUSER.toLocal8Bit(), "odbc.ini" ) )
+         !SQLWritePrivateProfileString( stringDSN.toStdWString().data(),
(LPWSTR)MYODBCCL("UID"), stringUSER.toStdWString().data(), (LPWSTR)MYODBCCL("odbc.ini") )
)
         goto doReadExit1;
 
     bReturn = true;
@@ -607,7 +591,7 @@
 
 bool MYODBCInsDataSource::doDelete( const QString &stringDataSourceName )
 {
-    return SQLRemoveDSNFromIni( stringDataSourceName.toLocal8Bit() );
+    return SQLRemoveDSNFromIni( stringDataSourceName.toStdWString().data() );
 }
 
 MYODBCInsDataSource MYODBCInsDataSource::operator=( MYODBCInsDataSource rval )

Modified: MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp
===================================================================
--- MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp	2005-12-27 20:07:41 UTC (rev 18)
@@ -78,20 +78,16 @@
 */  
 QStringList MYODBCInsDriver::getDriverNames()
 {
-    char        szBuffer[50000];
+    SQLWCHAR    szBuffer[50000];
     int         nChars = 0;
     int         nChar  = 0;
     QStringList stringlistFriendlyNames;
     QString     stringFriendlyName = QString::null;
 
-#if defined(WIN32)
-    nChars = ( SQLGetInstalledDrivers( szBuffer, sizeof(szBuffer) - 1, NULL ) ? 1 : 0 );
-#else
-    nChars = SQLGetPrivateProfileString( NULL, NULL, "", szBuffer, sizeof(szBuffer) - 1,
"ODBCINST.INI" );
-#endif
+    nChars = ( SQLGetInstalledDrivers( szBuffer, sizeof(szBuffer) / sizeof(SQLWCHAR),
NULL ) ? 1 : 0 );
     if ( nChars < 1 )
     {
-        fprintf( stderr, "[%s][%d][INFO] Call returned no data. Could be an error or just
no data to return.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, MYODBCCL("[%s][%d][INFO] Call returned no data. Could be
an error or just no data to return.\n"), __FILE__, __LINE__ );
         return stringlistFriendlyNames;
     }
 
@@ -118,14 +114,14 @@
 
 bool MYODBCInsDriver::doRead( const QString &stringFriendlyName )
 {
-    char    szEntryNames[SQL_MAX_DSN_LENGTH * MYODBC_INS_MAX_DSN_NAMES];
-    char *  pszEntryName;
-    char    szValue[4096];
+    SQLWCHAR    szEntryNames[SQL_MAX_DSN_LENGTH * MYODBC_INS_MAX_DSN_NAMES];
+    SQLWCHAR *  pszEntryName;
+    SQLWCHAR    szValue[4096];
 
     if ( stringFriendlyName.isEmpty() )
         return false;
 
-    if ( SQLGetPrivateProfileString( stringFriendlyName.toLocal8Bit(), NULL, "",
szEntryNames, sizeof( szEntryNames ) - 1, "ODBCINST.INI" ) < 1 )
+    if ( SQLGetPrivateProfileString( stringFriendlyName.toStdWString().data(), NULL,
(LPWSTR)MYODBCCL(""), szEntryNames, sizeof(szEntryNames) / sizeof(SQLWCHAR),
(LPWSTR)MYODBCCL("ODBCINST.INI") ) < 1 )
         return false;
 
     /* we do not do a doClear() here because we want to 'merge' the data - not replace it
*/
@@ -140,26 +136,26 @@
     while ( *pszEntryName )
     {
         *szValue = '\0';
-        if ( SQLGetPrivateProfileString( stringFriendlyName.toLocal8Bit(), pszEntryName,
"", szValue, sizeof( szValue ) - 1, "ODBCINST.INI" ) > 0 )
+        if ( SQLGetPrivateProfileString( stringFriendlyName.toStdWString().data(),
pszEntryName, (LPWSTR)MYODBCCL(""), szValue, sizeof(szValue) / sizeof(SQLWCHAR),
(LPWSTR)MYODBCCL("ODBCINST.INI") ) > 0 )
         {
-            QString stringEntryName( pszEntryName );
+            QString stringEntryName = QString::fromStdWString( pszEntryName );
 
             if ( QString::localeAwareCompare( stringEntryName.toUpper(), "DRIVER" ) == 0
)
             {
                 if ( stringDRIVER.isEmpty() )
-                    stringDRIVER = szValue;
+                    stringDRIVER = QString::fromStdWString( szValue );
             }
             else if ( QString::localeAwareCompare( stringEntryName.toUpper(), "SETUP" )
== 0 )
             {
                 if ( stringSETUP.isEmpty() )
-                    stringSETUP = szValue;
+                    stringSETUP = QString::fromStdWString( szValue );
             }
             else
             {
                 /* What the ? */
             }
         }
-        pszEntryName += strlen( pszEntryName ) + 1;
+        pszEntryName += MYODBCCstrlen( pszEntryName ) + 1;
     } /* while */
 
     return true;
@@ -168,13 +164,13 @@
 bool MYODBCInsDriver::doWrite()
 {
     if ( !stringFriendlyName.isEmpty() && 
-         !SQLWritePrivateProfileString( stringFriendlyName.toLocal8Bit(), NULL, NULL,
"ODBCINST.INI" ) )
+         !SQLWritePrivateProfileString( stringFriendlyName.toStdWString().data(), NULL,
NULL, (LPWSTR)MYODBCCL("ODBCINST.INI") ) )
         return false;
     if ( !stringDRIVER.isEmpty() &&
-         !SQLWritePrivateProfileString( stringFriendlyName.toLocal8Bit(), "DRIVER",
stringDRIVER.toLocal8Bit(), "ODBCINST.INI" ) )
+         !SQLWritePrivateProfileString( stringFriendlyName.toStdWString().data(),
(LPWSTR)MYODBCCL("DRIVER"), stringDRIVER.toStdWString().data(),
(LPWSTR)MYODBCCL("ODBCINST.INI") ) )
         return false;
     if ( !stringSETUP.isEmpty() &&
-         !SQLWritePrivateProfileString( stringFriendlyName.toLocal8Bit(), "SETUP",
stringSETUP.toLocal8Bit(), "ODBCINST.INI" ) )
+         !SQLWritePrivateProfileString( stringFriendlyName.toStdWString().data(),
(LPWSTR)MYODBCCL("SETUP"), stringSETUP.toStdWString().data(),
(LPWSTR)MYODBCCL("ODBCINST.INI") ) )
         return false;
 
     return true;
@@ -189,7 +185,7 @@
 
 bool MYODBCInsDriver::doDelete( const QString &stringDriverName, bool
bRemoveDataSourceNames, LPDWORD pnUsageCount )
 {
-    return SQLRemoveDriver( stringDriverName.toLocal8Bit(), bRemoveDataSourceNames,
pnUsageCount );
+    return SQLRemoveDriver( stringDriverName.toStdWString().data(),
bRemoveDataSourceNames, pnUsageCount );
 }
 
 MYODBCInsDriver MYODBCInsDriver::operator=( MYODBCInsDriver rval )

Modified: MYODBCIns/MYODBCInsLib/MYODBCInsDriverConnect.cpp
===================================================================
--- MYODBCIns/MYODBCInsLib/MYODBCInsDriverConnect.cpp	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/MYODBCInsLib/MYODBCInsDriverConnect.cpp	2005-12-27 20:07:41 UTC (rev 18)
@@ -183,7 +183,7 @@
                 }
                 break;
             default:
-                fprintf( stderr, "[%s][%d][ERROR] Unhandled state.\n", __FILE__, __LINE__
);
+                MYODBCCfprintf( stderr, MYODBCCL("[%s][%d][ERROR] Unhandled state.\n"),
__FILE__, __LINE__ );
                 return false;
         }
 

Modified: MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp
===================================================================
--- MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp	2005-12-27 20:07:41 UTC (rev 18)
@@ -18,7 +18,9 @@
     driver.setSETUP( "mytestSetup.so" );
 
     if ( !driver.doWrite() )
+    {
         return 0;
+    }
 
     QTextStream textstream( &stringOutput );
     textstream << driver;
@@ -156,6 +158,9 @@
     };
     int n;
 
+    gpMYODBCDbg = new MYODBCDbg( 
+
+
     for ( n = 0; tests[n].name; n++ )
     {
         printf( "%-40s", tests[n].name ); 

Modified: MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro
===================================================================
--- MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro	2005-12-27 20:07:41 UTC (rev 18)
@@ -14,6 +14,10 @@
 LIBS		+= -L../../lib
 LIBS		+= -lMYODBCIns
 
+win32 {
+        LIBS += kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
shell32.lib ole32.lib oleaut32.lib uuid.lib
+}
+
 # #########################################################
 # FILES
 # #########################################################

Modified: MYODBCIns/include/MYODBCInsDataSource.h
===================================================================
--- MYODBCIns/include/MYODBCInsDataSource.h	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/include/MYODBCInsDataSource.h	2005-12-27 20:07:41 UTC (rev 18)
@@ -2,6 +2,7 @@
 #define MYODBC_INS_DATASOURCE_H
 
 #include <MYODBCC.h>
+#include <MYODBCDbg.h>
 
 #include <QString>
 #include <QStringList>

Modified: MYODBCIns/include/MYODBCInsDriver.h
===================================================================
--- MYODBCIns/include/MYODBCInsDriver.h	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCIns/include/MYODBCInsDriver.h	2005-12-27 20:07:41 UTC (rev 18)
@@ -2,6 +2,7 @@
 #define MYODBC_INS_DRIVER_H
 
 #include <MYODBCC.h>
+#include <MYODBCDbg.h>
 
 #include <QString>
 #include <QStringList>

Modified: MYODBCInstaller/MYODBCInstaller.c
===================================================================
--- MYODBCInstaller/MYODBCInstaller.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCInstaller/MYODBCInstaller.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -144,7 +144,7 @@
                    (LPTSTR)&pszMsg,
                    0, 
                    NULL );
-    fprintf( stderr, pszMsg );
+    MYODBCCfprintf( stderr, pszMsg );
     LocalFree( pszMsg );
 }
 #endif
@@ -168,9 +168,9 @@
 
     nReturn = SQLInstallerError( nRecord, &nError, szError, SQL_MAX_MESSAGE_LENGTH -
1, 0 );
     if ( SQL_SUCCEEDED( nReturn ) )
-        fprintf( stderr, "[%s][%d][ERROR] ODBC Installer error %d: %s\n", pszFile, nLine,
(int)nError, szError );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] ODBC Installer error %d: %s\n", pszFile,
nLine, (int)nError, szError );
     else
-        fprintf( stderr, "[%s][%d][ERROR] ODBC Installer error (unknown)\n", pszFile,
nLine );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] ODBC Installer error (unknown)\n",
pszFile, nLine );
 }
 
 
@@ -310,7 +310,7 @@
         case 's':
             return doQueryDataSource();
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -327,7 +327,7 @@
     if ( !MYODBCInsGetDriverNames( szBuffer, nBuffer ) )
     {
         doPrintInstallerError( __FILE__, __LINE__ );
-        fprintf( stderr, "[%s][%d][WARNING] Failed to get driver names. Perhaps none
installed?\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][WARNING] Failed to get driver names. Perhaps
none installed?\n", __FILE__, __LINE__ );
         return 0;
     }
 
@@ -348,7 +348,7 @@
 
     if ( !MYODBCInsReadDriver( pDriver, pszName ) )
     {
-        fprintf( stderr, "[%s][%d][WARNING] Could not load (%s)\n", __FILE__, __LINE__,
pszName );
+        MYODBCCfprintf( stderr, "[%s][%d][WARNING] Could not load (%s)\n", __FILE__,
__LINE__, pszName );
         goto doQueryDriverNameExit1;   
     }
 
@@ -390,7 +390,7 @@
                 nReturn = MYODBCInsGetDataSourceNames( szBuffer, nBuffer, ODBC_SYSTEM_DSN
);
             break;
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Invalid object type qualifier
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Invalid object type qualifier
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -433,7 +433,7 @@
 
     if ( !MYODBCInsReadDataSource( pDataSource, pszName ) )
     {
-        fprintf( stderr, "[%s][%d][WARNING] Could not load (%s)\n", __FILE__, __LINE__,
pszName );
+        MYODBCCfprintf( stderr, "[%s][%d][WARNING] Could not load (%s)\n", __FILE__,
__LINE__, pszName );
         goto doQueryDataSourceNameExit1;   
     }
 
@@ -479,7 +479,7 @@
         case 's':
             return doAddDataSource();
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -533,7 +533,7 @@
 
     if ( !pszAttributes )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Please provide driver attributes.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Please provide driver attributes.\n",
__FILE__, __LINE__ );
         return 0;
     }
 
@@ -561,7 +561,7 @@
     if ( !SQLInstallDriverEx( pszDriverInfo, 0, szLoc, FILENAME_MAX, &nLocLen,
ODBC_INSTALL_COMPLETE, &nUsageCount ) )
     {
         doPrintInstallerError( __FILE__, __LINE__ );
-        fprintf( stderr, "[%s][%d][ERROR] Failed to register driver\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to register driver\n", __FILE__,
__LINE__ );
         free( pszDriverInfo );
         return 0;
     }
@@ -585,7 +585,7 @@
             if ( !SQLSetConfigMode( (UWORD)ODBC_USER_DSN ) )
             {
                 doPrintInstallerError( __FILE__, __LINE__ );
-                fprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
+                MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
                 return 0;
             }
             nReturn = doConfigDataSource( ODBC_ADD_DSN );
@@ -595,14 +595,14 @@
             if ( !SQLSetConfigMode( (UWORD)ODBC_SYSTEM_DSN ) )
             {
                 doPrintInstallerError( __FILE__, __LINE__ );
-                fprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
+                MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
                 return 0;
             }
             nReturn = doConfigDataSource( ODBC_ADD_DSN );
             SQLSetConfigMode( (UWORD)ODBC_BOTH_DSN );
             break;
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Missing or invalid object sub-type
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Missing or invalid object sub-type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -618,7 +618,7 @@
         case 's':
             return doEditDataSource();
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -642,7 +642,7 @@
             if ( !SQLSetConfigMode( ODBC_USER_DSN ) )
             {
                 doPrintInstallerError( __FILE__, __LINE__ );
-                fprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
+                MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
                 return 0;
             }
             nReturn = doConfigDataSource( ODBC_CONFIG_DSN );
@@ -652,14 +652,14 @@
             if ( !SQLSetConfigMode( ODBC_SYSTEM_DSN ) )
             {
                 doPrintInstallerError( __FILE__, __LINE__ );
-                fprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
+                MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
                 return 0;
             }
             nReturn = doConfigDataSource( ODBC_CONFIG_DSN );
             SQLSetConfigMode( ODBC_BOTH_DSN );
             break;
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Invalid object sub-type specified.\n",
__FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Invalid object sub-type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -675,7 +675,7 @@
         case 's':
             return doRemoveDataSource();
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Missing or invalid object type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -695,14 +695,14 @@
 
     if ( !pszName )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Please provide driver name.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Please provide driver name.\n",
__FILE__, __LINE__ );
         return 0;
     }
 
     if ( !SQLRemoveDriver( pszName, bRemoveDSNs, &nUsageCount ) )
     {
         doPrintInstallerError( __FILE__, __LINE__ );
-        fprintf( stderr, "[%s][%d][ERROR] Failed to deregister driver.\n", __FILE__,
__LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to deregister driver.\n",
__FILE__, __LINE__ );
         return 0;
     }
 
@@ -723,7 +723,7 @@
             if ( !SQLSetConfigMode( ODBC_USER_DSN ) )
             {
                 doPrintInstallerError( __FILE__, __LINE__ );
-                fprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
+                MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
                 return 0;
             }
             nReturn = doRemoveDataSourceName();
@@ -732,13 +732,13 @@
             if ( !SQLSetConfigMode( ODBC_SYSTEM_DSN ) )
             {
                 doPrintInstallerError( __FILE__, __LINE__ );
-                fprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
+                MYODBCCfprintf( stderr, "[%s][%d][ERROR] Failed to set config mode.\n",
__FILE__, __LINE__ );
                 return 0;
             }
             nReturn = doRemoveDataSourceName();
             SQLSetConfigMode( ODBC_BOTH_DSN );
         default:
-            fprintf( stderr, "[%s][%d][ERROR] Missing or invalid object sub-type
specified.\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Missing or invalid object sub-type
specified.\n", __FILE__, __LINE__ );
             return 0;
     }
 
@@ -753,7 +753,7 @@
     if ( SQLRemoveDSNFromIni( pszName ) == 0 )
     {
         doPrintInstallerError( __FILE__, __LINE__ );
-        fprintf( stderr, "[%s][%d][ERROR] Request failed.\n", __FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Request failed.\n", __FILE__, __LINE__
);
         return 0;
     }
 
@@ -802,14 +802,14 @@
     /* sanity check */
     if ( !pszAttributes )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Please provide an attributes string.\n",
__FILE__, __LINE__ );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Please provide an attributes string.\n",
__FILE__, __LINE__ );
         goto doConfigDataSourceExit2;   
     }
 
     /* parse given attribute string */
     if ( !MYODBCInsReadDataSourceStr( pDataSourceGiven, MYODBC_INS_DELIM_SEMI,
pszAttributes ) )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Malformed attribute string (%s)\n", __FILE__,
__LINE__, pszAttributes );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Malformed attribute string (%s)\n",
__FILE__, __LINE__, pszAttributes );
         goto doConfigDataSourceExit2;
     }
 
@@ -817,20 +817,20 @@
     if ( nRequest == ODBC_ADD_DSN )
     {
         if ( !pDataSourceGiven->pszDRIVER )
-            fprintf( stderr, "[%s][%d][WARNING] DRIVER attribute not provided - using
%s.\n", __FILE__, __LINE__, pszDriver );
+            MYODBCCfprintf( stderr, "[%s][%d][WARNING] DRIVER attribute not provided -
using %s.\n", __FILE__, __LINE__, pszDriver );
     }
     else
     {
         if ( !pDataSourceGiven->pszDSN )
         {
-            fprintf( stderr, "[%s][%d][ERROR] Please provide DSN attribute.\n", __FILE__,
__LINE__ );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Please provide DSN attribute.\n",
__FILE__, __LINE__ );
             goto doConfigDataSourceExit2;
         }
 
         /* get driver name for given dsn */
         if ( !MYODBCInsReadDataSource( pDataSource, pDataSourceGiven->pszDSN ) )
         {
-            fprintf( stderr, "[%s][%d][ERROR] Could not load data source name info
(%s)\n", __FILE__, __LINE__, pDataSourceGiven->pszDSN );
+            MYODBCCfprintf( stderr, "[%s][%d][ERROR] Could not load data source name info
(%s)\n", __FILE__, __LINE__, pDataSourceGiven->pszDSN );
             goto doConfigDataSourceExit2;
         }
 
@@ -840,7 +840,7 @@
     /* get setup library name */
     if ( !MYODBCInsReadDriver( pDriver, pszDriver ) )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Could not load driver info (%s)\n", __FILE__,
__LINE__, pszDriver );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Could not load driver info (%s)\n",
__FILE__, __LINE__, pszDriver );
         goto doConfigDataSourceExit2;   
     }
 
@@ -853,7 +853,7 @@
     if ( !hLib )
     {
         doPrintLastErrorString();
-        fprintf( stderr, "[%s][%d][ERROR] Could not load driver setup library (%s).\n",
__FILE__, __LINE__, pDriver->pszSETUP );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Could not load driver setup library
(%s).\n", __FILE__, __LINE__, pDriver->pszSETUP );
         goto doConfigDataSourceExit2;   
     }
 
@@ -862,7 +862,7 @@
     if ( !pFunc )
     {
         doPrintLastErrorString();
-        fprintf( stderr, "[%s][%d][ERROR] Could not find ConfigDSN in (%s).\n", __FILE__,
__LINE__, pDriver->pszSETUP );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Could not find ConfigDSN in (%s).\n",
__FILE__, __LINE__, pDriver->pszSETUP );
         goto doConfigDataSourceExit1;
     }
 #else
@@ -870,7 +870,7 @@
     lt_dlinit();
     if ( !(hLib = lt_dlopen( pDriver->pszSETUP )) )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Could not load driver setup library (%s). Error
is %s\n", __FILE__, __LINE__, pDriver->pszSETUP, lt_dlerror() );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Could not load driver setup library
(%s). Error is %s\n", __FILE__, __LINE__, pDriver->pszSETUP, lt_dlerror() );
         goto doConfigDataSourceExit2;   
     }
 
@@ -878,7 +878,7 @@
     pFunc = (BOOL (*)(HWND, WORD, LPCSTR, LPCSTR )) lt_dlsym( hLib, "ConfigDSN" );
     if ( !pFunc )
     {
-        fprintf( stderr, "[%s][%d][ERROR] Could not find ConfigDSN in (%s). Error is
%s\n", __FILE__, __LINE__, pDriver->pszSETUP, lt_dlerror() );
+        MYODBCCfprintf( stderr, "[%s][%d][ERROR] Could not find ConfigDSN in (%s). Error
is %s\n", __FILE__, __LINE__, pDriver->pszSETUP, lt_dlerror() );
         goto doConfigDataSourceExit1;   
     }
 #endif

Modified: MYODBCShell/MYODBCShell.c
===================================================================
--- MYODBCShell/MYODBCShell.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCShell/MYODBCShell.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -36,7 +36,7 @@
 
     if ( argc < 2 )
     {
-        fprintf( stderr, szSyntax );
+        MYODBCCfprintf( stderr, szSyntax );
         exit( 1 );
     }
 
@@ -93,14 +93,14 @@
                 case 'l':
                     if ( !setlocale( LC_ALL, argv[nArg]+2 ))
                     {
-                        fprintf( stderr, "MYODBCShell: can't set locale to '%s'\n",
argv[nArg]+2 );
+                        MYODBCCfprintf( stderr, "MYODBCShell: can't set locale to
'%s'\n", argv[nArg]+2 );
                         exit ( -1 );
                     }
                     break;
 #endif
 
                 default:
-                    fprintf( stderr, szSyntax );
+                    MYODBCCfprintf( stderr, szSyntax );
                     exit( 1 );
             }
             continue;
@@ -288,20 +288,20 @@
 
     if ( SQLAllocHandle( SQL_HANDLE_ENV, NULL, phEnv ) != SQL_SUCCESS )
     {
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocEnv\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocEnv\n" );
         return 0;
     }
 
     if ( SQLSetEnvAttr( *phEnv, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, 0 ) !=
SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, 0, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLSetEnvAttr to set version to
SQL_OV_ODBC3\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLSetEnvAttr to set
version to SQL_OV_ODBC3\n" );
     }
 
     if ( SQLAllocHandle( SQL_HANDLE_DBC, *phEnv, phDbc ) != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, 0, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocConnect\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocConnect\n" );
         SQLFreeEnv( *phEnv );
         return 0;
     }
@@ -317,7 +317,7 @@
     if ( !SQL_SUCCEEDED( nReturn ) )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLConnect\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLConnect\n" );
         SQLFreeConnect( *phDbc );
         SQLFreeEnv( *phEnv );
         return 0;
@@ -344,14 +344,14 @@
     if ( SQLAllocStmt( hDbc, &hStmt ) != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
         return 0;
     }
 
     if ( SQLPrepare( hStmt, (SQLCHAR*)szSQL, SQL_NTS ) != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLPrepare\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLPrepare\n" );
         SQLFreeStmt( hStmt, SQL_DROP );
         return 0;
     }
@@ -360,17 +360,17 @@
 
     if ( ret == SQL_NO_DATA )
     {
-        fprintf( stderr, "[MYODBCShell]INFO: SQLExecute returned SQL_NO_DATA\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]INFO: SQLExecute returned SQL_NO_DATA\n" );
     }
     else if ( ret == SQL_SUCCESS_WITH_INFO )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-        fprintf( stderr, "[MYODBCShell]INFO: SQLExecute returned SQL_SUCCESS_WITH_INFO\n"
);
+        MYODBCCfprintf( stderr, "[MYODBCShell]INFO: SQLExecute returned
SQL_SUCCESS_WITH_INFO\n" );
     }
     else if ( ret != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLExecute\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLExecute\n" );
         SQLFreeStmt( hStmt, SQL_DROP );
         return 0;
     }
@@ -390,7 +390,7 @@
         if ( SQLNumResultCols( hStmt, &cols ) != SQL_SUCCESS )
         {
             if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-            fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLNunResultCols\n" );
+            MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLNunResultCols\n" );
             SQLFreeStmt( hStmt, SQL_DROP );
             return 0;
         }
@@ -454,7 +454,7 @@
     if ( SQLAllocStmt( hDbc, &hStmt ) != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
         return 0;
     }
 
@@ -465,7 +465,7 @@
         if ( (nReturn != SQL_SUCCESS) && (nReturn != SQL_SUCCESS_WITH_INFO) )
         {
             if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-            fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLColumns\n" );
+            MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLColumns\n" );
             SQLFreeStmt( hStmt, SQL_DROP );
             return 0;
         }
@@ -477,7 +477,7 @@
         if ( (nReturn != SQL_SUCCESS) && (nReturn != SQL_SUCCESS_WITH_INFO) )
         {
             if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-            fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLTables\n" );
+            MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLTables\n" );
             SQLFreeStmt( hStmt, SQL_DROP );
             return 0;
         }
@@ -548,7 +548,7 @@
     if ( SQLAllocStmt( hDbc, &hStmt ) != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
         return 0;
     }
 
@@ -581,7 +581,7 @@
     if ( !SQL_SUCCEEDED( nReturn ) )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLTables\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLTables\n" );
         SQLFreeStmt( hStmt, SQL_DROP );
         return 0;
     }
@@ -651,7 +651,7 @@
     if ( SQLAllocStmt( hDbc, &hStmt ) != SQL_SUCCESS )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, 0 );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLAllocStmt\n" );
         return 0;
     }
 
@@ -685,7 +685,7 @@
     if ( !SQL_SUCCEEDED( nReturn ) )
     {
         if ( bVerbose ) DumpODBCLog( hEnv, hDbc, hStmt );
-        fprintf( stderr, "[MYODBCShell]ERROR: Could not SQLColumns\n" );
+        MYODBCCfprintf( stderr, "[MYODBCShell]ERROR: Could not SQLColumns\n" );
         SQLFreeStmt( hStmt, SQL_DROP );
         return 0;
     }
@@ -1018,7 +1018,7 @@
                                              &nTextLength )) )
         {
             szState[5] = '\0';
-            fprintf( stderr, "[%s]%s\n", szState, szMessageText );
+            MYODBCCfprintf( stderr, "[%s]%s\n", szState, szMessageText );
             nRecord++;
         }
     }
@@ -1036,7 +1036,7 @@
                                              &nTextLength )) )
         {
             szState[5] = '\0';
-            fprintf( stderr, "[%s]%s\n", szState, szMessageText );
+            MYODBCCfprintf( stderr, "[%s]%s\n", szState, szMessageText );
             nRecord++;
         }
     }
@@ -1054,7 +1054,7 @@
                                              &nTextLength )) )
         {
             szState[5] = '\0';
-            fprintf( stderr, "[%s]%s\n", szState, szMessageText );
+            MYODBCCfprintf( stderr, "[%s]%s\n", szState, szMessageText );
             nRecord++;
         }
     }
@@ -1074,7 +1074,7 @@
     {
         while ( SQLError( hEnv, hDbc, hStmt, szSqlState, &nNativeError, szError, 500,
&nErrorMsg ) == SQL_SUCCESS )
         {
-            fprintf( stderr, "[%s]%s\n", szSqlState, szError );
+            MYODBCCfprintf( stderr, "[%s]%s\n", szSqlState, szError );
         }
     }
 
@@ -1082,7 +1082,7 @@
     {
         while ( SQLError( hEnv, hDbc, 0, szSqlState, &nNativeError, szError, 500,
&nErrorMsg ) == SQL_SUCCESS )
         {
-            fprintf( stderr, "[%s]%s\n", szSqlState, szError );
+            MYODBCCfprintf( stderr, "[%s]%s\n", szSqlState, szError );
         }
     }
 
@@ -1090,7 +1090,7 @@
     {
         while ( SQLError( hEnv, 0, 0, szSqlState, &nNativeError, szError, 500,
&nErrorMsg ) == SQL_SUCCESS )
         {
-            fprintf( stderr, "[%s]%s\n", szSqlState, szError );
+            MYODBCCfprintf( stderr, "[%s]%s\n", szSqlState, szError );
         }
     }
 

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstAllocHandle.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstAllocHandle.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstAllocHandle.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -46,14 +46,14 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         case SQL_ERROR: /* any diag info is in hInputHandle */
             switch ( nHandleType )
             {
                 case SQL_HANDLE_ENV:
-                    fprintf( stderr, "[%s][%d] SQL_ERROR\n", __FILE__, __LINE__ );
+                    MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_ERROR\n"), __FILE__,
__LINE__ );
                     break;
                 case SQL_HANDLE_DBC:
                     MYODBCTstPrintDiagnostics( SQL_HANDLE_ENV, hInputHandle );
@@ -65,12 +65,12 @@
                     MYODBCTstPrintDiagnostics( SQL_HANDLE_DBC, hInputHandle );
                     break;
                 default:
-                    fprintf( stderr, "[%s][%d] Invalid handle type %d\n", __FILE__,
__LINE__, nHandleType );
+                    MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid handle type
%d\n"), __FILE__, __LINE__, nHandleType );
             }
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstCloseCursor.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstCloseCursor.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstCloseCursor.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -47,11 +47,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstColumns.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstColumns.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstColumns.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,13 +29,13 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstColumns( SQLHSTMT    hStm,
-                            SQLCHAR *   pszCatalogName,
+                            SQLTCHAR *   pszCatalogName,
                             SQLSMALLINT nNameLength1,
-                            SQLCHAR *   pszSchemaName,
+                            SQLTCHAR *   pszSchemaName,
                             SQLSMALLINT nNameLength2,
-                            SQLCHAR *   pszTableName,
+                            SQLTCHAR *   pszTableName,
                             SQLSMALLINT nNameLength3,
-                            SQLCHAR *   pszColumnName,
+                            SQLTCHAR *   pszColumnName,
                             SQLSMALLINT nNameLength4 )
 {
     SQLRETURN nReturn = SQLColumns( hStm,
@@ -66,11 +66,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstConnect.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstConnect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstConnect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,11 +29,11 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstConnect( SQLHDBC       hDbc, 
-                            SQLCHAR *     pszServerName,
+                            SQLTCHAR *     pszServerName,
                             SQLSMALLINT   nNameLength1,
-                            SQLCHAR *     pszUserName, 
+                            SQLTCHAR *     pszUserName, 
                             SQLSMALLINT   nNameLength2,
-                            SQLCHAR *     pszAuthentication, 
+                            SQLTCHAR *     pszAuthentication, 
                             SQLSMALLINT   nNameLength3 )
 {
     SQLRETURN nReturn = SQLConnect( hDbc, 
@@ -55,11 +55,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstDisconnect.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstDisconnect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstDisconnect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -43,11 +43,11 @@
             return nReturn;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             return nReturn;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return SQL_ERROR;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstDriverConnect.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstDriverConnect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstDriverConnect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -30,9 +30,9 @@
 
 SQLRETURN MYODBCTstDriverConnect( SQLHDBC         hDbc,
                                   SQLHWND         hWnd,
-                                  SQLCHAR *       pszInConnectionString,
+                                  SQLTCHAR *       pszInConnectionString,
                                   SQLSMALLINT     nStringLength1,
-                                  SQLCHAR *       pszOutConnectionString,
+                                  SQLTCHAR *       pszOutConnectionString,
                                   SQLSMALLINT     nBufferLength,
                                   SQLSMALLINT *   pnStringLength2Ptr,
                                   SQLUSMALLINT    nDriverCompletion )
@@ -57,14 +57,14 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         case SQL_NO_DATA:
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstDump.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstDump.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstDump.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -53,7 +53,7 @@
             rec++ )
         {
             message_text[SQL_MAX_MESSAGE_LENGTH - 1] = '\0';
-            fprintf(stderr, "[%s]%s\n", sql_state, message_text);
+            MYODBCCfprintf( stderr, MYODBCCL("[%s]%s\n"), sql_state, message_text );
         }
     }
 
@@ -71,7 +71,7 @@
             rec++ )
         {
             message_text[SQL_MAX_MESSAGE_LENGTH - 1] = '\0';
-            fprintf(stderr, "[%s]%s\n", sql_state, message_text);
+            MYODBCCfprintf( stderr, MYODBCCL("[%s]%s\n"), sql_state, message_text );
         }
     }
 
@@ -89,7 +89,7 @@
             rec++ )
         {
             message_text[SQL_MAX_MESSAGE_LENGTH - 1] = '\0';
-            fprintf(stderr, "[%s]%s\n", sql_state, message_text);
+            MYODBCCfprintf( stderr, MYODBCCL("[%s]%s\n"), sql_state, message_text );
         }
     }
 
@@ -107,7 +107,7 @@
             rec++ )
         {
             message_text[SQL_MAX_MESSAGE_LENGTH - 1] = '\0';
-            fprintf(stderr, "[%s]%s\n", sql_state, message_text);
+            MYODBCCfprintf( stderr, MYODBCCL("[%s]%s\n"), sql_state, message_text );
         }
     }
 }

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstExecDirect.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstExecDirect.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstExecDirect.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,7 +29,7 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstExecDirect( SQLHSTMT   hStm,
-                               SQLCHAR *  pszStatementText,
+                               SQLTCHAR *  pszStatementText,
                                SQLINTEGER nTextLength )
 {
     SQLRETURN nReturn = SQLExecDirect( hStm, 
@@ -58,11 +58,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstExecute.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstExecute.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstExecute.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -54,11 +54,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstFetch.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstFetch.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstFetch.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -43,7 +43,7 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         case SQL_NO_DATA_FOUND:
@@ -51,7 +51,7 @@
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstForeignKeys.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstForeignKeys.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstForeignKeys.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,17 +29,17 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstForeignKeys( SQLHSTMT    hStm,
-                                SQLCHAR *   pszPKCatalogName,
+                                SQLTCHAR *   pszPKCatalogName,
                                 SQLSMALLINT nNameLength1,
-                                SQLCHAR *   pszPKSchemaName,
+                                SQLTCHAR *   pszPKSchemaName,
                                 SQLSMALLINT nNameLength2,
-                                SQLCHAR *   pszPKTableName,
+                                SQLTCHAR *   pszPKTableName,
                                 SQLSMALLINT nNameLength3,
-                                SQLCHAR *   pszFKCatalogName,
+                                SQLTCHAR *   pszFKCatalogName,
                                 SQLSMALLINT nNameLength4,
-                                SQLCHAR *   pszFKSchemaName,
+                                SQLTCHAR *   pszFKSchemaName,
                                 SQLSMALLINT nNameLength5,
-                                SQLCHAR *   pszFKTableName,
+                                SQLTCHAR *   pszFKTableName,
                                 SQLSMALLINT nNameLength6 )
 {
     SQLRETURN nReturn = SQLForeignKeys( hStm,
@@ -74,11 +74,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstFreeHandle.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstFreeHandle.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstFreeHandle.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -44,11 +44,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstGetData.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstGetData.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstGetData.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -54,7 +54,7 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n" );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n") );
             break;
 
         case SQL_NO_DATA_FOUND:
@@ -62,7 +62,7 @@
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstGetTypeInfo.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstGetTypeInfo.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstGetTypeInfo.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -45,14 +45,14 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         case SQL_STILL_EXECUTING:
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstNumResultCols.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstNumResultCols.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstNumResultCols.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -45,14 +45,14 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         case SQL_STILL_EXECUTING:
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstPrepare.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstPrepare.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstPrepare.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,7 +29,7 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstPrepare( SQLHSTMT      hStm,
-                            SQLCHAR *     pszStatementText,
+                            SQLTCHAR *     pszStatementText,
                             SQLINTEGER    nLength1 )
 {
     SQLRETURN nReturn = SQLPrepare( hStm,
@@ -47,14 +47,14 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         case SQL_STILL_EXECUTING:
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstPrimaryKeys.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstPrimaryKeys.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstPrimaryKeys.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,11 +29,11 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstPrimaryKeys( SQLHSTMT    hStm,
-                                SQLCHAR *   pszCatalogName,
+                                SQLTCHAR *   pszCatalogName,
                                 SQLSMALLINT nNameLength1,
-                                SQLCHAR *   pszSchemaName,
+                                SQLTCHAR *   pszSchemaName,
                                 SQLSMALLINT nNameLength2,
-                                SQLCHAR *   pszTableName,
+                                SQLTCHAR *   pszTableName,
                                 SQLSMALLINT nNameLength3 )
 {
     SQLRETURN nReturn = SQLPrimaryKeys( hStm,
@@ -62,11 +62,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstPrintDiagnostics.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstPrintDiagnostics.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstPrintDiagnostics.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -32,9 +32,9 @@
                                      SQLHANDLE      hHandle )
 {
     SQLSMALLINT nRecNumber      = 1;
-    SQLCHAR     szSqlState[6];
+    SQLTCHAR     szSqlState[6];
     SQLINTEGER  nNativeError; 
-    SQLCHAR     szMessageText[1024];
+    SQLTCHAR     szMessageText[1024];
     SQLSMALLINT nBufferLength   = 1023;
     SQLSMALLINT nTextLength;
     SQLRETURN   nReturn;
@@ -49,7 +49,7 @@
                                                       &nTextLength ) ) ) )
     {
         szSqlState[5] = '\0';
-        fprintf( stderr, "[%s] (%d) %s\n", szSqlState, nNativeError, szMessageText ); 
+        MYODBCCfprintf( stderr, MYODBCCL("[%s] (%d) %s\n"), szSqlState, nNativeError,
szMessageText ); 
         nRecNumber++;
     }
 

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstSetEnvAttr.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstSetEnvAttr.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstSetEnvAttr.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -49,11 +49,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return pValue %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return pValue %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstStatistics.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstStatistics.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstStatistics.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,11 +29,11 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstStatistics( SQLHSTMT     hStm,
-                               SQLCHAR *    pszCatalogName,
+                               SQLTCHAR *    pszCatalogName,
                                SQLSMALLINT  nNameLength1,
-                               SQLCHAR *    pszSchemaName,
+                               SQLTCHAR *    pszSchemaName,
                                SQLSMALLINT  nNameLength2,
-                               SQLCHAR *    pszTableName,
+                               SQLTCHAR *    pszTableName,
                                SQLSMALLINT  nNameLength3,
                                SQLUSMALLINT nUnique,
                                SQLUSMALLINT nAccuracy )
@@ -66,11 +66,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/MYODBCTstLib/MYODBCTstTables.c
===================================================================
--- MYODBCTst/MYODBCTstLib/MYODBCTstTables.c	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/MYODBCTstLib/MYODBCTstTables.c	2005-12-27 20:07:41 UTC (rev 18)
@@ -29,13 +29,13 @@
 #include "../include/MYODBCTst.h"
 
 SQLRETURN MYODBCTstTables( SQLHSTMT     hStm,
-                           SQLCHAR *    pszCatalogName,
+                           SQLTCHAR *    pszCatalogName,
                            SQLSMALLINT  nNameLength1,
-                           SQLCHAR *    pszSchemaName,
+                           SQLTCHAR *    pszSchemaName,
                            SQLSMALLINT  nNameLength2,
-                           SQLCHAR *    pszTableName,
+                           SQLTCHAR *    pszTableName,
                            SQLSMALLINT  nNameLength3,
-                           SQLCHAR *    pszTableType,
+                           SQLTCHAR *    pszTableType,
                            SQLSMALLINT  nNameLength4 )
 {
     SQLRETURN nReturn = SQLTables( hStm,
@@ -66,11 +66,11 @@
             break;
 
         case SQL_INVALID_HANDLE:
-            fprintf( stderr, "[%s][%d] SQL_INVALID_HANDLE\n", __FILE__, __LINE__ );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] SQL_INVALID_HANDLE\n"), __FILE__,
__LINE__ );
             break;
 
         default:
-            fprintf( stderr, "[%s][%d] Invalid return value %d\n", __FILE__, __LINE__,
nReturn );
+            MYODBCCfprintf( stderr, MYODBCCL("[%s][%d] Invalid return value %d\n"),
__FILE__, __LINE__, nReturn );
     }
 
     return nReturn;

Modified: MYODBCTst/include/MYODBCTst.h
===================================================================
--- MYODBCTst/include/MYODBCTst.h	2005-12-27 03:12:31 UTC (rev 17)
+++ MYODBCTst/include/MYODBCTst.h	2005-12-27 20:07:41 UTC (rev 18)
@@ -54,7 +54,7 @@
 
 typedef struct tMYODBC_TST
 {
-    char *          pszName;
+    SQLTCHAR *        pszName;
     MYODBC_C_BOOL  (*pfunc)();
 
 } MYODBC_TST;
@@ -68,36 +68,36 @@
 SQLRETURN MYODBCTstCloseCursor( SQLHSTMT hStm );
 
 SQLRETURN MYODBCTstColumns( SQLHSTMT     hStm,
-                            SQLCHAR *    pszCatalogName,
+                            SQLTCHAR *    pszCatalogName,
                             SQLSMALLINT  nNameLength1,
-                            SQLCHAR *    pszSchemaName,
+                            SQLTCHAR *    pszSchemaName,
                             SQLSMALLINT  nNameLength2,
-                            SQLCHAR *    pszTableName,
+                            SQLTCHAR *    pszTableName,
                             SQLSMALLINT  nNameLength3,
-                            SQLCHAR *    pszColumnName,
+                            SQLTCHAR *    pszColumnName,
                             SQLSMALLINT  nNameLength4 );
 
 SQLRETURN MYODBCTstConnect( SQLHDBC       hDbc, 
-                            SQLCHAR *     pszServerName,
+                            SQLTCHAR *     pszServerName,
                             SQLSMALLINT   nNameLength1,
-                            SQLCHAR *     pszUserName, 
+                            SQLTCHAR *     pszUserName, 
                             SQLSMALLINT   nNameLength2,
-                            SQLCHAR *     pszAuthentication, 
+                            SQLTCHAR *     pszAuthentication, 
                             SQLSMALLINT   nNameLength3 );
 
 SQLRETURN MYODBCTstDisconnect( SQLHDBC hDbc );
 
 SQLRETURN MYODBCTstDriverConnect( SQLHDBC         hDbc,
                                   SQLHWND         hWnd,
-                                  SQLCHAR *       pszInConnectionString,
+                                  SQLTCHAR *       pszInConnectionString,
                                   SQLSMALLINT     nStringLength1,
-                                  SQLCHAR *       pszOutConnectionString,
+                                  SQLTCHAR *       pszOutConnectionString,
                                   SQLSMALLINT     nBufferLength,
                                   SQLSMALLINT *   pnStringLength2Ptr,
                                   SQLUSMALLINT    nDriverCompletion );
 
 SQLRETURN MYODBCTstExecDirect( SQLHSTMT   hStm,
-                               SQLCHAR *  pszStatementText,
+                               SQLTCHAR *  pszStatementText,
                                SQLINTEGER nTextLength );
 
 SQLRETURN MYODBCTstExecute( SQLHSTMT hStm );
@@ -105,17 +105,17 @@
 SQLRETURN MYODBCTstFetch( SQLHSTMT hStm );
 
 SQLRETURN MYODBCTstForeignKeys( SQLHSTMT      hStm,
-                                SQLCHAR *     pszPKCatalogName,
+                                SQLTCHAR *     pszPKCatalogName,
                                 SQLSMALLINT   nNameLength1,
-                                SQLCHAR *     pszPKSchemaName,
+                                SQLTCHAR *     pszPKSchemaName,
                                 SQLSMALLINT   nNameLength2,
-                                SQLCHAR *     pszPKTableName,
+                                SQLTCHAR *     pszPKTableName,
                                 SQLSMALLINT   nNameLength3,
-                                SQLCHAR *     pszFKCatalogName,
+                                SQLTCHAR *     pszFKCatalogName,
                                 SQLSMALLINT   nNameLength4,
-                                SQLCHAR *     pszFKSchemaName,
+                                SQLTCHAR *     pszFKSchemaName,
                                 SQLSMALLINT   nNameLength5,
-                                SQLCHAR *     pszFKTableName,
+                                SQLTCHAR *     pszFKTableName,
                                 SQLSMALLINT   nNameLength6 );
 
 SQLRETURN MYODBCTstFreeHandle( SQLSMALLINT  nHandleType, 
@@ -135,15 +135,15 @@
                                   SQLSMALLINT * pnColumnCountPtr );
 
 SQLRETURN MYODBCTstPrepare( SQLHSTMT      hStm,
-                            SQLCHAR *     pszStatementText,
+                            SQLTCHAR *     pszStatementText,
                             SQLINTEGER    nLength1 );
 
 SQLRETURN MYODBCTstPrimaryKeys( SQLHSTMT      hStm,
-                                SQLCHAR *     pszCatalogName,
+                                SQLTCHAR *     pszCatalogName,
                                 SQLSMALLINT   nNameLength1,
-                                SQLCHAR *     pszSchemaName,
+                                SQLTCHAR *     pszSchemaName,
                                 SQLSMALLINT   nNameLength2,
-                                SQLCHAR *     pszTableName,
+                                SQLTCHAR *     pszTableName,
                                 SQLSMALLINT   nNameLength3 );
 
 SQLRETURN MYODBCTstPrintDiagnostics( SQLSMALLINT    nHandleType, 
@@ -155,23 +155,23 @@
                                SQLINTEGER nStringLength );
 
 SQLRETURN MYODBCTstStatistics( SQLHSTMT       hStm,
-                               SQLCHAR *      szTableQualifier,
+                               SQLTCHAR *      szTableQualifier,
                                SQLSMALLINT    nTableQualifier,
-                               SQLCHAR *      szTableOwner,
+                               SQLTCHAR *      szTableOwner,
                                SQLSMALLINT    nTableOwner,
-                               SQLCHAR *      szTableName,
+                               SQLTCHAR *      szTableName,
                                SQLSMALLINT    nTableName,
                                SQLUSMALLINT   nUnique,
                                SQLUSMALLINT   nAccuracy );
 
 SQLRETURN MYODBCTstTables( SQLHSTMT       hStm,
-                           SQLCHAR *      pszCatalogName,
+                           SQLTCHAR *      pszCatalogName,
                            SQLSMALLINT    nNameLength1,
-                           SQLCHAR *      pszSchemaName,
+                           SQLTCHAR *      pszSchemaName,
                            SQLSMALLINT    nNameLength2,
-                           SQLCHAR *      pszTableName,
+                           SQLTCHAR *      pszTableName,
                            SQLSMALLINT    nNameLength3,
-                           SQLCHAR *      pszTableType,
+                           SQLTCHAR *      pszTableType,
                            SQLSMALLINT    nNameLength4 );
 #endif
 

Thread
Connector/ODBC 5 commit: r18 - MYODBCC/include MYODBCDbg/MYODBCDbgLib MYODBCDbg/MYODBCDbgTest MYODBCDbg/include MYODBCDia/MYODBCDiaLib MYODBCDrv/MYODB...pharvey27 Dec