Solved

C#.Net - Console application release

Posted on 2008-10-07
13
1,681 Views
Last Modified: 2013-12-17
I have just completed building a C#.NET console application.  I've been running it the whole time out of Visual Studio 2008 and it has been working fine.  I was under the impression that when I was finished with it that I would be able to take this application and run it on any other computer that has the .NET Framework installed.  I tried to copy the .exe file from the bin/debug folder to the computer where it is supposed to run daily, but when I try to execute it just opens a command prompt window for a few moments and then closes it without doing anything or offering any warning.

I went back to my computer where I have been running the application from Visual Studio and tried to run the application from the bin/debug directory.  This gave me an error message.  How do I go about getting an executable file that I can run on any computer with the .NET Framework?

Also, I have added a reference class to the project in the form of a .dll file.  This is also present in the /bin/debug directory.  Once I have the program compiled, will it still rely on that file to work properly?
0
Comment
Question by:josephdaviskcrm
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
  • 3
  • +1
13 Comments
 
LVL 13

Accepted Solution

by:
SameerJagdale earned 200 total points
ID: 22666599
instead of debug mode, try running the release mode exe.
BTW, can you share the error message.
0
 

Author Comment

by:josephdaviskcrm
ID: 22666639
Changing to release mode did create a new directory in the bin directory called release with all the same files in it.  When I tried to execute the .exe from the release directory I got the same error.

All the error message says is: "An error has occured and the program needs to close"  It is very non specific.

I tried the build=>Release option from the visual studio menu and was able to get the application installed on my computer and running.  But I need it to be installed on a remote server.
0
 
LVL 3

Expert Comment

by:trunghieubkit
ID: 22666642
Does your console program has any parameters?

is it OK when you run it by VS2008?

is it Error when you run from the Debug directory?
0
Revamp Your Training Process

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action.

 
LVL 5

Expert Comment

by:jose_juan
ID: 22666654
Hi,

in most cases, if your code have not references to "non standard" libraries only the framework in client machine is needed.

Nevertheless, you must be sure than client machine have your .NET FrameWork installed.

If you need a independent (of .NET FrameWork) executable program, you can use C++ in non managed code (for not using .NET framework), this is the "traditional" coding mode.

If you be sure than client have .NET installed, then check all library dependencies, a simple way to solve it is create on your solution a "Installation proyect" (wizard), this is the correct way to install a program, but I think than you like a .exe alone.

On the other hand, you don't explain your code content and other problems are posible.

Good luck!
0
 

Author Comment

by:josephdaviskcrm
ID: 22666656
No it has no parameters.
Yes it runs fine inside VS2008.
Yes, it errors when I try to run it from the debug directory and from the release directory.  The only way I have been able to run it successfully are when...
I run it from Visual Studio.... and
After I publish it to my computer and it runs an install.  I then have a start menu shortcut that will execute the program outside of Visual Studio.  But I can't transfer those files anywhere else without generating the same error message.
0
 
LVL 5

Expert Comment

by:jose_juan
ID: 22666665
Ups!

I forgot.

I tried the next code and it run correctly in a non "Visual Studio" machine.

Regards.

using System;
 
namespace console_test {
	class Program {
		static void Main( string[] args ) {
			Console.WriteLine( "Hello World!" );
		}
	}
}

Open in new window

0
 
LVL 3

Assisted Solution

by:trunghieubkit
trunghieubkit earned 200 total points
ID: 22666670
When you copy to run on another computer you must copy both exe file and all relative dll files
0
 
LVL 13

Assisted Solution

by:SameerJagdale
SameerJagdale earned 200 total points
ID: 22666671
check for dependencies using dependencyviewer and if there are no dependencies then it shoud work.. further you can try logging the error to a file..
testexe.exe >mylogfile.log
0
 
LVL 5

Assisted Solution

by:jose_juan
jose_juan earned 100 total points
ID: 22666684
Hi josephdaviskcrm,

your code contains a component? (in a separated library)

If yes, VS register it (automatically) on runtime.

Regards.
0
 
LVL 3

Assisted Solution

by:trunghieubkit
trunghieubkit earned 200 total points
ID: 22666698
I may understand what's your problem
If yours is referred to a dll file, when you publish it, you have to ensure the dll file is included
0
 

Author Comment

by:josephdaviskcrm
ID: 22668444
Jose Juan, How do I register this component like you are talking about?
0
 

Author Closing Comment

by:josephdaviskcrm
ID: 31504122
Thanks to all that helped out on this one.  I finally got it working out on the server.  I've tried to divide out the points to everyone that contributed.
0
 
LVL 5

Expert Comment

by:jose_juan
ID: 22669898
Hi josephdaviskcrm,

using Regasm utility.

A good tutorial in

http://edndoc.esri.com/arcobjects/9.2/NET/9826f81b-278c-49cc-a912-ab8d86f5e91e.htm

Good luck!
0

Featured Post

MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

Question has a verified solution.

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

More often than not, we developers are confronted with a need: a need to make some kind of magic happen via code. Whether it is for a client, for the boss, or for our own personal projects, the need must be satisfied. Most of the time, the Framework…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Michael from AdRem Software explains how to view the most utilized and worst performing nodes in your network, by accessing the Top Charts view in NetCrunch network monitor (https://www.adremsoft.com/). Top Charts is a view in which you can set seve…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…

729 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