Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Executable program using VB and Access

Status
Not open for further replies.

Wantok52

Technical User
Dec 23, 2002
26
AU
I have developed an Access database and have a company interested in distributing it as an .exe program. I don't have the Developers Edition of Access, so creating an .exe from Access is not an option.

The road I am loking to take is to start again with Visual Basic 5 (I don't have Visual Basic 6). I think the right approach is to create a database in Access for the tables and do the rest (forms, SQL queries, reports) in VB.

The question I have is will the .mdb created in Access be visible in the folder where the .exe resides, and if so, can it be hidden?
 
If you're serious about this being distributed as an exe, don't use an mdb backend. Use a proper SQL server, which can be as simple and cheap as MSSQL express ( or MySQL (
________________________________________________________________
If you want to get the best response to a question, please check out FAQ222-2244 first.
'If we're supposed to work in Hex, why have we only got A fingers?'
Drive a Steam Roller
 
Hi johnwm,

Thank you for your reply. I've had a quick look at both Microsoft SQL Server Expres and MySQL. Both of these appear to be free. Would you consider one is preferable to the other?

Also, can I use either or both of these with Visual Basic 5 as a front end? I know I will not be able to connect using ADO, but can I connect via DAO? I have received advise elsewhere that I shouldn't use ADO or DAO, but connect using code. What are your views on this?
 
johnwm,

One other thing. I am trying to develop a 'desktop' type program/application suitable for installation on a laptop computer, as well as a desktop computer. Would these applications be suitable?
 
1. The references I above should enable you to compare the products. You will need to judge based on your requirements.

2. Sorry my memory must be failing! I haven't used VB5 for many years, but I seem to recall that connections to outside (non-mdb) databases were made via ODBC.

3. From any of the MS platforms I would use ADO if available. I would advise using ADO via code and NOT via the ADODC control, so that may be what your other advisor means.

4. Yes. These days there is very little significant difference in performance between laptops and desktops.

Finally - consider carefully whether you should upgrade to a more modern development environment. Otherwise you will always be struggling to force compatibility on divergent technologies.

________________________________________________________________
If you want to get the best response to a question, please check out FAQ222-2244 first.
'If we're supposed to work in Hex, why have we only got A fingers?'
Drive a Steam Roller
 
You should also be aware that Access and VB are rather different creatures so far as their mechanisms for dealing with databases are concerned. Access is integrated with the database that it is part of while VB has an arms-length relationship to the database. That's both a good and bad thing. It is good because you are not limited to a particular DBMS in VB but it is bad because you must code many of the procedures in VB that come integrated in Access.

The primary consequence of this is that you are probably looking at a complete re-development of your application in VB rather than just a conversion project. The simplest approach would probably be to get your hands on a Developer Version of Access and keep the project as an Access application. Moving to a different development platform ... particularly an older one like VB5 ... is going to put you into a significant learning curve and in the end, will probably not produce the sort of product that you will be comfortable supporting in the long term.
 
If you have the time/interest I would suggest you look at VB net 2005 express. Also look at SQL Server 2005 Express. Both are free. And you can download them from microsoft's website. VB Net will allow you to access either SQL Server or MS Access databases.

While both products are way different than what you are using now, it IS worth taking the time to learn them. VB5 is an old environment (ok, some might even say ancient).

I have found that building apps with old tools and runnning them on newer OS, esp. Server OS's can cause problems and grief. For instance, I build bar code apps in Visual Foxpro 6. At times, running from Win2003, the OS doesn't always kill open files. This can lead to users not being able to add new records until I kill the existing open files on the server. You also may have to give more privelages to users than you want. Again with VFP, I have to give write permissions to the folder the app gets installed with. So far with vb.net and SQL Server Express, this hasn't bene an issue.
 
Thank you to all those who have replied to this thread.

I have been considering the options suggested by you all and am looking towards SQL Server 2005 Express, possibly with Visual Basic Express (if I can get it to download!), or MySQL, with a VB (again, possibly VB Express) front end. I know there will be a fair learning curve, but I'm prepared to put in the effort for future development.

There are some things I’m not too sure about. These questions refer to both SQL Express and MySQL;

If using SQL, would I need to include a full install of SQL on the end users machine (i.e. my end customer)?

Are the system requirements the same as for installing on my machine?

What, if any, other .dll or ActiveX registration would I need to include with the Installation CD?

Whilst I can see that for the future SQL/VB 2005 is the way to go, I must consider that some of the people purchasing my product would have fairly old technology, possibly running Win 95, and installing the software on lap-tops only.

Initially I am thinking of developing a program using VB5 and a .mdb database, or Access, using the Developer Edition, with more limited features to meet the end customers’ immediate needs. Your comments and suggestions would be greatly appreciated.
 
With any .net language/project/exe you will need the net framework. And with VB 2005 net, you will need the net 2.0 framework. You can include this with your instalaltion program you will build for deployment.

With MS SQL Server 2005 Express, you would have to include the database (which include the tables, views Stored Procs, etc). Don't know if SQL Server Express would need to be installed or not (But thinking it would need to be). I code against my departments SQL Server, so I can't tell you what you would need as far as deploymnet outside of your dev environment, but I am sure there are ppl here who can.

With Acces, just include the db. Hopwever, depending on the size or potential size of your customers data, Access may not be the way to go.
 
How big is the net framework, and how big is the net 2.0 framework?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top