cancel
Showing results for 
Search instead for 
Did you mean: 

Anyone have instructions on how to (manually) install SQL Anywhere driver ONLY?

vlad1
Participant
0 Kudos

Hi,

Our Powerbuilder application uses the SQL Anywhere database through an 32-bit ODBC setting. In the past we rarely had more than 20-25 users and were happy just to install the SQL Anywhere network client from a SQL Anywhere CD setup, but now we are getting into deploying many more, and this is becoming unfeasible.

I can see on several websites that a group of files we need for a SQL Anywhere 32-bit driver are

dbodbc11.dll

dbcon11.dll

dblgen11.dll

dblib11.dll

rteng11.lic

dbctrs11.dll

or for SQL Anywhere 16 just "16" instead of "11" in those names.

We would like to copy these (and if necessary, any other files) just in a subfolder of our application, say C:\OurSystem\Drivers, as a part of a deployment to the new client, but what other steps do we need to carry out regarding registry (or otherwise) to make sure that we can open ODBC Administrator and create an ODBC Data source?

On one Windows 8 machine we tried regsvr32 dbodbc11.dll but we got a complex looking error message.

Do we need additional registry entries to

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\SQL Anywhere 11


and similar, I keep finding few websites, but not one clear document with full instructions, or is there a utility that will do this that we can download?

Thanks

Accepted Solutions (1)

Accepted Solutions (1)

former_member244518
Participant
0 Kudos

Hi Vlad,

The 16 version of this list is published in the documentation. Some of the recommended best practices for the driver deployment are documented here as well.

Regarding the data source deployment, you can add that information to the registry as described here.

Are you running a 64-bit version of Windows 8? You may need to run


C:\Windows\SysWOW64\regsvr32 dbodbc16.dll

to register the 32-bit version of the driver. Be sure you use the place the registry entries in the SysWOW6432Node as well.

Thanks,

Mikel

vlad1
Participant
0 Kudos

Thanks Mikel, the 64-bit version of regsvr32.exe could well be the answer. I will take a look at it on Monday.

Thank you for your link as well - especially the second one. I have already read through it today, but we kinda got stuck on the regsvr32.exe error.

So just to understand, once we run the regsvr32.exe on those DLL files, that will create the registry key

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\SQL Anywhere 11

or on 64-bit machines

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\SQL Anywhere 11

or do we have to create them manually?

Cheers

Answers (1)

Answers (1)

regdomaratzki
Advisor
Advisor
0 Kudos

regsvr32 should be the only thing you need to do to register the ODBC driver, and it's what I do on my Windows 7 development machine.

It's possible the issue is related to SQL Anywhere 11 and Windows 8, since SQL Anywhere 11 is not supported on this OS.  Does the same process work with v16?  What's the complex looking error look like?

Reg

vlad1
Participant
0 Kudos

Hi Reg,

Thanks very much for that, so just to break it down in the simplest of terms - lets say we want to do this "manually", I just copy the files to the folder

C:\Oursystem\Drivers\dbodbc11.dll

C:\Oursystem\Drivers\dbcon11.dll

C:\Oursystem\Drivers\dblgen11.dll

C:\Oursystem\Drivers\dblib11.dll

C:\Oursystem\Drivers\rteng11.lic

C:\Oursystem\Drivers\dbctrs11.dll

and then go

C:\Oursystem\Drivers\regsvr32.exe dbodbc11.dll

C:\Oursystem\Drivers\regsvr32.exe dbcon11.dll

C:\Oursystem\Drivers\regsvr32.exe dblgen11.dll

C:\Oursystem\Drivers\regsvr32.exe dblib11.dll

C:\Oursystem\Drivers\regsvr32.exe rteng11.lic

C:\Oursystem\Drivers\regsvr32.exe dbctrs11.dll

Simple as that? Any more files needed, by the way?

I should have made a screenshot of the error message, I have no access to it until Monday, but it actually could be what Mikel said below, that I just ran the 64-bit one, and I should have made sure that I ran regsvr32.exe from C:\Windows\SysWOW64\. I'll check on Monday.

Thanks very much for your help.

regdomaratzki
Advisor
Advisor
0 Kudos

Disclaimer : I didn't verify the exact list of files you need for the ODBC driver, but your list looks OK.

You only need to run regsvr32 on dbodbc11.dll, not all the files.  The registry entries you mentioned will be created by the regsrv32 process.

I think Mikel's probably right about the complicated error and 32/64 bit stuff, as opposed to my guess about v11 and Windows 8.  He's a smart kid.

Reg


vlad1
Participant
0 Kudos

Great. Just in case, we'll copy in all the files from the link Mikel provided. You have already answered the main thing - that we need to run regsvr32 on dbodbc11.dll only, and that this will stuff the key values needed into the registry.

Thanks very much guys We'll see on Monday how it goes.

chris_keating
Advisor
Advisor
0 Kudos

These are the required deployment files for SA11 ODBC driver (replace 11 with 16 for v16 software)

  • dbodbc11.dll
  • dbcon11.dll
  • dbicu11.dll
  • dbicudt11.dll
  • dblg[xx]11.dll
  • dbelevate11.exe


* NOTE: There are several files that you are deploying which are not related to the ODBC driver. For example, rteng11.lic, dblib11.dll, and dbctrs11.dll are engine deployment files which are not needed for a client only install.

I suspect that the complex message is


The module "d:\sa\sa11\bin32\dbodbc11.dll" was loaded but the call to DllRegisterServer failed with error code 0x8000ffff.

For more information about this problem, search online using the error code as a search term.

and is likely the result of running without administrative level authority and dbelevate11.exe not deployed or found by dbodbc11.dll during the registration process. You can either deploy that file (recommended) or ensure that  you are running with elevated administrator authority. This is generally done from a shortcut by selecting "Run as Administrator" from the popup menu for the shortcut or checking that option in the Advanced settings for the shortcut (select properties from the shortcut popup menu.