Solved

Deploying vb.net app

Posted on 2004-04-23
8
653 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
ID: 10905760
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
ID: 10907125
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
ID: 10910384
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
ID: 10910574
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
DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

 

Author Comment

by:dhilwala2001
ID: 10910591

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
ID: 10910702
0
 
LVL 41

Accepted Solution

by:
graye earned 300 total points
ID: 10912887
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
ID: 10912899
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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Recently while returning home from work my wife (another .NET developer) was murmuring something. On further poking she said that she has been assigned a task where she has to serialize and deserialize objects and she is afraid of serialization. Wha…
Many of us here at EE write code. Many of us write exceptional code; just as many of us write exception-prone code. As we all should know, exceptions are a mechanism for handling errors which are typically out of our control. From database errors, t…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
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: …

919 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

19 Experts available now in Live!

Get 1:1 Help Now