By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
455,694 Members | 1,332 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 455,694 IT Pros & Developers. It's quick & easy.

sub Main

P: n/a
Hi,
In VB Classic I used a sub main() in all my programs. How do I do that in
VB.net without setting the application type to Console application? Looks
like when I set it to console it disable some of the properites
First week of vb.net.... starting to really like it too.....
Brian
Feb 18 '06 #1
Share this Question
Share on Google+
12 Replies


P: n/a
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do that in
VB.net without setting the application type to Console application? Looks
like when I set it to console it disable some of the properites
First week of vb.net.... starting to really like it too.....
Brian


Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris
Feb 18 '06 #2

P: n/a
That works, as long as I don't have "Enable application framework" check.
What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do that
in VB.net without setting the application type to Console application?
Looks like when I set it to console it disable some of the properites
First week of vb.net.... starting to really like it too.....
Brian


Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris

Feb 18 '06 #3

P: n/a
"Brian Shafer" <bs********@community.nospam> wrote in
news:u9**************@TK2MSFTNGP15.phx.gbl:
That works, as long as I don't have "Enable application framework"
check. What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do
that in VB.net without setting the application type to Console
application? Looks like when I set it to console it disable some of
the properites First week of vb.net.... starting to really like it
too.....
Brian


Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris


Not much experience sub_Main-ing myself, but from what I've read:

System.Windows.Forms.Application.Run(formname) is the best method, though

formname.ShowDialog should also work.

The Confessor
Feb 18 '06 #4

P: n/a
Your form is just a class, you call it as you would any other class, by
making an instance of it in memory and then showing it.
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework" check.
What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do that
in VB.net without setting the application type to Console application?
Looks like when I set it to console it disable some of the properites
First week of vb.net.... starting to really like it too.....
Brian


Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris


Feb 18 '06 #5

P: n/a
I do that and then it just shuts down... what is the proper syntax

"Scott M." <s-***@nospam.nospam> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
Your form is just a class, you call it as you would any other class, by
making an instance of it in memory and then showing it.
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework" check.
What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do
that in VB.net without setting the application type to Console
application? Looks like when I set it to console it disable some of the
properites
First week of vb.net.... starting to really like it too.....
Brian

Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris



Feb 18 '06 #6

P: n/a
dim x as new YourFormClass
x.showdialog
"Brian Shafer" <bs********@community.nospam> wrote in message
news:ed**************@TK2MSFTNGP09.phx.gbl...
I do that and then it just shuts down... what is the proper syntax

"Scott M." <s-***@nospam.nospam> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
Your form is just a class, you call it as you would any other class, by
making an instance of it in memory and then showing it.
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework"
check. What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
> Hi,
> In VB Classic I used a sub main() in all my programs. How do I do
> that in VB.net without setting the application type to Console
> application? Looks like when I set it to console it disable some of
> the properites
> First week of vb.net.... starting to really like it too.....
> Brian

Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris



Feb 18 '06 #7

P: n/a
Hi,

In MyProject -> application tab click on the view application
events. Use the application startup event instead of sub main.

Partial Friend Class MyApplication

Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e As
Microsoft.VisualBasic.ApplicationServices.StartupE ventArgs) Handles
Me.Startup

End Sub
End Class

Ken
----------------------
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework" check.
What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do that
in VB.net without setting the application type to Console application?
Looks like when I set it to console it disable some of the properites
First week of vb.net.... starting to really like it too.....
Brian


Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris


Feb 19 '06 #8

P: n/a
Ken,
thanks for the tip.. I went to ms to find out more about this... and I
copied the following code.. but I get errors
Public Class StartupEventArgs

Inherits CancelEventArgs

Private Sub MyApplication_Startup( _

ByVal sender As Object, _

ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupE ventArgs _

) Handles Me.Startup

For Each argument As String In My.Application.CommandLineArgs

If argument.ToLower = "/batch" Then

' Stop the start form from loading.

e.Cancel = True

End If

Next

If e.Cancel Then

' Call the main routine for windowless operation.

Dim c As New BatchApplication

c.Main()

End If

End Sub

Class BatchApplication

Sub Main()

' Insert code to run without a graphical user interface.

End Sub

End Class

the errors are

1. Type 'CancelEventArgs' is not defined.

2. Event 'Start' cannot be found.

???

any more help :)

Thanks

"Ken Tucker [MVP]" <vb***@bellsouth.net> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
Hi,

In MyProject -> application tab click on the view application
events. Use the application startup event instead of sub main.

Partial Friend Class MyApplication

Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e
As Microsoft.VisualBasic.ApplicationServices.StartupE ventArgs) Handles
Me.Startup

End Sub
End Class

Ken
----------------------
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework" check.
What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
Hi,
In VB Classic I used a sub main() in all my programs. How do I do
that in VB.net without setting the application type to Console
application? Looks like when I set it to console it disable some of the
properites
First week of vb.net.... starting to really like it too.....
Brian

Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris



Feb 20 '06 #9

P: n/a
CMM
I've run into problems with that before (in VB2003)... can't remember off
the top of my head what the problem was (some control or overlapping form
behaving funny or something).
I'd recommend using Application.Run(frm) instead. I think that's supposed to
be the "proper" way to do it.

--
-C. Moya
www.cmoya.com
"Scott M." <s-***@nospam.nospam> wrote in message
news:OW**************@TK2MSFTNGP11.phx.gbl...
dim x as new YourFormClass
x.showdialog
"Brian Shafer" <bs********@community.nospam> wrote in message
news:ed**************@TK2MSFTNGP09.phx.gbl...
I do that and then it just shuts down... what is the proper syntax

"Scott M." <s-***@nospam.nospam> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
Your form is just a class, you call it as you would any other class, by
making an instance of it in memory and then showing it.
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework"
check. What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
> Brian Shafer wrote:
>> Hi,
>> In VB Classic I used a sub main() in all my programs. How do I do
>> that in VB.net without setting the application type to Console
>> application? Looks like when I set it to console it disable some of
>> the properites
>> First week of vb.net.... starting to really like it too.....
>> Brian
>
> Make a module. Put a sub main in there. Then go to the project
> properties and change the startup to your module.
>
> Chris



Feb 21 '06 #10

P: n/a
Carlos
I'd recommend using Application.Run(frm) instead. I think that's supposed
to be the "proper" way to do it.


Jay Harlow has once made a message where he has showed 8 proper ways to go
in VBNet using a form.

It is just a matter of preference. And sometimes a matter of how to do,
without a form or page it is hard to use the inbuild methods from that.

Cor
Feb 21 '06 #11

P: n/a
Cor,

"Cor Ligthert [MVP]" <no************@planet.nl> schrieb:
I'd recommend using Application.Run(frm) instead. I think that's supposed
to be the "proper" way to do it.


Jay Harlow has once made a message where he has showed 8 proper ways to go
in VBNet using a form.

It is just a matter of preference. And sometimes a matter of how to do,
without a form or page it is hard to use the inbuild methods from that.


If the application needs a message pump, then I recommend to use
'Application.Run' instead of showing a form as a modal dialog, which is
semantically incorrect. Sure, there are different ways of showing forms...

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Feb 21 '06 #12

P: n/a
Hi Brian,
the errors are
1. Type 'CancelEventArgs' is not defined.
2. Event 'Start' cannot be found.
Based on MSDN documentation, class CancelEventArgs is declared in the
Namespace: System.ComponentModel. So please check whether you have used
this correct namespace in your project.

I hope the above information is helpful for you. Thanks and have a nice day!

Best Regards,

Terry Fei [MSFT]
Microsoft Community Support
Get Secure! www.microsoft.com/security

--------------------From: "Brian Shafer" <bs********@community.nospam>
References: <eB**************@TK2MSFTNGP15.phx.gbl> <ON**************@TK2MSFTNGP12.phx.gbl>
<u9**************@TK2MSFTNGP15.phx.gbl>
<#L**************@tk2msftngp13.phx.gbl>Subject: Re: sub Main
Date: Mon, 20 Feb 2006 02:33:06 -0500
Lines: 110
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Response
Message-ID: <eg**************@TK2MSFTNGP09.phx.gbl>
Newsgroups: microsoft.public.dotnet.languages.vb
NNTP-Posting-Host: 12-208-237-55.client.insightbb.com 12.208.237.55
Path: TK2MSFTNGXA01.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFT NGP09.phx.gbl
Xref: TK2MSFTNGXA01.phx.gbl microsoft.public.dotnet.languages.vb:318449
X-Tomcat-NG: microsoft.public.dotnet.languages.vb

Ken,
thanks for the tip.. I went to ms to find out more about this... and I
copied the following code.. but I get errors
Public Class StartupEventArgs

Inherits CancelEventArgs

Private Sub MyApplication_Startup( _

ByVal sender As Object, _

ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupE ventArgs _

) Handles Me.Startup

For Each argument As String In My.Application.CommandLineArgs

If argument.ToLower = "/batch" Then

' Stop the start form from loading.

e.Cancel = True

End If

Next

If e.Cancel Then

' Call the main routine for windowless operation.

Dim c As New BatchApplication

c.Main()

End If

End Sub

Class BatchApplication

Sub Main()

' Insert code to run without a graphical user interface.

End Sub

End Class

the errors are

1. Type 'CancelEventArgs' is not defined.

2. Event 'Start' cannot be found.

???

any more help :)

Thanks

"Ken Tucker [MVP]" <vb***@bellsouth.net> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
Hi,

In MyProject -> application tab click on the view application
events. Use the application startup event instead of sub main.

Partial Friend Class MyApplication

Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e
As Microsoft.VisualBasic.ApplicationServices.StartupE ventArgs) Handles
Me.Startup

End Sub
End Class

Ken
----------------------
"Brian Shafer" <bs********@community.nospam> wrote in message
news:u9**************@TK2MSFTNGP15.phx.gbl...
That works, as long as I don't have "Enable application framework" check. What is the main purpose of "Enable application framework"

Also, what is the proper way of opening a form from the sub Main()?
Brian

"Chris" <no@spam.com> wrote in message
news:ON**************@TK2MSFTNGP12.phx.gbl...
Brian Shafer wrote:
> Hi,
> In VB Classic I used a sub main() in all my programs. How do I do
> that in VB.net without setting the application type to Console
> application? Looks like when I set it to console it disable some of the> properites
> First week of vb.net.... starting to really like it too.....
> Brian

Make a module. Put a sub main in there. Then go to the project
properties and change the startup to your module.

Chris




Feb 23 '06 #13

This discussion thread is closed

Replies have been disabled for this discussion.