Copyright: Copyright Don Welsh 1993


Cover
THE MAGAZINE FOR VISUAL BASIC PROGRAMMERS!                  FEB./MAR. 1993

ABOUT ELECTRIFIED VISUAL BASIC MAGAZINE

FROM THE PUBLISHER'S DESK

CONTENTS


About EVB Magazine
ABOUT ELECTRIFIED VISUAL BASIC MAGAZINE

ELECTRIFIED VISUAL BASIC MAGAZINE is an "electronic" magazine. It is a Shareware product. It is not free. If you enjoyed or found this issue of value, the Shareware price for this single issue is only $4.50. Your support is necessary if you want us to continue to produce this magazine.

SHAREWARE PAYMENT FORM


EVBMAG Shareware Form
EVB MAGAZINE SHAREWARE PAYMENT FORM

SELECT PRINT FROM THE FILE MENU.

NAME: _______________________________

COMPANY NAME: ____________________________________

ADDRESS: ____________________________________________

CITY: __________________________

STATE: _________________________

ZIP: ____________________________

COUNTRY: ______________________

What you liked about this issue? _________________________________________

__________________________________________________________________

__________________________________________________________________

__________________________________________________________________

What you did not like about this issue? _____________________________________

___________________________________________________________________

___________________________________________________________________

___________________________________________________________________

Single issue Price is $4.50 per issue.

California residents add 7-3/4 % sales tax.

Send check or money order drawn on a US Bank made payable to PRO-DATA and send to the following address:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


From the Publisher
FROM THE PUBLISHER'S DESK

By Don Welsh

I would like to take this opportunity to welcome all of the new readers of ELECTRIFIED VISUAL BASIC MAGAZINE. It is a electronic magazine published six times a year that is devoted to covering the exploding Visual Basic market. We have chosen to publish the magazine in Windows 3.1 Help format. Using this method we can provide a colorful magazine with hypertext, pop up graphics, searching and printing capabilities. The magazine features Reviews of commercial and shareware Visual Basic Add-ons, Visual Basic programming articles (with source code), Tips and Tricks, New Visual Basic Products, Contests and more.

Are you tired of searching through many different magazines hoping to find an article or review relating to Visual Basic? If you answered yes to this question then this magazine is for you!

We welcome your suggestions and comments on this magazine. We will be striving to improve the magazine with every issue. We can only accomplish that with your input.

Software Companies may send press releases and/or review copies of Visual Basic related programs to the below address:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115

To advertise in the PRODUCT SHOWCASE section of this magazine call (619) 464-0767 for information.

Publisher

Don Welsh

Associate Editor

Pam Johns

Associate Editor

Jon West

Design

Bill Hamilton

Programming

Arthur Sanchez

John Tredwell

Authors

Mike Able

Dave Johnston

Gordon Smith

Robert Thomas

Jack Thomas

Thomas Wagner

ELECTRIFIED VISUAL BASIC IS PUBLISHED SIX TIMES A YEAR AND IS COPYRIGHT (C) 1993 BY PRO-DATA. ALL RIGHTS RESERVED. ALL RIGHTS TO CONTENTS OF THIS PUBLICATION ARE RESERVED, AND NOTHING MAY BE REPRODUCED FROM IT EITHER IN WHOLE OR PART WITHOUT WRITTEN PERMISSION FROM THE PUBLISHER. THIS ELECTRONIC MAGAZINE IS LICENSED "AS IS". PRO-DATA MAKES NO WARRANTIES, EITHER EXPRESSED OR IMPLIED, WITH RESPECT TO THIS MAGAZINE, THE INFORMATION IT CONTAINS, ITS PERFORMANCE, QUALITY, OR FITNESS FOR ANY PARTICULAR PURPOSE. THE VIEWS EXPRESSED BY THE AUTHORS MAY OR MAY NOT BE THE SAME AS THOSE OF THE PUBLISHER OR PRO-DATA. ALL TRADEMARKS USED HEREIN ARE PROPERTY OF THEIR RESPECTIVE HOLDERS.


Author
Publisher

This column is written by Don Welsh. If you have any questions or ideas for this "electronic" magazine please contact me through ELECTRIFIED VISUAL BASIC MAGAZINE:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


CONTENTS

SUCCESSFUL SHAREWARE

VB DATA BASICS

VISUAL BASIC 2.0 REVIEW

VB MUSCLE REVIEW

VISUAL BASIC SUPERBIBLE BOOK REVIEW

MINI-REVIEWS

VISUAL BASIC NEWS

PRODUCT SHOWCASE


Sucessful Shareware
SUCCESSFUL SHAREWARE

By Robert Thomas

Shareware has become big business. Many shareware authors are making a lot of money with their programs. Many commercial software companies are now releasing programs into the Shareware marketplace. This column is going to look at the different aspects of becoming a successful Shareware author.

Some of the topics we will be covering include:

Hints on writing your Shareware program

What to charge for it

How to encourage users to pay registration fees

How to advertise and promote it

How to distribute it

What types of programs sell best

How to write good user documentation

...and much more.

For this first installment I will be writing about what types of Shareware programs are most popular and which are most often registered. I will also talk about getting your shareware program ready to distribute and hints on writing it.

You might think that the most popular shareware programs are the ones most often registered. Unfortunately this isn't the case. I found that the number one selling category of shareware is games. But with my own experience with game shareware that I have written and talking to many other game authors it seems to be the least registered. The category with the most registrations is business programs. Now this shouldn't stop you from writing game software. It just means if you are going to write one it better be excellent, because game authors have a smaller piece of the pie to divide up. If you are looking for the best chance at receiving registrations I would recommend writing programs in the following order:

1.	Business (Includes: Word Processing, Database, Finance etc.)

2.	Utilities

3.	Home & Educational

4.	Games

Now that you have decided what type of program to write and have programmed it (in Visual Basic of course) what next?     TEST IT!     There is nothing more damaging to a programmers reputation than to release a buggy program. If your program is really buggy you might not ever be able to recover. Even if you send out a new version people might not want to waste their time with it and if people don't try your program their not going to register it. Try to test your program on several machines. How will your program look on a VGA, EGA or Mono screen? Can your program be used by a system that doesn't have a mouse? Can it run adequately on a 286 with 2 megs ram or does it require a 386 with 4 megs ram? You need to try and imagine what your users might try with your program and make sure these actions don't kill your program.

There are a lot of very good Windows shareware programs out there with more coming out every day. Your program must be easy to install and setup. Make sure you give your users a choice of drive and/or directory to place your program. You need to have an installation routine, especially if you have lots of files to be installed. Visual Basic 1.0 with Professional ToolKit and Visual Basic 2.0 come with the necessary items to make a nice graphical installation routine. If you are going to change the users Autoexec.bat, Config.sys, or any of the .INI files that come with Windows be sure to tell the user and give them the opportunity to make the changes manually. Most people do not like when a program changes these files automatically.

With your well tested program in hand your next step is to get it ready for distribution. Always include a README.TXT file with your program. Make it a plain ASCII file with Notepad. People are busy these days and they want to know what your program does. This goes for shareware disk distributors also. I won't even look at a program if it doesn't have a readme.txt file with it. The following should be included in the text file:

A short description of your program.

The file names and sizes.

System requirements.

How to install the program.

A longer description of your program.

Next get your on-disk manual ready. I create mine with Write and call it MANUAL.WRI. Most people fail to read your manual right away but many at least look at it so it needs to look professional. A shareware author recently sent me a disk that had a README file that only included the program name and a one line description. This was not enough information so I opened his .WRI file. It was 12 lines running together with no punctuation. Nowhere in these files were there any system or software requirements, installation instructions or even a very good description of what the program did. Needless to say I never even tried his program. Another thing this author did wrong is the label on the disk was scribbled in pen. Remember first impressions last. What kind of support can you expect from such an unprofessional author?

This brings this installment to a close. In the next issue of ELECTRIFIED VISUAL BASIC MAGAZINE I will discuss how and where to distribute your program and more!


Author

This column was written by Robert Thomas, a shareware author and shareware disk distributor. If you have any questions or ideas for topics for this column please contact me through ELECTRIFIED VISUAL BASIC MAGAZINE:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


VISUAL DATA-BASICS

By Thomas Wagner

Approximately 50% - 75% of Visual Basic users, programmers and developers are actively involved in the creation of data processing applications through the use of VB. If that's not enough reason for some special attention, I don't know what is. Which is exactly why we decided to produce a column called "Visual Data-Basics"

This column will deal with anything and everything relating to VB and data processing / database development - including the occasional glance at related development environments such as MS Access for example. There will be reviews of books, articles, magazines, and software which may aid in your VB programming efforts. Most of all I hope that this column will become  an entertaining and informative part of your reading enjoyment.

I'm not telling you anything new when I reiterate that VB is one of the most flexible products of it's kind on the market today. Especially flexible in the sense of empowering end-users.  Microsoft's product development strategy includes plenty of research of the individual target markets. Along the way, someone at MS realized that there are a lot of smart people working in Corporate America today. These people would benefit immensely from a visual development environment. VB is one nice step in that direction. Not nearly the learning curve of a program such as C or C++, yet able to produce all sorts of utilities and special purpose programs for the hottest user interface since the Macintosh - namely Windows.

I know, I know, Windows can stand a lot of improvement, but  consumers embraced its graphical interface with such enthusiasm that most all major software products are, will be,  or have been re-written for it.

Would you believe that there are already predictions of Windows' demise! Especially in favor of OS/2. I just don't see it. For a similar reason that WordPerfect 5.0 / 5.1 still holds 60% of the word processing market, in spite of an interface that requires a Thomas Guide to navigate. That reason is called Standardization. WordPerfect was able to induce standardization in favor of it's product by offering toll-free tech support.

By pre-empting the release of OS/2 with Windows 3.0, Microsoft in effect was first to introduce a new standard. So Corporate America,  a myriad of small businesses, and millions of end-users were first exposed to Windows. And you know what they say about first impressions - among other things they last.

But let's get back to databases. Actually, let's go back a few years to the "stone age" of database development, the early 80's. The first DBMS commercially sold, dBase, filled a unique need and because it was the only tool of it's kind at that time, the dBase family of products accounts for millions of installations worldwide. Without any immediate competition, Ashton-Tate had established something of a monopoly. The dBase file format became a standard, as did the dBase programming language. There was no serious challenge to Ashton-Tate's rule until Fox Software appeared on the scene.  Fox simply had developed a better mouse trap. The rest is history. Assorted lawsuits, boggled product releases and corporate take-overs later we have today's playing field.

No more Ashton-Tate, Fox  and Nantucket (former makers of Clipper). Instead you have three software "super powers", Microsoft, Borland and Computer Associates involved in an ever more interesting competition for your dollars with their flagship products - Paradox, DBase IV / Win & DOS, Access, FoxPro 2.5 Win & DOS and Clipper. In addition there are an assortment of smaller companies such as the makers of Superbase, and  Approach joining in the competition for your favor. All of them contribute to a myriad of ways of developing some form of relational data management system. By some estimates the number of database applications created with these tools doubles every six months.  And then, of course,  there is VB ....

While Borland, Microsoft and Computer Associates have been striving to capture ever increasing slices of the data management market with their specific DBMS's,  a very subtle development began to take place. Namely the surge in popularity of programming languages such as VB, ObjectVision, Realizer and GFA Basic. All of them have experienced their respective levels of success because of two reasons : the incredible acceptance of Windows 3.0, as well as their particular ability to create programs for Windows . Certainly not initially thought of as a tool for database management, VB is developing those capabilities at a rapid rate

Of all it's competitors, Visual Basic has the widest support of third party developers, who in an ever increasing number, produce add-on modules that enable VB to tackle an ever wider array of tasks. Following a veritable plethora of custom controls, 3-D buttons and  assembly language libraries, the first database DLL's appeared. The initial offerings in this area included companies that had already produced DLL's for other development languages such as "C", which they found were accessible by VB. At present time, a little more than one year later,  things have changed even further. Companies such as Q+E and AJS have released products that are to varying degrees tailor made for VB.

If you are using a specific DBMS such as FoxPro or Paradox, why is it important for you to be familiar with this particular area of VB programming? Remember my earlier comment about standardization? Presently there are versions of Basic included with Word for Windows, and more importantly Access as well. Add to that the portability of VB/Dos code to VB/Win and it seems to me we are again working on a standard.  However, this time it will encompass more than just a DBMS program such as the case of dBase. That in and of itself is a noteworthy progression.

These developments appear to be additional steps in the direction of what I like to call "building block" software. Imagine the future of software to be similar to  a box of "Lego" building blocks. I'm  only half kidding here. Object - orientation to the max is another way of putting it. You'll be able to assemble a working environment uniquely suited to your needs by connecting program objects. For example one person may use the word processing "building block" and connect the spreadsheet  and communications "block" to that. Another user may configure his environment differently, perhaps by adding a database or a language or an e-mail product. Do you see the possibilities? Now imagine a user-friendly language that is able to manipulate these blocks even further. Does it seem to you that maybe some future version of VB will be assigned to that task?

On a more practical note, I hope that these individual "blocks" or program objects will take up less system resources than their present day counter parts. Ideally they will, although I wouldn't want to bet on it. At any rate, you can witness the infancy of this technology in the use of DDE and OLE connecting individual Windows programs, as well as the very Dynamic Link Libraries we use to create database applications in VB. How far into the future are we talking about for the real thing? I don't know. Perhaps Bill Gates and Phillip Kahn may have an idea.

Back to our situation here and now. Why would you want to develop a database in Visual Basic as opposed to a dedicated software package such as FoxPro, Paradox or Access? Well, it depends. (Where have you heard that before?) Among other things, to me personally, it depends primarily on the users needs and the environment that I will be working . For example if easy cross-platform compatibility is of paramount concern, it may be better to use FoxPro, especially in view of future code transportability between UNIX, DOS, Macintosh and Windows. However, if a fast, small overhead database is required, especially one that does not need the elaborate reporting capabilities of dedicated DBMS products, Visual Basic with a carefully selected DLL can do the job oftentimes remarkably well.

One of the deciding factors in the selection of a specialized database environment, such as Access or Paradox, is the ability to produce a great variety of reports. Until the reporting capabilities of VB have been expanded, perhaps through the use of programs that recently appeared on the market,  such as Crystal Reports or the MicroHelp Report Generator, it's primary use can be found in the processing and storage of data. Examples of that approach run the gamut from "Time & Chaos", a popular shareware PIM, to an interactive on-line magazine called "WheelBase" that utilizes VB, Windows, Unix and a System Strategies X.25 packet switching program to interact with Compuserve..

The latter is a development effort by  WheelBase Corp. and Vista Development Corp., producers of the Raima Database Manager, a database engine that I hope to tell you about in the near future. Since we're on the subject of Vista Corp. and the Raima Database Manager, please note that the program used to be called dB_Vista and had been renamed after Vista was purchased.

Another interesting application produced with Raima's program is presently being used by the US Navy to monitor compliance with the Strategic Arms Reduction Talks (START). If that acronym sounds familiar, it's because the second part of START was just signed by President's Bush and Yeltsin in Moscow. The Navy's database ran on 70 IBM PC/2's, and was responsible for real-time tracking of the movement of sea launched ballistic missile motors.

Just so there will be no confusion, the Navy's system was written in "C". However, Raima is one of the companies I mentioned earlier that realized their product is portable to VB as well as C or Pascal.

A very interesting part of it's functionality is the ability to use relational and networked database modeling technologies simultaneously. More on that in the future.

So there you have it. From single user shareware to multi-platform network aware applications running  concurrently with multiple operating systems - it's all possible with Visual Basic.

Looking toward the near future, there are a lot of exciting developments under way. Be it a new database DLL from Pioneer Software that is able to read up to 17 different DBMS formats, or simply a new way of doing the same old thing developed by a single programmer who got "struck" by inspiration. These are exciting times. And because I can't be everywhere at once, I would like  to invite you to let me know about these developments. Just drop me a line. I hope that together we can enjoy ourselves, learn,  and  from time to time marvel about the ingenuity of our fellow Visual Basic enthusiasts.

Lastly, a quick preview of my next column. I hope to tell you at length about a company and product that I found to be absolutely wonderful to deal with. In business it is very, very important to stand by ones word. Reputations oftentimes ride on the trust a customer develops in a consultant or company.  I like to deal with my suppliers and contacts in just such a fashion. So, if you are interested in finding out more about an add-on development outfit where people are friendly, helpful and most of all keep their word - just stay tuned. Until next time...


Author

Thomas Wagner

1201 South Ogden Drive

Los Angeles, CA 90019

(Mr. Wagner is an independent database programmer. He has been involved with the creation of  applications on a number of platforms and is a member of several software quality assurance programs.  Most recently he has been working on database solutions utilizing Microsoft Access. )


VISUAL BASIC 2.0

By Jack Thomas

If you enjoyed the first version of Visual Basic you'll love the latest release. Visual Basic 2.0 now comes in Standard and Professional versions. The Professional edition includes everything in the Standard Edition plus many extra controls and tools needed for professional programming. Microsoft has been listening to it's users and have fixed bugs, added enhancements, increased power and ease of development.

SPEED AND CAPACITY IMPROVEMENTS

If you have used the previous version of VB you will immediately notice the greater speed and capacity of this new version. You can have larger and faster applications.

Faster Applications

Faster application load.

Code loaded on demand.

Form show is up to 35% faster.

Property Access is up to 50% faster.

Project load & unload in development environment is faster.

Apps are much smaller due to elimination of name tables.

Graphical controls are faster to paint.

Larger Applications

Huge Arrays.

2x as many global variables.

4x as many procedures per application.

2x as many variables per module.

Up to 2x as many controls/form (limit is 255 control names per form).

Unlimited string space, up to available memory.

Graphical control uses fewer GDI resources.

EASIER DEVELOPMENT

Helping to make development easier is the addition of the Properties window. It makes it much easier and quicker to change properties of controls and forms. You can scroll through all of the properties and edit values in a single window, instead of changing them one at a time as in VB 1.0.

The Properties window is automatically displayed when you view a form. I usually have this window stretched all of the way down my screen so I can see as many properties as possible. Occasionally this window gets in the way but it can be quickly closed altogether. To re-display the Properties window after you have closed it you can press [F4] or select the Properties option from the Window menu. This is probably one of my favorite additions to VB 2. I took an old project I had completed in Visual Basic 1.0 and changed a large group of properties the old way. Then I converted it to VB 2.0 and changed the same group of properties and it took about one quarter the amount of time.

 Another aid in making the development of Visual Basic programs easier is the ToolBar. It includes 14 buttons that with a mouse click you can add forms or modules, load or save projects, bring up the menu design window, bring up the Properties window and to control program debugging.

Yet another aid in making the development of Visual Basic programs easier is that your source code can be color-coded. Keyword, operators and comments can stand out in different colors. This makes your source code much easier to follow. You change the colors using the Environment Options dialog box. You display the dialog box by picking Environment from the Options menu. To change the colors you change the values in the list box. Some of the items that you can change the colors are:

Keywords

Identifiers

Comments

Selected text

Breakpoints

Next statement

NEW CONTROLS

 The standard edition comes with these new controls: Grid control for spreadsheets and tables, Image control, Line control, OLE Client Control for integrating data from other applications and a Shape control. A host of other new custom controls come with the Professional Edition (shown to the right). These include controls for serial communications, pen computing, multimedia and many more.

SUMMARY

Visual Basic 2.0 comes with a great many improvements. We have only touched on some of them. In future issues of EVB Mag we will continue to discuss VB 2.0 in great depth.


Author

This column was written by Jack Thomas. If you have any particular VB related programs you would like reviewed send me a note. Please contact me through ELECTRIFIED VISUAL BASIC MAGAZINE:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


Microhelp Muscle
MICROHELP MUSCLE REVIEW

By Gordon L. Smith

MicroHelp Muscle is an add-on to the basic language.  Compilers supported include Microsoft Quickbasic, PDS, Visual Basic for Windows and Visual Basic for DOS.  This review will look at the Visual Basic for Windows edition.  Most of the same functions are available in the other versions.  Muscle sells for $189.

Overview

Detailed Review Comments

Muscle is sold by:	MicroHelp Inc

4359 Shallowford Industrial Parkway

Marietta, GA 30066

800-922-3383


Muscle Overview
Overview

MicroHelp Muscle provides a considerable extension to the Visual Basic Language.  While no controls are provided, the language extensions add power to whatever controls you are using.  Muscle contains over 400 functions.  (The new version promises over 700 functions).  Not all of these 400 functions add to the VB language.  They can be grouped into three categories:  (1)  Those which add to the language,  (2)  Many provide replacements for VB language,  and (3)  Many provide access to the Windows API functions.

The reasons for using Muscle include: (1)  A need for the functions added to the VB language, (2)  Faster execution speed and simpler coding, and (3)  Most contain their own error trapping.  To use Muscle you must declare the functions, for example, in the Global Module.  The total declarations are provided in a text file which can be added to the Global Module.  If all of the declarations are used, approximately 64K of code is added to the program.

The size of Muscle DLL, distributed with the runtime program, is 88K.

The main negative in Muscle 1.0 was that the documentation covered all three languages supported (QB, PDS, VB).  This will be changed with 2.0 which will have separate documentation for each language.  With the $189 price tag and the 88K DLL one needs to be sure they need the power of Muscle for their applications.  The detailed review, provides more information to assist in deciding if you need this package.

Summary:  If you need the power provided by Muscle (see the detailed review), then Muscle functions are easy to implement, the documentation offers many examples of how to use the functions, and the technical support is outstanding.


Detailed Review
Detailed Review Comments

Muscle is oriented toward developers of the larger or more complex type applications.  In particular, applications which need to make use of Windows Global memory to store either fixed or variable length strings arrays or need the many string functions added to the VB language.  Interfacing with the Windows Common Dialogs or API functions is easier with Muscle.  For example, creating and tracking Popup Menus is accomplished much easier in Muscle than in the Windows API functions.  The error trapping provided by most Muscle functions reduces the overhead in the program.

With over 400 functions provided, I am not going to attempt to describe them all.  Instead, I will provide descriptions of some of the functions which may help you decide if you need the power provided by Muscle and are willing to pay the price and carry the runtime DLL.

Muscle provides functions in the following areas:

Access to the Windows Common Dialogs

Popup menu creation and tracking

Manipulation of List and Combo boxes

Access to many Windows API functions

Numerous functions for working with strings

File handling routines

Directory and disk routines

Functions to manage basic arrays

Fixed and variable length large string arrays

Windows memory routines

Keyboard routines

System routines

Date and time routines

Miscellaneous other functions

One of the reasons a lot of the function calls in Muscle is made relatively simple is that the variables needed by the function are usually passed via a user defined record type.  These record types are all defined in the sample Global module distributed.  The function can be called over and over with different effects simply by loading the record type with different values.  (Some of MicroHelp's literature talks about the simply function calls.  You do have to load the record variable first - that's why the function call is simple, you merely pass the record variable.  This makes for simpler coding.)  (Example of File Open using Muscle to call the Windows Common Dialog)  (Incidentally, for those VB Pro users, if you use Muscle you do not need the ProKit VBX to access the Common Dialogs).

Muscle provides the capability to manipulate VB basic arrays.  Each of these functions contains it own error trapping and many functions are provided for which you would have to write several lines of code if you were not using Muscle.  For example, one function will delete an element and roll the other elements down in the array.  Functions are provided to sort arrays, search within arrays, delete arrays, insert elements, etc. (Basic Array Code Example)

Muscle provides two types of arrays beyond VB:  Fixed length string arrays and variable length string arrays.  These arrays are stored in the Windows Global memory (memory is requested using GlobalAlloc) and therefore their size is limited only by the installed memory.  These arrays are manipulated by changing the values in a record variable (MhMuscleType) and then passing that record variable to the function.  For example, to set up a variable length string array, referred to as a HugeStringArray, the Muscle Type is loaded with the specifics of the array desired and MhHugeStringDimBest is used to Dim the array.  MhHugeStringFetch$(MuVar) fetches the specified element.  Other functions allow searches of the array, deleting and inserting elements, etc.

Muscle provides a simple way to use many functions available via Windows API calls.  (Note:  these Muscle functions are not really additions to the VB language since VB can directly call the Windows API functions.)  By using a Muscle function instead of directly declaring and calling API, their use is simplified and many provide error trapping.  As a couple examples:

To get the Windows Directory:  WinDir$ = MhWinDir()

To get the Windows Version:  Ver% = MhWinVersion(Major%, Minor%)

To find if a file exists:  DoesIt% = MhFileExist%(FileName$)

Because of the extremely large number of functions in this package, it is impossible in a limited space to describe them all.  I have tried to provide a flavor of how Muscle enhances the VB language.  An inquiry to MicroHelp and they will provide a fairly detailed brochure which describes all of the functions.  Muscle 2.0 is expected out in the Jan-Feb time frame.

One of the real strengths of Muscle is the support provided by MircoHelp.  Another is the numerous examples provided in the documentation for each function.


File Open Code Example
File Open Example

This example use Muscle to access the COMMDLG.DLL File Open dialog.  Muscle provides two defined Types used in the File Open example.  These are:

Type MhGetFileType

     hWnd As Integer

     FilterIndex As Long

     InitFileName As String

     FormCaption As String

     initDir As String

     DefaultExtension As String

     HowManyFilters As Integer

     Flags As Long

     RawNamePos As Integer

     ExtensionPos As Integer

End Type

Type MhFileFilterType

     Description As String

     Mask As String

End Type

In order to access the File Open dialog, file these two type variable with the values desired and then pass them in the Muscle function.  As a General Procedure set up to type variables:

Dim FileFilterType() AS MhFileFilterType

Dim GetFileType As MhGetFileType

Now in the procedure:

ReDim FileFilterType(1 to 2) 'We're going to use to file masks

FileFilterType(1).Description = "TextFiles (*.txt)"

FileFilterType(1).Mask = "*.txt"

FileFilterType(2).Description = "All Files (*.*)"

FileFilterType(2).Mask = "*.*"

'Now set up the GetFile Type

GetFileType.FilterIndex = 1  'Set Filter Mask (1) as the default

GetFileType.InitDir = "C:\"  sets the initial search directory

GetFileType.DefaultExtension = "txt"

GetFileType.HowManyFilters = UBound(FileFilterType)

GetFileType.hWnd = 0  'No Help messages provided

'Now we'll call the dialog

FileName = MhGetOpenFileName$(GetFileType,FileFilterType(1))  ' This is the Muscle function

If Filename = "" Then  ' If a null value is returned an error was encountered

' We can use a Select Case to find out the error:

Filename = 0:  User canceled the dialog

Filename = -1: Unalbe to allocate memory block

Filename = -2:  You passed a filter description without a mask

Filename = -100:  COMMDLG.DLL not loaded

Else

Filename variable contains the name of the file selected

End If

This example illustrates how many of the Muscle functions are used.  A type varualbe is set and then passed in the Muscle Function.  Note the error trapping provided by Muscle.


Basic Array Example

In this example, we'll use a Muscle function to delete an entry in on of Visual Basic arrays.  The Muscle function will delete the element and roll the other elements down one.  The VB array is SAMPLEARRAY(100) As String * 50.  We want to delete element 50 and roll the others down to fill in the gap.  The Muscle Type variable used here is MuVar as MhMuscleType.  This is a frequently used type variable in Muscle.  First we will set the type variable:

MuVar.Gen1 = 50  ' the element we are going to delete

MuVar.Gen2 = Len(SAMPLEARRAY(0))

MuVar.GeneralCount = 1 'the number of elements to delete

MuVar.Last Element = 100

Dim TempArr As String * 50  'a model array element

' Now we'll call the Muscle function

Result% = MhArrayDeleteVB%(TempArr, SAMPLEARRAY(50),MuVar)


Author

This review was written by Gordon Smith, a shareware author writing programs in Visual Basic for Windows.  The Journal Program, a free-form, text database system makes extensive use of Muscle.  The text information is stored in a Muscle Huge String Array.

Journal was reviewed in the November 92 Windows User Magazine: "Well-executed free-form information manager that lets you collect information about daily activities and individual projects."  The program is available on Compuserve WINADV Forum, Lib 15  (JNAL23.ZIP) or by contacting the author directly:

Gordon L. Smith

2233 Lovedale Lane Apt I

Reston, Va 22091

703-715-9037

Compuserve  72567,3416


MicroHelp

MicroHelp Inc

4359 Shallowford Industrial Parkway

Marietta, GA 30066

800-922-3383


Super Bible
VISUAL BASIC SUPERBIBLE

 BOOK REVIEW

By Dave Johnston

While I think the manuals that come with Visual Basic are good I still collect and read all of the 3rd party books I can lay my hands on. A very good reference book is The Waite Group's Visual Basic SuperBible. A day doesn't go by that I open this book for a quick piece of needed information. This is definitely not a book that you read from cover to cover. It is a huge book at almost 900 pages. It is not designed to be a tutorial on Visual Basic.

The book contains seven parts and six appendices. It is laid out as follows:

PART 1	GETTING STARTED

Chapter 1	Using the Visual Basic SuperBible

Chapter 2	Introducing Visual Basic

Chapter 3	Programming with Objects

PART 2	USING FORMS AND CONTROLS

Chapter 4	Setting up forms

Chapter 5	Designing the Applications Appearance

Chapter 6	Using Forms and Controls in Program Code

Chapter 7	Responding to Changes in Properties

PART 3	DRAWING GRAPHICS

Chapter 8	Setting Up Graphical Objects

Chapter 9	Designing with the Coordinate System

Chapter 10	Drawing Shapes

PART 4	DISPLAYING FONTS AND TEXT

Chapter 11	Displaying Text with Objects

Chapter 12	Defining and Using Fonts

Chapter 13	Getting User Input with Text Boxes

PART 5	MOUSING, DRAGGING, AND KEY PROCESSING

Chapter 14	Responding to Mouse Events

Chapter 15	Managing the Dragging Event

Chapter 16	Handling Keyboard Input

PART 6	DESIGNING DIALOG, LIST, AND COMBO BOXES

Chapter 17	Creating and Using Dialog Boxes

Chapter 18	Using List and Combo Boxes

Chapter 19	Managing Files in Drive, Directory, and File List Boxes

Chapter 20	Operating Scroll Bars

PART 7	MANAGING DATA FLOW

Chapter 21	Establishing and Controlling the Application focus

Chapter 22	Timing and Time Information

Chapter 23	Using the Windows Clipboard

Chapter 24	Sending Data to the Printer

Chapter 25	Transferring Data with Dynamic Data Exchange (DDE)

APPENDICES

Appendix A	Visual Basic Language Tutorial

Appendix B	Visual Basic Language Reference

Appendix C	Debugging Techniques

Appendix D	Using the Windows API

Appendix E	Further Reading

Appendix F	How to Use the Program Disk

A program disk is included with the book. There is a project with each chapter (after chapter four) that illustrates Visual Basic concepts covered in that chapter. The disk has a directory for each chapter and has all files necessary to run the project. These project files sure beat typing in all of the code that would be necessary to get the projects to run. However the code for each project is in each chapter if you want to type it in yourself.

A neat feature of this book is "jump tables". These tables are located on the inside covers of the book. They contain comprehensive lists of concepts and keywords so you can quickly find the information you are looking for. While working on a project you can look up any object, function, statement etc. in the "alphabetical jump table" and know where to quickly find it. On the inside back cover there is a "task jump table". Use this when you want to find out what language features relate to a task you are trying to perform in your program.

Overall I highly recommend this book as a great Visual Basic reference tool. My personal copy is getting so much use it's starting to fall apart and I may soon have to purchase another copy!

This book is published by Waite Group Press. It is written by Taylor Maxwell and Byron Scott.

List Price is $39.95


Waite Group Press

200 TAMAL PLAZA

CORTE MADERA, CA 94925

(415) 924-2575


Author

This column was written by Dave Johnston. If you have any questions or ideas for topics for this column please contact me through ELECTRIFIED VISUAL BASIC MAGAZINE:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


MINI-REVIEWS

Mini-Reviews are small  reviews of shareware and public domain utilities, source code, reference files etc. These are great in the fact that they are good learning tools and you can stop re-inventing the wheel. They are usually smaller and do not warrant a full review in another section of this magazine.

FADE.ZIP

Bytes:   2398

Fade to black

This sample project demonstrates how to duplicate the fade from blue to black background that is common in Setup programs used by Microsoft and others.  Source only. The enclosed files were saved as text files under VB2. Although they cannot be loaded directly into VB1.0, the primary file (Fade.bas) can be imported into a VB1 module or it can be viewed with Notepad or any other text editor.

VINST6.ZIP

Bytes:   66546

Revised SETUP1 for VB 2.0

VINST6 is a new revision of the SETUP1 program that comes with VB 2.0. It has many new features including:

Checks for file version

Dialog box  with existing files

Optional popup for location of all directories

Popup before creating the "same" icon in a  group

Popup  before creating new directories

Special handling for  DDEML.DLL and COMMDLG.DLL

Many other changes and improvements.

The above can be obtained form the Electrified Visual Basic BBS.


ELECTRIFIED VISUAL BASIC BBS

This is a BBS for Visual Basic programmers. It is running high speed 14.4 V32bis modems. It is a fully graphical, mouse driven BBS. Use your mouse to click on icons for all BBS operations. It has many Visual Basic file sections for VB source code, Shareware and Freeware utilities / custom controls etc. There are also many general Windows file sections on-line. These include Windows games, utilities, icons, fonts, graphics, WinWord files, Word Perfect files, programming etc. There are also message sections dedicated to Visual Basic programming. It also has sections for Electrified Visual Basic Staff and Freelance writers.

CALL (619) 464-0188 with your modem today!


VISUAL BASIC NEWS

Microsoft TECH-ED

Microsoft TECH-ED is a conference held March 9-12 1993 at Walt Disney World Dolphin Hotel Orlando, Florida. It is a technical conference with information on Microsoft products. There are many conferences for all of Microsoft's products. This includes several on Visual Basic. Some of the VB sessions include:

Introduction to Programming for Windows using Visual Basic

Programming in Visual Basic

Accessing DDE and OLE in Visual Basic

VB Debugging Tips and Tricks

Visual Basic and ODBC Data Access

Accessing the Windows API from Visual Basic

Distributing Your VB Applications

VB Performance Optimization

And More!

For Registration information call Tech-Ed registration desk at 800-227-7951 from 7:00am to 7:00pm Pacific Time.

VBITS '93 (VISUAL BASIC INSIDERS TECHNICAL SUMMIT '93)

Co-sponsored by Microsoft Corporation and Fawcette Technical Publications, VBITS '93 has in-depth technical sessions on Visual Basic. It will be held March 29 and 30 at the San Francisco Airport Marriott San Francisco CA. Visual Basic programmers will enjoy sessions that cover topics such as:

Tips and Tricks

User Interface Design

Database Development

Add-on Programming Tools

Debugging and Error Trapping

Porting Applications from DOS to Windows

And More!

For Registration information call 800-848-5523 weekdays from 8:30am to 5:00pm Pacific Time.


PRODUCT SHOWCASE

VISUAL BASIC SHAREWARE LIBRARY

BUSINESS PLANS

VBMAN

EVB BBS

ADVERTISE IN EVB MAGAZINE


VB Shareware Library
VISUAL BASIC SHAREWARE LIBRARY

This library contains Visual Basic Shareware, Freeware and Public Domain files. All of these files are specially picked with the Visual Basic programmer in mind. You get plenty of Custom Controls, DLL's, On-line Help files, Source Code and more. This library contains no filler (some VB file libraries come with regular Shareware programs that are of no real use by VB programmers or come with no availability of Source Code - NOT THIS LIBRARY!) Below is a list of files included in the library:

VB COMMUNICATION FILES

COMMDEMO.ZIP - A limited but functional comm program. Partial Source Incld.

VBCOMM.ZIP - A communications control. Includes sample App.

VBTERM2.ZIP - A basic communications program. Source Code included.

MHCOMM.ZIP - Term program by MicroHelp. Shows what can be done with their VB Addon.

INSTAL.ZIP - Allows easy setup of shared Apps on a Network. Source Available.

VB CUSTOM CONTROLS

CCFACT.ZIP - A Demo of Custom Control Factory. Animated pushbuttons, 3-D effects etc.

CLPSIB.ZIP - Allows overlapping controls. Source code for a demo is included.

DROPDOWN.ZIP - Shows how to simulate a Combo Box with a Text Box & a List Box.

ETDEMO.ZIP - Source Code as a demo of EditTool which creates custom controls.

INPUT.ZIP - A TextBox control that adds 3-d,formatted input, justification.

MLISTBOX.ZIP - A control for extended and multi selection list boxes.

MOVTXT.ZIP - Shows use of a Picture control to simulate dragging text controls.

MSGBOX.ZIP - Easy way to set up MSGBoxes. This utility generates the source.

MULTSEL2.ZIP - A multiple selection list box control.

STSBAR.ZIP - C. Control to place a status bar "glued" to the bottom of a form.

VB4CTRLS.ZIP - Four controls to add 3-d effects, gauges etc.

VBLISTBX.ZIP - Control for multiple selection and multiple column list boxes.

VBMBTTN2.ZIP - A multi-button control that divides itself into sub-buttons.

VBPIC3D.ZIP - Control to provide buttons with pictures and 3-D shading.

FMDROP.ZIP - Control that allows VB to react to files dropped onto VB forms.

VB DATABASE FILES

PDOXDE.ZIP - A demo of using the Paradox engine. Paradox DLL req.

PXCREATE.ZIP - Routine allowing the creation of Paradox tables. Source Incld.

VBDB.ZIP - A database engine that supports dBase format & DDE.

KWI.ZIP - A small Address book with Visual Basic Source Code.

VB DLL'S

ENUMFONT.ZIP - A DLL to call Windows API function ENUMFONT. Source Incld.

HOTKEY.ZIP - A DLL to provide Hotkey support for VB Apps.

HUGEARY.ZIP - DLL to create, maintain & delete arrays greater than 64k.

HUGEGRID.ZIP - Example source to use HUGEARY with the grid control.

MHELP.ZIP - Free DLL from MicroHelp INC. Has VB versions of PEEK, POKE, INP, OUT.

SNDEX.ZIP - A Soundex DLL for Visual Basic.

VBPTR.ZIP - A dll to provide pointer support. Allows Bload/Bsave, MK$, CV?.

VBSW11.ZIP - A DLL to return window handles to active apps. Sample Source Incld.

VBUBBLE.ZIP - A DLL to provide bubble type help windows.

PSETUPCK.ZIP - DLL to access the standard printer setup dialog box. Sample source included.

PRSET.ZIP - A DLL for controlling & configuring printers. Source Included.

WFIND.ZIP - A DLL to supplement the AppActivate command.  Source Incld.

VBBTRV.ZIP - Example code for using Btrieve in VB Applications.

VB DISK ACCESS & FUNCTIONS

DSCAN.ZIP - A .BAS file to scan drives for a certain file.

FBR12C.ZIP - File Manager to Load/Run Apps. Source Included.

FILBX2.ZIP - A Windows type file open dialog box with source code.

FILER1.ZIP - File Finder to view, delete files & print DIR's. Source incld.

FILBX2.ZIP - Windows style file open dialog box. Source included.

VB FONT

FNTCNT.ZIP - Displays and prints fonts. Source code is Available.

FNTVIEW.ZIP - Source Code for an App to find, display & print Windows fonts.

FONTRO.ZIP - Shows how to print text at any angle in V.B. Applications.

VBFON2.ZIP - A simple font viewer. Visual Basic Source Code included.

VB GAMES

ACCRD1.ZIP - Solitaire game done with VB. Source Code Included!

CARD10.ZIP - A card deck DLL for writers of VB card games. Inclds 52 cards, Joker, 7 card backs.

G4K110.ZIP - Four games in one for kids. Source Code is available.

MYMEM1.ZIP - A memory matching game. Source Code is included.

ROLLEM.ZIP - The dice game Craps. Includes Source Code.

RUTHIE.ZIP - A game for young children. Source code Included.

SIMON.ZIP - The challenging memory/color/sound game. VB Source Code incld.

NUMGAME.ZIP - Childrens game for +, -, x, and division. Source Included.

TAB100.ZIP - Card game for two players. Visual Basic Source Code Included.

VB GRAPHICS & VIDEO

256PB2.ZIP - 256 colors in VB picture box controls.

3D4VB.ZIP - Create 3-d effects such as shadowed boxes & text etc.

ANIMAT.ZIP - Source code for creating smooth animation.

BITMAP.ZIP - Source to show how the use of the V.B. Picture Box functions.

BMPKIT.ZIP - Routines to scale, display & print .BMP's. Source incld.

BTDEMO.ZIP - Shows a easy way to create command buttons with pictures.

BUTTON.ZIP - Simulate command buttons with pictures on them. Source Incld.

GRAF20.ZIP - A control to display up to 24 bit color .BMP and .PCX pictures.

ICOBMP.ZIP - Converts .ICO icon files to .BMP format. Source Incld.

ICONDEMO.ZIP - Source to show how to draw graphics on a V.B. App's icon.

ICONDLL2.ZIP - Build a DLL from a collection of icon (.ICO) files.

ICONLOOK.ZIP - An .ICO viewer. Full Source Code is included in the Docs (.WRI).

ICONVIEW.ZIP - An icon viewing utility can save to clipboard. Source incld.

METALIB.ZIP - Routines to create, draw & save metafiles (vector graphics).

MULTIPIC.ZIP - How to apply pictures to buttons without loading from disk.

POLYGO.ZIP - Source for a graphics display. Shows use of iconized graphics.

SSAVER.ZIP - Allows you to create a screen saver (like After Dark) in VB.

VBFLIP.ZIP - Source shows how to store series of images in a single file.

VBMASK.ZIP - How to create a mask from a image & screen object using BitBlt.

VBMENU.ZIP - Shows how to add graphic bitmaps & check marks to a menu.

VBSCRL.ZIP - Demonstrates how to scroll/pan across a bitmap in a picture box.

WALLCH.ZIP - Automatically changes your Windows wallpaper. Source code Incld.

3DDEMO.ZIP - A demo of 3D4VB.ZIP in this file section.

WLPEEP.ZIP - Scroll through BMP, WMF, RLE & ICO files. VB 2.0 Source Included.

WMFBMP.ZIP - Converts WMF files to BMP format. VB 2.0 Source Included.

FADE.ZIP - Routine to make the background of your form fade from blue to back.

VB MISC. FILES

AREACODE.ZIP - Find the name for US & Canadian areacodes. Source Incld.

BASECVRT.ZIP - Converts numbers between bases. Source Code Included.

CM01.ZIP - A phone / address manager. Source available.

EZHELP.ZIP - An easy way to add help to your Apps. Inclds Source Code.

FXLAUNCH.ZIP - Mini launcher for Metz's programs. Source Incld.

LOSE1.ZIP - A program to help learn VB. Inclds Source code.

ORDER.ZIP - Order form for Shareware VB programs. Figures total & Tax etc.

QUITWIN.ZIP - Instant Windows exit with animation & sound. Inclds how.

VBLOTTO.ZIP - A lottery picker. Visual Basic source code included.

VINST4.ZIP - An updated install for VB Pro Toolkit.

WAVPLY.ZIP - A .WAV sound player includes Sourse Code.

WINDCH.ZIP - Windchill computations. Includeds VB Source code.

PSOUND.ZIP - Routine to place sound into VB programs. Source Incld. (Req. SoundBlaster).

LZSSLI.ZIP - Compression library for Windows.

VB PRINTER

HPENV.ZIP - Print addresses on envelopes with an HP laser. Source Code Incld.

HPESC.ZIP - Shows how to send escape sequences from VB to an HPIII printer.

NETPRN.ZIP - Network printer linker for Windows. Source code incld.

PRCLP2.ZIP - Print text in the clipboard by clicking on its icon. Source Incld.

PSETUP.ZIP - A DLL to invoke the standard Printer Setup Dialog. Source incld.

PSOUT.ZIP - Shows how to print bitmap files on HP & Postscript printers.

VBBOOK.ZIP - Source for an App to print text files to HPLJ in booklet form.

VBPSETUP.ZIP - A printer setup dialog box includes Source code.

VB PROGRAMMERS TOOLS

COLORS.ZIP - A tool for calculating Visual Basic color values.

IDVB.ZIP - A utility that finds the ID's of controls on VB forms. Source Incld.

KEYTEST.ZIP - VB App to get the hex key code for any key. Source Code Incld.

PROPVIEW.ZIP - Property viewer control displays/prints properties of current form.

VALET.ZIP - Get to your TXT & HLP files, also logs time spent on project.

TOOLBT.ARJ - Vb controlls tool bars.

VBBAR100.ZIP - Adds a toolbar to access commonly used features of VB.

VBCLN.ZIP - Automates the SAVE/LOAD text procedure to shrink your Apps .EXE size.

VBEHAN.ZIP - Additions to VB for printing selected text & save text as file.

VBTBPB.ZIP - Add on ToolBox that automates many VB tedious tasks. Great!

VBUTIL.ZIP - Two programs to copy or delete VB project files.

SAVEME.ZIP - Form with button to quickly save the current file or project.

CPVB22.ZIP - Pretty code printer utility for VB 2.0

VB2-TB.ZIP - ADD on ToolBox for Vb 2.0, adds many enhancments. Great!

VB REFERENCE / INFO

APIREF.ZIP - Reference to functions of Windows API.

KBWINTXT.ZIP - Text file of help and tips for VB programmers.

VB2NEW.ZIP - A text file describing the new features of VB 2.0.

VBTHLP.ZIP - A large collection of tips & tricks for Visual Basic.

MOREAPI.ZIP - Additional API functions. Sample Source Code Included.

VB SYSTEM & LANGUAGE

ABOUT.ZIP - A bouncing command button in an About box. Source incld.

APPSHELL.ZIP - Source code template for standard Windows file open, save, print etc.

ARRANGE.ZIP - Arrange icons. Source code example on how to use SendKeys.

CFIXVB.ZIP - A routine to round Currency variables at a given # of decimal places.

DOSBUT.ZIP - A button to shell to DOS. Source Code Included.

DSL100.ZIP - DOS shell launcher with Source code.

EDITDEMO.ZIP - Input routines for text controls.  Source Code Included.

FNDWND.ZIP - How to look for a window based on its ClassName or Caption.

FOPEN.ZIP - Source Code for an advanced file open routine.

GRDRTN.ZIP - Examples of grid manipulation. Source Code Included.

GRID.ZIP - Test properties of controls on a VB form. Source Incld.

GRID2.ZIP - A modified version of GRID.ZIP.

LABTAB.ZIP - How to use label controls to display tabular data. Source Incld.

LDEMO.ZIP - Example of linked list/Listbox & Speedfill. Source Code Incld.

LISTDR.ZIP - Routine to drag a text line from one location to another. Source Incld.

METER1.ZIP - Routine to implement scrolling gauges. Sourc Code Included.

MSGDEMO.ZIP - How to send messages to the user. Source Incld.

MULTIPIK.ZIP - Multiple selection list box for VB Apps. Source included.

PROFIL.ZIP - 2 routines to manipulate profil entries in WIN.INI.

RECYCLER.ZIP - A Trashcan for file deletions. Source Code Included.

SYSWITCH - Choose between different Windows .INI files. EXE & Source.

VBFLOAT.ZIP - VB source to show how to keep your apps window always on top.

VBMEM.ZIP - Source for a VB App that displays Windows system info.

WEDI.ZIP - A front end for your favorite text editor. Source Included.

WINDWIP.ZIP - A beginnings to an XTREE GOLD clone. Needs more coding.

VBA102.ZIP - Files to provide support in VB for Huge Arrarys.

INIFIL.ZIP - VB Module for simplifying .INI file operations.

INIEDT.ZIP - INI-EDIT for managing Windows .INI files. VB 2 Source Code Incld.

VB TIME & DATE

DATETIME.ZIP - Source code to display the date and time in a variety of formats.

SCARY.ZIP - A clock for Halloween. Source Included.

TINYCAL.ZIP - Source code for a very tiny calendar.

VBCLK.ZIP - A clock App that shows time, date & can change colors. Source Incld.

VBCLOCK.ZIP - Source for an App to display the date and time in a small window.

REGULAR PRICE  $49.95 (Plus S/H)

ON SALE NOW FOR ONLY $29.00 (Plus S/H)

ORDER FORM


SW Order Form
VB DISK LIBRARY ORDER FORM

SELECT PRINT FROM THE FILE MENU.

NAME: _______________________________

COMPANY NAME: ____________________________________

ADDRESS: ____________________________________________

CITY: __________________________

STATE: _________________________

ZIP: ____________________________

COUNTRY: ______________________

The library comes on 5-1/4 HD or 3-1/2 HD disks.

DISK PREFERENCE:    5-1/4 [     ]      3-1/2 [     ]

PRICE:    $29.00 PLUS $5.00 Shipping ($10.00 Shipping Foreign)

California residents add 7-3/4 % sales tax.

Send check or money order drawn on a US Bank made payable to PRO-DATA and send to the following address:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


BUSINESS PLANS

Starting or Expanding a Software Company?

You NEED a Business Plan!

Our BPA "mini business plan" is ready in just a few days.

Call now for information on our low prices.

Were the "Don't Do It Yourself" experts.

BUSINESS PLAN ASSOCIATES

Phone/Fax/Modem (714) 683-3914


VBMAN

An easy to use file manager for VB Programmers!

REGULAR PRICE  $29.95 (Plus S/H)

ON SALE NOW FOR ONLY $19.00 (Plus S/H)

ORDER FORM


VBMAN ORDER FORM

SELECT PRINT FROM THE FILE MENU.

NAME: _______________________________

COMPANY NAME: ____________________________________

ADDRESS: ____________________________________________

CITY: __________________________

STATE: _________________________

ZIP: ____________________________

COUNTRY: ______________________

VBMan v1.01 comes on 5-1/4 HD or 3-1/2 HD disk.

DISK PREFERENCE:    5-1/4 [     ]      3-1/2 [     ]

PRICE:    $19.00 PLUS $4.00 Shipping ($10.00 Shipping Foreign)

California residents add 7-3/4 % sales tax.

Send check or money order drawn on a US Bank made payable to PRO-DATA and send to the following address:

PRO-DATA / EVB MAG

7151 EL CAJON BLVD. STE. L

SAN DIEGO, CA  92115


ADVERTISE IN EVB MAGAZINE

Do you want to reach Visual Basic Programmers?

Do you have a Visual Basic add-on for sale?

Do you do custom Visual Basic programming?

Have you written a Shareware Visual Basic program?

Then you need to advertise in Electrified Visual Basic Magazine!

For first time advertiser specials.

Call (619) 464-0767