Link to home
Start Free TrialLog in
Avatar of Pummel
Pummel

asked on

What do I have that my user doesn't?

I created this program for another guy in my organization.  We can both see our organization's SQL server.  The program uses an SQL database that he set up.  I created an ODBC link to that database (in the System DSN tab) and gave it a name.  I also logged in using his username and password.

My Delphi 6 program uses a TDatabase, a few TTables and corresponding TDataSources to access the data.  There are no TQueries, TUpdateSQLs, or anything else than what I've mentioned.  The finished executable runs fine on my Windows 2000, but crashes on his Windows XP, offering to send the error to Microsoft.  The error gives no additional information.

Thinking the problem was XP, I set up the same SQL connection (same name, properties, and login information) on two other developers' machines and it ran without a hitch.  They have XP so it was ruled out as being the problem.  I made absolutely sure that this guy's SQL connection had the same name, properties, and login information that I did.

I figured it must be something that us Delphi developers have that he doesn't.  The only difference I could think of was BDE.  Well, he has BDE installed already.

What could our developer computers have that he doesn't?  The program doesn't use run-time packages or any third-party or custom components.  We also have the same SQL Server dll version.
Avatar of emadat
emadat
Flag of United States of America image

From the "Drivers" tab in the ODBC Data Source Administrator, check the versions of the drivers he has and the ones you have. There might be a version conflict.

Also try to install the SQL Query Analyzer on his PC and see if you can connect to the SQL server of questin using the same credentials your program is using.
Avatar of BAlexandrov
BAlexandrov

<quote>
We also have the same SQL Server dll version.
</quote>

I hope you have speak about version of sql client, if not - install sql server client.


Bojidar Alexandrov
Install MadExcept; then you will have more information about the error. Very useful in these situations:

http://help.madshi.net/madExcept.htm
Avatar of Pummel

ASKER

emadat:
What is SQL Query Analyzer?

Bojidar Alexandrov:
That's what I meant.  We have the same SQL Server .dll, or rather, the same client version.  I said "SQL Server" because that's how it's listed in ODBC -> Drivers tab.  (SQLSRV32.DLL)

da-vinci:
Cool tool, and I may use it for future projects.  But this time I know the exception's being thrown in some procedure like TDatabase.Open.  I'm pretty sure that the low-level API error that gets returned would be incomprehensible to me, and it's in a place where I can't fix it since my code's already simplified.
SQL Query Analyzer is one of the client utilities that comes on Microsoft SQL CD. It allows you to connnect to a local or remote SQL server, and run queries on that server.

When you install it and attempt to connect to the server in question; you might come to know what the problem is.
Avatar of Pummel

ASKER

No one really hit the nail on the head, but this is what ended up working.

I made a Borland Install that included, of course, the executable.  I also made it come with a BDE_PRO Merge Module.  Figuring out the configuration file was confusing, but I got it.

The install works so well that I don't even have to go into the ODBC Program and manually configure the SQL Connection.  The configuration file must have had what it needed to connect.

All of you had good ideas but no one nailed it on the head.  Because I hate having EE points in escrow, I'll give the points to the next person that responds to this question.
ASKER CERTIFIED SOLUTION
Avatar of emadat
emadat
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Pummel

ASKER

"That's the way you do it.  Get your money for nothin' and your chicks for free."

Thank you for your input.