In regards
to the SQL AllocHandle error, this can message can occur for two reasons.
The first reason is the lack of user privileges. So what happens if the user
launching the connection has Administrative privileges?
The second cause of this error is the remnants of Data Sources relating to
the older version of ODBC or previous versions of the OpenRDA.INI
configuration file.
The openrda.ini file maybe being referenced from the users profile in a
server or terminal server environment.
The solution to resolve this issue involves removing and editing registry
keys which reference the old ODBC Driver in DSN's.
Before the registries can be removed and manipulated, please follow the
below steps:
1- Delete all DSN's
2- Uninstall all versions of MYOB ODBC
3- Delete the MYOBODBC folder located in the root directory
4- Delete all instances of the openrda.ini file
5- Create a Backup of the windows registry.
Read
how to backup registry here...
6- Remove all keys that make reference to MYOB_ODBC or ODBCMYOB.dll
7- Restart computer
8-Check add\Remove
programs to see if ODBC entries have reappeared. Remove if they have. Go
through the steps. Cancel when asked for disk. They should remove this time.
9- Install ODBC
version 7 ( The accounting version may need to be installed first, and this
will install ODBC 7)
10- Install ODBC for Read Write
country specific vesion
Below is a listing of where the registry keys can be found, which you need
to ensure are removed, manually if required.
Hkey_Current_User/Software/ODBC/ODBC.INI
You will find in this location various registry keys which will use the MYOB
ODBC driver. The driver string value of each DSN will reference odbcmyob.dll
as it is a MYOB ODBC DSN. Please delete all registry keys which contain the
driver string value as using the file odbcmyob.dll
In the above location, there is also a key named ODBC Data Sources. This key
contains string values which reference the various DSN's, please delete the
individual string values which reference the MYOB ODBC and/or MYOB_ODBC
values.
Hkey_Local_Machine/Software/ODBC/ODBC.INI
Perform the same steps as mentioned above where all keys which represent a
MYOB ODBC DSN are deleted and all driver string values which reference the
MYOB ODBC, MYOB_ODBC and MYOBODBC are also deleted.
Hkey_Local_Machine/Software/ODBC/ODBCINST.INI
Delete all registry keys which reference the MYOB ODBC, MYOBODBC and
MYOB_ODBC drivers
Within the ODBC Driver registry key, delete all string values relating to
MYOB ODBC, MYOBODBC and MYOB_ODBC.
HKey_Users/<User's SSID>/Software/ODBC/ODBC.INI
Please perform the same steps as outlined above for the Hkey_Current_User/Software/ODBC/ODBC.INI
location.
Once you have performed the above operations, you should be able to search
your entire registry listing for MYOB_ODBC, MYOBODBC, MYOB ODBC and
odbcmyob.dll with no results returned. If any are found, then they will also
need to be deleted.
Once the editing of registries is complete, you will also need to edit some
Window's configuration files. As these files are located in various
locations such as C:/Windows and C:\Documents and Settings\%User
Name%\Windows, it is recommended to search the entire machine for these
files to ensure all are updated appropriately.
The first file to search for is ODBC.INI. Once all copies of this file are
found, open each file in NotePad and delete all DSN's which refer to the
odbcmyob.dll. Below is an extract of what you will find in this file. The
portion which needs to be deleted has been placed in BOLD. This bold
portion includes the DSN name and the driver it uses.
[Excel Files]
Driver32=C:\WINDOWS\System32\odbcjt32.dll
[dBASE Files]
Driver32=C:\WINDOWS\System32\odbcjt32.dll
[test]
Driver32=C:\MYOB\Connectivity\MYOBODBC\bin\iwinnt\odbcmyob.dll
[TESTMYOB]
Driver32=C:\MYOB\Connectivity\MYOBODBC\bin\iwinnt\odbcmyob.dll
Once this is done for all files, perform another search for the file named
ODBCINST.INI. Edit all instances of this file to remove all references to
the MYOB ODBC, MYOBODBC, MYOB_ODBC and odbcmyob.dll
When all of the registry keys which reference MYOB ODBC, MYOBODBC, MYOB_ODBC,
odbcmyob.dll and the ODBC.INI and ODBCINST.INI files are updated/removed,
then this means that there are no longer any traces of the components
created by the Administrative Data Sources function, so MYOB ODBC can be
reinstalled successfully.
Courtesy of :
Nicole Brand
Developer Support
Professional Partner Program - Developers