Using ADSDBE with Xbase++ 2.0

Xbase++ 2.0 Build 554 or later
Post Reply
Message
Author
User avatar
rdonnay
Site Admin
Posts: 4775
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Using ADSDBE with Xbase++ 2.0

#1 Post by rdonnay »

I ran into a problem with ADSDBE the other day after updating my Xbase++ 2.0 to the latest build.

Suddenly, none of my programs that connect to Advantage Server would connect anymore. I would get 5381 errors (undocumented) and DLL conflict errors.

This is because I had forgotten that I replaced the Ads Client files in the Alaska runtime folders with the most current version. When I updated, these files were overwritten by the old ones from the Alaska installation.

Deployment of ADS client libraries MUST adhere to the following rule: They MUST reside in the same folder as ADSDBE.DLL.

Regardless of what your SET PATH says, the client DLLs are first loaded from the same folder as ADSDBE.DLL.

NOTE: This is not necessarily a problem with deployment of your application to your customers because most deployments include the Alaska runtime all in one folder. This is mostly an aggravation during development because development environments tend to have the Alaska runtime in only one place and use the SET PATH environment to find the DLLs. This is the preferred way to develop Xbase++ applications because eliminating redundancies also eliminates ambiguities.

There are 2 possible solutions to this problem which must be applied every time you update your Xbase++ 2.0 runtime.

1. Remove ACE32.DLL and AXCWS32.DLL from the following folders:

C:\Program Files (x86)\Alaska Software\cxp20\bin
C:\Program Files (x86)\Alaska Software\xpp20\lib
C:\Program Files (x86)\Alaska Software\xpp20\runtime

2. Copy the four (4) ADS client DLLs from the latest ADS version to these 3 folders and overwrite those files. The most current ADS client files are the following: ACE32.DLL, AXCWS32.DLL, ADSLOC32.DLL and AICU32.DLL.

These 4 DLLs can be found in your C:\Program Files (x86)\Advantage 10.0\ARC folder
The eXpress train is coming - and it has more cars.

Cliff Wiernik
Posts: 605
Joined: Thu Jan 28, 2010 9:11 pm
Location: Steven Point, Wisconsin USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#2 Post by Cliff Wiernik »

Just a note that the files would be similar with the ADS 11.x versions. That is the version we currently use in our Windows Server and Novell SLES/OES server environments.

bwolfsohn
Posts: 649
Joined: Thu Jan 28, 2010 7:07 am
Location: Alachua, Florida USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#3 Post by bwolfsohn »

Interesting reading this. This has NOT been our experience...

We have a number of clients on version 10.10.0.nn (.6, .28, and .49, among others)

All of our clients and even our webservers (both xbase 1.9 and 2.0) are using the files in the first group.

The second group are the same files in the current version of ads.

We have experienced NO problems on any of our installation except 1. I'll detail that in the next message.

on the c drive, these files are in the same directory as adsdbe.dll

Directory of C:\CUS
07/09/2004 07:02 PM 835,584 ACE32.DLL
07/09/2004 07:01 PM 1,081,344 Adsloc32.DLL
not found
09/22/2009 01:03 AM 143,360 Axcws32.DLL
3 File(s) 2,060,288 bytes

Directory of O:\Program Files (x86)\Advantage 10.10\ARC
03/15/2011 09:10 AM 1,611,104 ace32.dll
03/15/2011 09:10 AM 1,869,152 adsloc32.dll
03/15/2011 09:10 AM 2,037,088 aicu32.dll
03/15/2011 09:10 AM 226,656 axcws32.dll
4 File(s) 5,744,000 bytes
Last edited by bwolfsohn on Tue Feb 02, 2016 9:34 am, edited 1 time in total.
Brian Wolfsohn
Retired and traveling around the country to music festivals in my RV.
OOPS.. Corona Virus, so NOT traveling right now...
http://www.breadmanrises.com
FB travel group: The Breadman Rises

bwolfsohn
Posts: 649
Joined: Thu Jan 28, 2010 7:07 am
Location: Alachua, Florida USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#4 Post by bwolfsohn »

One of our clients is having problems running under adsserver. Adslocal is not a problem.

there are no ads errors being generated.

but, there are numerous file errors when re-indexing or updating structures.

Similar behavior is exhibited whether running xbase++ 1.9 or 2.0 on the client side.. There is no xbase server at this client. only adslocal or adsserver.

if newer files are required, why are we not getting errors on any of our installations, other than this one.

We have also tried using the newer .dll files in the local \cus directory, with no difference in behavior.. (same problems).

Almost all the errors are 8999 errors.

The client's server is 2008 R2 SP2. ADS 10.10.0.nn is compatible with this server.

We also tried shutting down the anti-virus on both the server and the client with no change.

We also tried running our app from the server, no change.. (both old and new dlls)
Brian Wolfsohn
Retired and traveling around the country to music festivals in my RV.
OOPS.. Corona Virus, so NOT traveling right now...
http://www.breadmanrises.com
FB travel group: The Breadman Rises

Cliff Wiernik
Posts: 605
Joined: Thu Jan 28, 2010 9:11 pm
Location: Steven Point, Wisconsin USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#5 Post by Cliff Wiernik »

What does the adserr log messages state. I have not seen any problems on ADS 11.x for linux or ADS 11.x for win2008R2 or Win2012. In production, this is still 1.9. Am testing with 2.0 and I do not experience issues with ADS 11 server on linux. Don't do adslocal anymore. I have the 2 user developer version on my laptop.

bwolfsohn
Posts: 649
Joined: Thu Jan 28, 2010 7:07 am
Location: Alachua, Florida USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#6 Post by bwolfsohn »

we're getting 7008, 7144 and 7147 errors.
Brian Wolfsohn
Retired and traveling around the country to music festivals in my RV.
OOPS.. Corona Virus, so NOT traveling right now...
http://www.breadmanrises.com
FB travel group: The Breadman Rises

bwolfsohn
Posts: 649
Joined: Thu Jan 28, 2010 7:07 am
Location: Alachua, Florida USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#7 Post by bwolfsohn »

and here's the error message:


==============================================================================
ERROR LOG of "D:\CUS\auctionw.exe" Date: 02/01/2016 22:23:32
------------------------------------------------------------------------------
Xbase++ version : Xbase++ (R) Version 2.00.644
eXPress++ version : eXPress++ (c) Version 2.0.261
Operating system : Windows Server 2008 R2 06.01 Build 07601 Service Pack 1
Version : 12.00G1 - User: SW
Database path : d:\CUSAUC\ - d:\CUSAUC\ - Archive:
Current Directory : D:\CUS
Company Name : # YODER & FREY AUCTIONEERS, INC. #
------------------------------------------------------------------------------
ERROR OBJECT:
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: C VALUE: d:\CUSAUC\FL2014.mai
-> VALTYPE: A VALUE: {{"CODE", "C", 8, 0}, {"COMPANY", "C", 40, 0}, {"FNAME", "C", 25, 0}, {"LNAME", "C", 30, 0}, {"ADDR1", "C", 40, 0}, {"ADDR2", "C", 40, 0}, {"CITY", "C", 30, 0}, {"STATE", "C", 2, 0}, {"COUNTRY", "C", 20, 0}, {"ZIP", "C", 12, 0}, {"RESALENO", "C", 16, 0}, {"DLNUM", "C", 16, 0}, {"GSTSTATUS", "C", 1, 0}, {"GSTTAX", "N", 11, 2}, {"TAXSTATUS", "C", 1, 0}, {"TAXSTAT2", "C", 1, 0}, {"TAXSTAT3", "C", 1, 0}, {"TAXRATE", "N", 7, 3}, {"TAXRATE2", "N", 7, 3}, {"TAXRATE3", "N", 7, 3}, {"TOTDOL", "N", 12, 2}, {"TOTTXBLE", "N", 12, 2}, {"TOTTAX", "N", 11, 2}, {"TOTTAX2", "N", 11, 2}, {"TOTTAX3", "N", 11, 2}, {"TOTPREM", "N", 11, 2}, {"TOTCOLL", "N", 12, 2}, {"TOTCC", "N", 12, 2}, {"BXPTOT", "N", 12, 2}, {"DEPOSIT", "N", 12, 2}, {"UNBILLED", "N", 12, 2}, {"CCRATE", "N", 7, 3}, {"PHONE", "C", 14, 0}, {"NOTE", "C", 25, 0}, {"R", "C", 45, 0}, {"EXPINVNO", "C", 6, 0}, {"MAILCODE", "C", 8, 0}, {"SOURCE", "C", 4, 0}, {"BUY_PREM", "N", 7, 3}, {"FPHONE", "C", 14, 0}, {"ID", "L", 1, 0}, {"TOTDOL_BB", "N", 12, 2}, {"UNBILL_BB", "N", 12, 2}, {"TOTDISCTX", "N", 11, 2}, {"CREDMAX", "N", 12, 2}, {"CCNUM", "C", 16, 0}, {"EXPDATE", "C", 7, 0}, {"BKNAME", "C", 20, 0}, {"BKADDR", "C", 20, 0}, {"EMAIL1", "C", 100, 0}, {"PASSWORD", "C", 15, 0}, {"OKTOBID", "L", 1, 0}, {"NEEDBMAIL", "L", 1, 0}, {"BUYERID", "C", 10, 0}, {"CLIENT", "C", 8, 0}, {"POSTDATE", "D", 8, 0}, {"POSTTIME", "C", 8, 0}, {"TOTSLSAZ", "N", 12, 2}, {"TOTSLTXAZ", "N", 11, 2}, {"TAXSTATA", "C", 1, 0}, {"TAXSTATB", "C", 1, 0}, {"TAXSTATC", "C", 1, 0}, {"TAXSTATD", "C", 1, 0}, {"TAXSTATE", "C", 1, 0}, {"TAXSTATF", "C", 1, 0}, {"TAXSTATG", "C", 1, 0}, {"TAXSTATH", "C", 1, 0}, {"TAXSTATI", "C", 1, 0}, {"TAXSTATJ", "C", 1, 0}, {"TAXSTATK", "C", 1, 0}, {"TAXSTATL", "C", 1, 0}, {"TAXSTATM", "C", 1, 0}, {"TAXSTATN", "C", 1, 0}, {"TAXSTATO", "C", 1, 0}, {"TAXSTATP", "C", 1, 0}, {"TAXSTATQ", "C", 1, 0}, {"TAXSTATR", "C", 1, 0}, {"TAXSTATS", "C", 1, 0}, {"TAXSTATT", "C", 1, 0}, {"TAXSTATU", "C", 1, 0}, {"TAXSTATV", "C", 1, 0}, {"TAXSTATW", "C", 1, 0}, {"TAXSTATX", "C", 1, 0}, {"TAXSTATY", "C", 1, 0}, {"TAXSTATZ", "C", 1, 0}, {"LANGUAGE", "C", 15, 0}, {"PHONE2", "C", 14, 0}, {"COUNTY", "C", 20, 0}, {"COKTOBID", "C", 1, 0}, {"SCOMPANY", "C", 40, 0}, {"SFNAME", "C", 25, 0}, {"SLNAME", "C", 30, 0}, {"SADDR1", "C", 40, 0}, {"SADDR2", "C", 40, 0}, {"SCITY", "C", 30, 0}, {"SSTATE", "C", 2, 0}, {"SZIP", "C", 10, 0}, {"SCOUNTRY", "C", 20, 0}, {"DOB", "D", 8, 0}, {"EBAYID", "C", 30, 0}, {"SHIPONINV", "C", 1, 0}, {"PHONETEMP", "C", 14, 0}, {"RECORD_ID", "C", 20, 0}, {"BOTHONINV", "C", 1, 0}, {"OUTBID", "C", 1, 0}, {"DAILYBID", "C", 1, 0}, {"PHONELOC", "C", 15, 0}, {"PREMKICK", "N", 7, 3}, {"MIDI", "C", 12, 0}, {"USERMSG", "C", 5, 0}, {"DLYBIDDATE", "D", 8, 0}, {"RESALENO2", "C", 16, 0}, {"MAKEPERM", "L", 1, 0}, {"COKTOBIDP", "C", 1, 0}, {"INQUERY", "L", 1, 0}, {"GROUP", "C", 8, 0}, {"WEBSITE", "C", 75, 0}, {"DISCRATE1", "N", 7, 3}, {"DISCRATE2", "N", 7, 3}, {"DISCRATE3", "N", 7, 3}, {"DISCLMT1", "N", 8, 0}, {"DISCLMT2", "N", 8, 0}, {"DISCLMT3", "N", 8, 0}, {"TOTDISCTX1", "N", 11, 2}, {"TOTDISCTX2", "N", 11, 2}, {"TOTDISCTX3", "N", 11, 2}}
oError:canDefault : Y
oError:canRetry : N
oError:canSubstitute: N
oError:cargo : NIL
oError:description :
oError:filename :
oError:genCode : 8999
oError:operation : DbCreate
oError:osCode : 0
oError:severity : 2
oError:subCode : 5381
oError:subSystem : BASE
oError:thread : 1
oError:tries : 0
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Called from CHKUPGUT_NEW(1997)
Called from CHKUPGUT(1763)
Called from CHECK_AUCTION_UPDATES(82)
Called from MAIN(414)
------------------------------------------------------------------------------
WORKAREA STATUS:
------------------------------------------------------------------------------
Area Alias Record Index Order Eof Bof Del Found
------------------------------------------------------------------------------
Brian Wolfsohn
Retired and traveling around the country to music festivals in my RV.
OOPS.. Corona Virus, so NOT traveling right now...
http://www.breadmanrises.com
FB travel group: The Breadman Rises

Cliff Wiernik
Posts: 605
Joined: Thu Jan 28, 2010 9:11 pm
Location: Steven Point, Wisconsin USA
Contact:

Re: Using ADSDBE with Xbase++ 2.0

#8 Post by Cliff Wiernik »

The only time I get errors related to dbcreate is if the file is open for some reason. That could be a function of the metadata that the smb2 fix fixes.

Post Reply