Solved

Standalone .EXE with Delphi 1.0?

Posted on 1997-06-25
3
235 Views
Last Modified: 2010-05-18
I am writing an application in Delphi 1.0 that doesn't
use any database access.

However, when I send the EXE file to someone else, they
get the error "unable to initialise Borland Database
Engine".

Now, the application doesn't use any external resources,
so it should be possible to distribute it as a single
EXE file, shouldn't it?

Someone has already suggested that I am referencing a
unit that tries to initialise the BDE. However, I can't
find an obvious candidate. The list of units references
by the program are as follows:

  SysUtils, WinTypes, WinProcs, Messages, Classes,
  Graphics, Controls, Forms, Dialogs, Menus,
  ExtCtrls, StdCtrls, Buttons;

So, how do I get Delphi to stop trying to initialise BDE?

Thanks,

James
0
Comment
Question by:shingen
3 Comments
 
LVL 1

Expert Comment

by:flisakow
ID: 1337804
Yes, it is possible to distribute as a standalone EXE. I have Delphi games I distribute this way from my web site.

None of the units mentioned should be a problem, I use them all the time.  "DB", or "DBTables" might cause this.

I suggest you open the actual project file, and check to make sure you are only compiling the code you think you are.  If that doesn't lead anywhere, check the .DSK file to see if a file containing some database stuff is open, or considered to be in the project but not being used.

Shaun
http://www.kagi.com/flisakow/
0
 
LVL 1

Accepted Solution

by:
millerw earned 100 total points
ID: 1337805
If you place ANY database component on the form, the database system is installed in the program and ARE NOT REMOVED WHEN THEY ARE TAKEN OUT IN DELPHI 1.0.  The same thing happened to me in college why i accidentally put a TTable on a form and deleted it.  The program would not run after this and the way I fixed it was pretty much to cut all of my components that I wanted into a new form saved the form and started a new project.  

I think if you just create a new project, remove the generic form that comes up, add all of your form files back to the new project your problem will be fixed.  Sometimes with problems like this, starting over with a fresh project file is just as good (and less time consuming) than trying to find that single line of code that is causing your problems.  

If the problem persists, check all uses statements in every file your project contains (after the interface AND implementation in each unit file) to make sure all database units are removed.

That should fix the problem and make the EXE the only file you have to distribute.

Good Luck,
Scott
0
 
LVL 13

Expert Comment

by:Mirkwood
ID: 1337806
Bought This Question.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
Many functions in Excel can make decisions. The most simple of these is the IF function: it returns a value depending on whether a condition you describe is true or false. Once you get the hang of using the IF function, you will find it easier to us…

895 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now