Solved

Deploying vb.net app

Posted on 2004-04-23
8
645 Views
Last Modified: 2009-07-29
I have a client / server vb.net application

The application has a few third party user controls that were created in .net.

The application has only one active x control that was not created in .net (maybe vb6 or c++)

Once I get everything working on my computer, how do I distribute the application?  How do I create a setup.exe to install this app on other people's computers?

If I didn't have the active x control designed with older, non-dot-net technology, then could have I simply copied the .exe file and copy the .dll assemblies onto the other person's computer?  Where would I copy the assemblies to?
0
Comment
Question by:dhilwala2001
8 Comments
 
LVL 41

Assisted Solution

by:graye
graye earned 300 total points
Comment Utility
Let's start at the beginning....

Yes, the .Net stuff was designed to be as easy an "xcopy deployment", yet it still supports a "Package and Deployment" wizard (using the VB6 terminology).  The new Setup Wizard actually just adds another Project to your Solution (more new terms... Project and Solution).  This Setup Project is a new, and may take a bit of poking around until you're comfortable finding the things you need.  It usally does a pretty good job of figuring out if you've got 3rd-party or non-.Net Active X controls... and automagically adds those components to the Project.

Practically everything in .Net is an assembly... so don't get hung up on that term.   Compiled EXEs and DLLs are all assemblies.  I'm sure you've read something about putting assemblies in the Global Assembly Cache (GAC).... but if you read further, you'll discover that Microsoft never intended you to install normal application assemblies in the GAC.  (In fact, there are very few.... VERY FEW.... reasons that anyone would ever want to install something in the GAC in a deployment scenario).

Unless your project has some unique need (like perhaps a change to assembly permissions), I'd stick with just the normal Setup Wizard and go from there.
0
 
LVL 10

Assisted Solution

by:EBatista
EBatista earned 100 total points
Comment Utility
as graye already says, the assamble is the .exe or .dll that your project generates, just have to add to the answer that you can place it in the folder that you wish, of course, to do the copy and past installation you have to have in the client the .net framework installed, which is not added to the setup project by wizard, generally it has to be installed in a provious step, also if you are using components like the Crystal Report carried with VS .NET it is better to create the setup project cos you will need to add the keycode manually.

regards
0
 

Author Comment

by:dhilwala2001
Comment Utility
So all I need to do is distribute my .exe?
Will all the .net components be embedded within the .exe (third party controls)?

So what does this normal Setup Wizard do, and how do I access it?

Put yourself in my shoes.  I know very little about assemblies.  I know how to write good code, and I added third party compenents to my project via adding components....  The program works on my computer just fine, and now I want to distribute.

Now, could anyone give me concrete steps I can take:

For example,
Step 1:       Go to this menu and do this
Step 2:      Go to that menu and click here, and to this that and the other....

Thanks...
0
 
LVL 41

Assisted Solution

by:graye
graye earned 300 total points
Comment Utility
No, you will need to distribute a few components with your application (the components are *not* embedded in the exe).

Better than a step by step example.... it'd make better sense if you'd just open up Visual Studio and play with the Setup Wizard some (really! I'm not trying to be rude).

From your existing solution, add a new project....   Pick the category called "Setup and Deployment Project", then pick "Setup Wizard".

Poke around and get the feel for it.   The GUI is a bit strange at first... lot of tabs across the top with nothing on the pages.  After a few minutes, you'll get the hang of it.

As I was trying to explain in my original note, the Setup Wizard usually does a good job of picking all of the components that need to be included in the distribution "kit".   So, unless you're project is somehow strange, I'd just go with the wizard.  I'd bet if you just took all of the defaults, everything would work just fine.

Try it and see...

0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 

Author Comment

by:dhilwala2001
Comment Utility

Well, its suppose to create an .msi file, but it doesn't !!!

I am suppose to compile it and it is suppose to generate an .msi file.

Is that all there is to it?

Does that .msi file have everything it needs to install -- all of the components and all ?

Why is it not generating an .msi file?

I tried to compile on both my educational copy and my work copy of visual studio, and on both, no .msi file is generated when I complie the project.  I have an extremely simple application that just says "hello world"

I chose all of the options (check boxes) for deployment, but upon compilation, it refuses to make an .msi file.

HOPE YOU CAN HELP ME!

THANKS!!!
0
 
LVL 2

Assisted Solution

by:DonRameshSachin
DonRameshSachin earned 100 total points
Comment Utility
0
 
LVL 41

Accepted Solution

by:
graye earned 300 total points
Comment Utility
Yes, you do need to Build the new Setup project...  

Let's assume that you added a "Setup1" project to an existing solution called "WindowsApplication1".   When you look at the Build menu, you'll see... "Build Solution" and either "Build WindowsApplicaiton1" or "Build Setup1" (depending on which project is "active").   The "Build Solution" will build all of the projects in your solution... which is what you want... the orginal WindowsApplication1 project followed immediately after the Setup1 Project.

To have a finer control on the build action, just click on the appropriate project in the Solutions Explorer to make it "Active".  The build menu will now build that project by default.

Practice makes perfect

0
 
LVL 41

Expert Comment

by:graye
Comment Utility
oops, I forgot to mention that the *.msi file is gonna be located in either the Debug or Release directory of the Setup1 project (*not* the directory of the WindowsApplication1 project)

I usually create my Setup project as a subdirectory of the main project... so I don't get confused on what's what
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …

772 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now