Solved

create a setup for my project

Posted on 2004-08-21
8
343 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 50

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
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
LVL 50

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 50

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

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

789 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