Hi Rick,

    Read this and I think you get the idea.
        Bruce

MSDN Blogs
 >
jfo's coding
 >
Starting an application without showing a form
Starting an application without showing a form
4232/ProfileUrlRedirect.ashx
jfoscoding
24 Aug 2005 10:23 AM
3
There were a lot of good comments/questions about keeping your UI responsive, if
you're interested in threading/application contexts etc,
it's worth a peek
.
I thought I'd rehash something today I've already talked about, but it is buried
in my
how to build notify icon (system tray) applications article
, and I think it's worthy of it's own coverage here: how to run an application 
without
showing a form
Dissecting Application.Run
If you have created a Windows Forms application, you may have happened across 
this
line in Main:
Application.Run(new Form1());
Magically, after calling this, the Form appears and events start firing left and
right.  Here's what is actually happening, not quite so magically:
//Taking a microscope to Application.Run -
//create the form, and call initialize component
Form1 form1 = new Form1();
// create an application context
ApplicationContext applicationContext = new ApplicationContext();
// Set applicationContext.MainForm so that
// when form1 closes, exit the application context
applicationContext.MainForm = form1;
// Call Application.Run which will
//  -  call applicationContext.MainForm.Show()
//  -  begin processing events
Application.Run(applicationContext);
>From this code, we can intuit that the ApplicationContext defines when the 
>Application
should exit.  In fact the point of all the overloads to Application.Run is to 
help
the Application know when to quit.
Running an application without showing a form
There are really two options here:
Instead of calling Application.Run with an argument, call Application.Run() to 
start
processing messages with NO arguments, then Application.Exit() when finished.  
This
is not very elegant as a missed call to Application.Exit means your application 
will
keep running even though there is no UI present.
A much cleaner solution is to inherit from the application context class and 
redefine
when you think the application should quit.  The second solution is
covered in depth with sample here
.
Windows Forms
Share on Facebook
Share on Twitter
Share on Digg
Share on del.icio.us
More
Comments
Loading...
© 2012 Microsoft Corporation.
Terms of Use
Trademarks
Privacy Statement
Report Abuse
5.6.402.223

  ----- Original Message ----- 
  From: RicksPlace 
  To: [email protected] 
  Sent: Saturday, April 14, 2012 9:22 AM
  Subject: .net Script Run() VS run( ApplicationContext ) question


  Hi Aaron et al.
  Is there any advantage of starting a Vb.net Script using Run( 
ApplicationContext) versus Run() method?
  I have tested them and They both work but I am wondering about if either 
would be more robust when taking the fact that WindowEyes, a ThirdParty 
Application like VWD and the vb.net script are running at the same time.
  I have not found any articles yet on if running in a new ApplicationContext 
class would help or hinder cross messaging, thread priorities and, or, all that 
other Systems Programmer heavy weight stuff.
  As far as I can tell it just specifies another class to use in place of a 
form and watches for exiting of that class in this case.
  Does that sound right?
  Any comments or suggestions?

Reply via email to