why application with access database doesn't run

L

Luminal

Greetings

Recently I've developed a C# application using an Access database. For
this I use the Data.OleDb namespace.

Now I have customer telling me that he can't use the application. The
application does not work because it has no database.
In theory, if the database does not exists, my application tries to
create it, but it seems that the application can not create the
database... and my client does not have MS Access installed on the same
computer the application is installed.
Does the fact the client doesn't have MS Access installed on his
computer have anything to do with the application does not run?

I've the following references to my project (DLL files installed along
with the application)

Interop.ADOX.dll
Interop.Office.dll
Interop.VBIDE.dll
Interop.Word.dll
MSO9.DLL
MSWORD9.OLB
Office.dll
stdole.dll
VBE6EXT.OLB

should't this DLLs be enought for my app to work? What am I missing?

Thanks in advance

Lum
 
M

Mark Rae

Recently I've developed a C# application using an Access database. For
this I use the Data.OleDb namespace.
Now I have customer telling me that he can't use the application. The
application does not work because it has no database.
In theory, if the database does not exists, my application tries to
create it, but it seems that the application can not create the
database... and my client does not have MS Access installed on the same
computer the application is installed.

How is your app trying to create the database? Does your client have
sufficient permissions to create new files in the folder in question?
Does the fact the client doesn't have MS Access installed on his
computer have anything to do with the application does not run?

No - the .NET Framework has everything you need to interact with th "Access"
database. And, just for the record, what you actually have here is a "Jet"
database - it just so happens that it's the file format used by Access...

As an initial test, why don't you email a blank copy of your database to
your client, get them to place it in the correct folder, and then try to use
your app...
 
L

Luminal

As an initial test, why don't you email a blank copy of your database to
your client, get them to place it in the correct folder, and then try to use
your app...

that does not work either....
 
L

Luminal

As an initial test, why don't you email a blank copy of your database to
your client, get them to place it in the correct folder, and then try to use
your app...
that does not work either. the database exists but it seems that
application cannot read it
 
R

Ron Allen

Luminal,
Has your customer installed MDAC on the system used? Also you will need
to install the Jet engine, see KB#239114
http://support.microsoft.com/default.aspx?scid=kb;en-us;239114 for
instructions on obtaining the latest Jet service pack which will install the
runtime for Jet databases. I'd reccomend using MDAC 2.8 but I believe that
MDAC2.6SP2 will work with .NET. .NET can use Jet mdb files without Access
but it needs a version of MDAC and the Jet runtime to work.

Ron Allen
 
I

Ignacio Machin \( .NET/ C# MVP \)

Hi,


Are you getting an exception? if so post it here to know where your problem
is, it maybe with the db engine, that the machine has not registered the
needed components, it maybe that the app is being ran with no permission to
write to the directory where the DB is located.

If you are not getting an exception cause you are catching them, just
create a log file.

Hint:
You should send him a debug version along with the pdb file created, this
will greatly improve the useability of the exception info.

Or maybe you can reproduce his escenario, just ask him his platform and what
user he is using.

Cheers,
 
L

Luminal

The "problem" was the lack of a 2.6 superior version of MDAC. Installed
2.8 and now works fine( or so it seems :) ). It was no needed to install
the Jet Engine (belive that JET engine is installed). Now please tell me
(for me to learn ;) ). What is the MDAC and what is JET engine? What are
the purposes? What are they for?

on clients machine it has the 3 jet files JET version
4.0.7328.0 Service Pack 7 (SP7)
4.0.8618.0 Security Bulletin MS04-014


Thanks

Lum
 
R

Ron Allen

Luminal,
MDAC is the Microsoft Data Access Components, a bridge between the ADO
and ADO.NET (and other) libraries and the various db runtimes.
JET is the database engine used by MS/Access. Used to translate between
db calls and physical access to bytes in the mdb file.
Ron Allen
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top