Board index » delphi » Files required for deployment

Files required for deployment

Can someone please help me with the files needed to deploy a delphi 4
database application?

Each unit has three associated files end in:  .~df   .~pa    .dcu
Is the pascal file the only one required for execution?

I have a DEL**.MB file associated with each unit, ex. DEL10.MB would seem to
go with unit 10.  What purpose does this serve

Each database file has a .db file and a .px file.  Are both of these
required for deployment?

Thanks a lot for someone with more experience helping.

Brian Shigley

 

Re:Files required for deployment


Assuming you are not using packages or dll's,
you need the projectname.exe, the bde
as will be readied by your install program
(Installshield express, most likely) and your
datafiles which are datafielname.db (most of the data),
datafilename.mb (blob if any, may not exist), datafilename.val
(has validation info), datafilename.px (primary index), and
if you have secondary indexes datafilename.x01 datafilename.y01
and datafilename.x02 and datafilename.y02 and so on if they exist.
You don't need datafilename.fam or datafilename.tv (used by Paradox
and database destktop).
Quote
"Brian Shigley" <Bshig...@in-touch.net> wrote in message

news:8d1ol8$f3a4@bornews.borland.com...
Quote
> Can someone please help me with the files needed to deploy a delphi 4
> database application?

> Each unit has three associated files end in:  .~df   .~pa    .dcu
> Is the pascal file the only one required for execution?

> I have a DEL**.MB file associated with each unit, ex. DEL10.MB would seem
to
> go with unit 10.  What purpose does this serve

> Each database file has a .db file and a .px file.  Are both of these
> required for deployment?

> Thanks a lot for someone with more experience helping.

> Brian Shigley

Re:Files required for deployment


The only Delphi file you need to deploy is the EXE unless you are using a
DLL or you have compiled with runtime packages. If your app uses the BDE for
database access you will need to deploy it.

--
Bill

Bill Todd (TeamB)
(TeamB cannot respond to questions received via email)

Re:Files required for deployment


I am getting a C++ exception when I do a post after I have written to a
BLOB. The exception only happens in release mode, never under the
de{*word*81}. The only way I have confirmed that the BLOB write is the
problem is by commenting out the call. Here is the code (an it should
look very similar to the example code under BLOB write):

procedure TForm1.Button8Click(Sender: TObject);
var
  magBlob, IntensityBlob: TStream;
  temp: longInt;
  i: integer;
  S: String;
  ptr: PChar;
begin
    // the assumption is that the header was written first
    for i := 0 to dataSize-1 do
    begin
      xdata[i] := i;
    end;
    DataModule2.ArrayData.Edit;
    magBlob := DataModule2.ArrayData.CreateBlobStream(
      DataModule2.ArrayData.FieldByName('Intensity'), bmWrite);
//
//                              I have tried bmReadWrite ^^^^^

    temp := dataSize;
    magBlob.Seek(0, 2); {Seek 0 bytes from the stream's end point}
    S := ' This line will be added to the end.';
    ptr := PChar(S);
    magBlob.Write(S, Length(S));
//
//   I have also tried
//
//    magBlob.Write(temp, sizeof(longInt);
//    magBlob.Write(xdata , sizeof(double)*dataSize);

    magBlob.free;

    DataModule2.ArrayData.Post; // C++ exception generated here
end;

This is my configuration:
     Delphi version 5.0 (build 6.18) update pack 1
     NT 4.0 Build 1381 Service pack 6
     Database:Access 97
     BDE 5.01

Any ideas?

Sent via Deja.com http://www.deja.com/
Before you buy.

Re:Files required for deployment


I am getting a C++ exception when I do a post after I have written to a
BLOB. The exception only happens in release mode, never under the
de{*word*81}. The only way I have confirmed that the BLOB write is the
problem is by commenting out the call. Here is the code (an it should
look very similar to the example code under BLOB write):

procedure TForm1.Button8Click(Sender: TObject);
var
  magBlob, IntensityBlob: TStream;
  temp: longInt;
  i: integer;
  S: String;
  ptr: PChar;
begin
    // the assumption is that the header was written first
    for i := 0 to dataSize-1 do
    begin
      xdata[i] := i;
    end;
    DataModule2.ArrayData.Edit;
    magBlob := DataModule2.ArrayData.CreateBlobStream(
      DataModule2.ArrayData.FieldByName('Intensity'), bmWrite);
//
//                              I have tried bmReadWrite ^^^^^

    temp := dataSize;
    magBlob.Seek(0, 2); {Seek 0 bytes from the stream's end point}
    S := ' This line will be added to the end.';
    ptr := PChar(S);
    magBlob.Write(S, Length(S));
//
//   I have also tried
//    magBlob(PChar(S), length(s)); // compile error
//    magBlob(ptr, length(s));
//
//    magBlob.Write(temp, sizeof(longInt);
//    magBlob.Write(xdata , sizeof(double)*dataSize);

    magBlob.free;

    DataModule2.ArrayData.Post; // C++ exception generated here
end;

This is my configuration:
     Delphi version 5.0 (build 6.18) update pack 1
     NT 4.0 Build 1381 Service pack 6
     Database:Access 97
     BDE 5.01

Any ideas?

--
Thanks,

K. Haden (kha...@optimaginc.com)

Sent via Deja.com http://www.deja.com/
Before you buy.

Other Threads