From: iODBC M. <io...@op...> - 2005-02-23 01:25:28
|
HI Xan, > Thank you for the quick reply. > >> Since 3.51.0 iODBC has included Unicode support including Driver >> Manager conversions from non-unicode apps to unicode drivers and vise >> versa. > > > Great. A few more questions: > > Does this mean I have to bundle an updated library with my apps, or > are the Panther libs already using this code allowing me to just use > the updated headers? > Panter libs as supplied by Apple are based on iODBC 3.0.6 as far as i could quickly determine and do not contain these functions. Do a strings on your libiodbc.so and grep for iODBC. You should see a line similar to this: @(#)iODBC driver manager 3.52.2 If you have a version 3.51.0 or greater, then you have Unicode support. You can download a binary SDK from the www.iodbc.org site which contains the Framework version of iODBC Driver Manager (libiodbc), iODBC installer library (libiodbcinst) and the Carbon based iODBC Administrator and support panels. This package provides a tighter coupling between Driver Manager and GUI components. You can add the installer package to your installer as part of your own application. Alternatively you can download the source code from www.iodbc.org and build either a framework or a more traditional GNU type build of iODBC (the type that Apple ships) out of the box. This build does not contain the graphical extentions, but if your application just needs ODBC access you can build a static libiodbc.a library. This allows you to ship your application without any external reference to the driver manager, and use whatever GUI administrator, either the version from Apple or the version from iODBC.org, on your customers machine. > I'm using the CFM Bridge so that I can get the Data Source Chooser UI, > and the CFM Bridge doesn't have the "W" functions. Do I have to > abandon the Data Source Chooser UI to use the W functions? Or can I > put together some hybrid where I use the CFM Bridge only for the > SQLDriverConnect and then use the W functions for access. > With the version from iODBC.org you should be able to do what you want. You are also able to mix even the GUI components from Apple with the non-graphical driver manager in your application, only you cannot use a full Unicode DSN name that way as the Graphical code does not handle it, but a normal english DSN name will do. > Finally, is this something transparent to drivers? Or do I and my > users need special Unicode drivers? > Well, if your driver does not have Unicode support, e.g. it needs to export SQLConnectW etc functions present, the iODBC driver manager will translate Unicode strings to UTF-8 and pass them onto the driver. All results from the driver are treated as UTF-8 and translated back into Unicode results. Best regards, Patrick -- Patrick van Kleef Email : <io...@op...> Maintainer iODBC Web : <http://www.iodbc.org> OpenLink Software Universal Data Access & Data Integration Technology Providers |