Consultor Eletrônico



Kbase P152759: Getting error running C application as a service using the OpenEdge ODBC driver. Error reads: Spec
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   29/09/2009
Status: Unverified

SYMPTOM(s):

Getting error running C application as a service using the OpenEdge ODBC driver. Error reads: Specified driver could not be loaded due to system error 126 (Progress OpenEdge 10.1B driver)


Registry entries for ODBC driver indicate the pgoe1022.dll file is being referenced from a network drive.

FACT(s) (Environment):

Same application runs correctly from command line.

CAUSE:

Authorization to network shares or files on network shares was not configured properly for the NT Services.

FIX:

Two options are availabile, the preferred is listed first.
1) Install Progress / OpenEdge to a local drive on the machine.
Check the registry entries for the Progress / OpenEdge ODBC drivers to make sure the references to the DLL files are up to date and point to the new locations, if not then correct the registry entries.
NOTE: The odbc driver registry entries are typically located in HKEY_LOCAL_MACHINE\Software\ODBCINST.INI
Example:
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Progress OpenEdge 10.1B driver
The driver and setup keys may need to be adjusted.

2) Modify the security rights for the user which will control the service.
NOTE: The System Account can not be configured to have rights or privileges to any network device or file.
Using the Local Security Policy tool found in Control Panel \ Administrative Tools
Make sure the user has the following rights:
- Administrator.
- Log on as a service.
- Log on as batch job.
- Act as part of the operating system.
- Increase quotas.
- Create a token object.
- Replace a process level token.
The "Increase quotas" has been replaced by "Adjust memory quotas for a process" on XP and 2003.