Re: Project Folder Structure

From: J French (erewhon_at_nowhere.uk)
Date: 10/30/04


Date: Sat, 30 Oct 2004 13:06:03 +0000 (UTC)

On Fri, 29 Oct 2004 07:02:34 -0700, "Tod" <todtown@swbell.net> wrote:

>I've been creating Excel reports for a few years, but
>have now inherited a server with a bunch of VB 6.0
>projects. It's a real mess. Files are strewn about all
>over the place with no real regard as to what goes where.
>Modules are FULL of sloppy code and tons of commented old
>code.
>
>I'm going to take on the task of deleting projects they
>don't need and cleaning up the ones they do need. I know
>the language fairly well from using VBA, but am not too
>aware of the best way to structure the files associated
>with each project. Most of the projects that I'm keeping
>use the same modules. I'm thinking of putting those
>modules in one folder for each project to reference.
>Also, the standard executables from these projects are
>used in Scheduled Tasks. I'm thinking I could put all of
>the EXEs in one subfolder. Then create separate folders
>for each VBP and related files. Does this sound about
>right?

I strongly recommend that you back up thoroughly first.

Each project has a .VBP file which contains the file names of all
modules used in the project.
Annoyingly these can be very 'relative' eg: ..\..\dir1\module.bas

If you are dealing with a really messy programmer then there could be
multiple modules with the same names but very slightly different code.
There could also be 'cross-links' all over the disk.

If the EXEs belong in the same suite, then, yes they should be in the
same directory, but I expect there will be more than one suite of Apps
on the machine.

My preferred setup is:

x:\dev\uslib ' modules used by /everything/
x:\dev\app1 ' standalone App source & exe
x:\dev\app2
x:\dev\suite1 ' exes for the suite in here
x:\dev\suite1\common ' modules common to suite1
x:\dev\suite1\appA
x:\dev\suite1\appB
x:\dev\suite1\appC

If you have large Apps - or rather Apps with many modules, then it
could be an idea to programmatically move them around
- or hunt for a utility to do that for you

Manually moving Apps from within VB is time consuming, easy to screw
up and thoroughly unpleasant as 'real' file names and paths are
inconveniently obscured from the programmer.

Personally I would programatically collect and analyse the .VBP files
before doing anything else.

Also watch out for things like .FRX files and possibly resource files.



Relevant Pages

  • Re: Over 100 Microsoft MVPs Have Signed Online Petition - Give Us Back VB!!
    ... Their purpose is to sell platforms and Office, which is where MS makes its money. ... You simply cannot convert apps of any size or complexity without a complete rewrite. ... Any Delphi programmer who bids on projects has heard over and over again from prospective clients that Borland can't be trusted to "be here" in five years, and therefore VB was the safe bet. ... an investment in getting past competent in a language is a bad investment ...
    (borland.public.delphi.non-technical)
  • Re: .NET and Delphis future
    ... Big name products are still being built for API. ... Real objects, decent languages, business apps ... The world's best kept secret is that an experienced programmer when writing ... desktop apps gets the most value for $ with Delphi. ...
    (borland.public.delphi.non-technical)
  • Re: Know any good OOA/D book
    ... Nile while the smaller apps are like villages on the Nile's edge. ... I need to be able to read large source code bases, ... architecturally either what went wrong or why, despite a programmer ... Most architectures underwhelm me with their support for specifying ...
    (comp.object)
  • Re: RFC - New Object-Oriented Method of Parallel Programming (Shorter Version)
    ... Now it includes a very short - programmer model only - specification: ... MPI BSP, Bulk SCheduling Processor. ... tags of working apps. ... I got to thinking about the INSTRUCTIONS message above, ...
    (comp.parallel)
  • Re: Odd behaviur...
    ... libraries, most of which are your own, the includes are easily managed. ... >>left wondering why a programmer capable of producing such code would ... Delphi and inserted as dlls into the existing C code base. ... made to new looking apps with Delphi GUI and C dlls carrying the older code. ...
    (comp.lang.pascal.delphi.misc)