Solved

create a setup for my project

Posted on 2004-08-21
8
344 Views
Last Modified: 2013-11-14
I created a visual basic application. Now i want to distribute it. I need to create an installers so that i can deploy my project on to different computers. i want to bundle my files into cab files and supply it. i tried the makecab.exe but i can only put one file onto the cab file. how to bundle many files into one cab files and how rto extract them. Also if i create an installer in vb, for running that installer somefiles are necessary on the target computer(like dlls ) how do i overcome that and create an instllaer.Please reply me soon
0
Comment
Question by:bijesh
8 Comments
 
LVL 14

Expert Comment

by:aelatik
ID: 11858157
Have you tried the Package and Deployment wizard which is shipped with VB ? That does exactly what you are looking for.
0
 
LVL 51

Accepted Solution

by:
Ryan Chong earned 250 total points
ID: 11858195
Else try use other installer packager like below:

Inno Setup (Free)
http://www.innosetup.com
http://www.jrsoftware.org/isinfo.php

InstallShield
http://www.installshield.com/downloads/

Nullsoft Scriptable Install System
http://nsis.sourceforge.net/home/

Ghost Installer
http://www.ginstall.com/

Installer Vise
http://www.vise.com/downloads.asp

Wise
http://www.wise.com

cheers
0
 
LVL 8

Expert Comment

by:glass_cookie
ID: 11858303
Hi!

This is the method I usually use:

Zip up all the required files, and make sure they unzip into the same folder.  The concept is that if they are in the same folder, they should work fine.

Files required:

- Your VB exe file
- And database or txt files your VB exe uses
- Msvbvm60.dll (For VB6, Msvbvm50.dll for VB5)
- Any ocx files you used (they can be found in the system folder)
- Any third party dll files you used

If you're programming your installation program (which is what I usually do for flexibility), just make sure it is in the same folder as the Msvbvm60.dll file, then it would run without giving some runtime file missing error of some sort =)

Personally, I do not use the P&D wizard as I've seen quite a number of problems it gives.  Moreover, it packs certain files that I feel are not required.

That's it!

glass cookie :)
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 51

Expert Comment

by:Ryan Chong
ID: 11858361
It's always good to follow what glass_cookie had suggestion, yet, it will be useful for small-scale application, but an installer packager may still needed, simply because it make user earlier to select directory they want to install, provide other information like user agreement, etc and register the components needed for the application.

Also, depends on how you want to deploy your application, to determine which method to use later. If it's a commercial product, i suggest to use an installer like Inno Setup.

I prefer Inno Setup, it's simply because it's FREE, very EASY to use (remember to download the ISTools add-in), including all features available in Package and Deployment Wizard, and you can even put your icon/ logo of your corporate if you want.. a great freeware for developer!

regards
0
 
LVL 1

Expert Comment

by:rickyman35
ID: 11859076
http://www.innosetup.com is the best one to use if thats what your looking for.
0
 
LVL 7

Expert Comment

by:Jenn3
ID: 11860396
bijesh, you really need a deployment solution.

These are some of the reasons:
[1] some Dlls do not work universally on both NT/2K/XP and 9x/ME platform. Sometimes, each platform has their own version of Dlls.
[2] With a maturing application, you need to have an Uninstall element for end user to safely remove the apps.
[3] Deployment Programs such as WISE, InstallShield and INNOSetup is able to scan and pull relevent files and package them to ensure your apps runs correctly.

Two Main Approaches:
[1] Script-Based (Installshield - InstallScript and Wise uses them)
[2] Data-Driven (Visual Studio Installer, InstallShield - Window Installer)

Recommend FREE Package and Deployment:
[1] Visual Studio Installer - Windows Installer Engine (http://msdn.microsoft.com/vstudio/downloads/tools/vsi11/default.aspx)
[2] INNOSetup (website link as stated in previous post)

NOT Recommended:
[1] VB6 package and deployment.

------------
Windows Installer can be considered as another program or service on the OS. It main objective is to help new programs to install correctly even if the same Dlls and OCXs already existed on the system. When an app wants to install itself, it will pass a list of what needs to be done to Windows Installer on that system to check and then it will tell the app what to install. Hence the concept of Data-based installation.

The setup file usually has a .msi format. The setup could also design an .exe with Windows Installer wrapped nicely with your app. If the itarget system does not have Windows Installer installed (i.e. Win 95 and some of Win 98), it will automatically install Windows Installer, then setup you app.

Older OS requires Windows Installer to be installed. It was developed because too many early programs do not have a standardized way to setup their files. It is a real mess. E.g. uninstalling one program will remove the Dlls that is needed another program. Well, this was partially solved by asking the user to choose if these Dlls will be removed.

How in the world does an end user know? As a result, apps crashes in Windows and user blames Microsoft. Hence the standard was developed.

Seriously, there are actual positions called Setup and Deployment Engineers in the Software Industry.

Good luck.

------------

These are excerpts from the HELP document in Visual Studio Installer...

Data-Driven vs. Script-Based Installation
With traditional script-based installations, every installation program provided a set of instructions for a specific application installation. Though these hard-coded sequenced instructions may have worked fine for a single installation, they could cause problems if new applications or versions were subsequently installed, uninstalled, or reinstalled. Also, since information was not shared among setup scripts, it was difficult for users or administrators to track and manage installed applications.

The new, data-based Windows installer addresses many of the problems associated with installation scripts. In the data-driven installation model, you create a master set of installation tables where every application resource (files, registry keys, and so on) is clearly tied to the component or feature it supports. In creating these tables, you concentrate on what you're installing, rather than how you install it. You focus on the objects to install and where to install them, and the Windows installer manages the procedural instructions.

Some of the key advatage of using Windows Installer is this:
Application self-repair, Powerful rollback, On-demand feature installation, Once a user has made their selections, the installer can install the selected configuration with just one pass through the data.
0
 
LVL 7

Expert Comment

by:Jenn3
ID: 11860407
Oh i forgot...

I currently uses:
Visual Studio Installer
Installshield DevStudio 9
Installshield X for multiplatform
0
 
LVL 51

Expert Comment

by:Ryan Chong
ID: 11864042
Installshield should always be #1, but it's not free and expensive, and sometimes it's difficult to use, as it's too customizable and that's why it's not recommended for beginner (i know there is a Express Edition ;-)

regards
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

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

Introduction In a recent article (http://www.experts-exchange.com/A_7811-A-Better-Concatenate-Function.html) for the Excel community, I showed an improved version of the Excel Concatenate() function.  While writing that article I realized that no o…
Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

685 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