• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1703
  • Last Modified:

C#.Net - Console application release

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
josephdaviskcrm
Asked:
josephdaviskcrm
  • 4
  • 4
  • 3
  • +1
5 Solutions
 
SameerJagdaleCommented:
instead of debug mode, try running the release mode exe.
BTW, can you share the error message.
0
 
josephdaviskcrmAuthor Commented:
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
 
trunghieubkitCommented:
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
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
jose_juanCommented:
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
 
josephdaviskcrmAuthor Commented:
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
 
jose_juanCommented:
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
 
trunghieubkitCommented:
When you copy to run on another computer you must copy both exe file and all relative dll files
0
 
SameerJagdaleCommented:
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
 
jose_juanCommented:
Hi josephdaviskcrm,

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

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

Regards.
0
 
trunghieubkitCommented:
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
 
josephdaviskcrmAuthor Commented:
Jose Juan, How do I register this component like you are talking about?
0
 
josephdaviskcrmAuthor Commented:
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
 
jose_juanCommented:
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

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

  • 4
  • 4
  • 3
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now