2010-11-22 6 views
1

저는 C# 배경에서 배웠던 vb.net 학습을 시작했습니다.VB.net 기본 메소드가 실행되지 않습니다.

내가했던 C# winforms 프로그램을 다시 프로그래밍하려고했는데, 명령 행 매개 변수를 사용하여 그 기능을 결정했습니다. C#에서는 이러한 인수를 받아들이는 데 항상 주된 방법이 있습니다.

내가 읽은 것부터 vb.net은 시작 폼을 지정한 후에는 기본 메서드를 구현합니다. 사용자가 직접 만들지 않는 한. 괜찮 았지만, 구현 한 코드는 무시당하는 것처럼 보입니다. 코드가 보일 지 알기 위해 중단 점을 넣었습니다.하지만 아무 것도 없습니다. 주요 서브과 같이 시작 폼의 클래스 선언에 : 분명히

Public Class FrontScreen 
    <STAThread()> _ 
    Shared Sub Main() 
     Dim mainWindow As FrontScreen = New FrontScreen() 
     MessageBox.Show("Hello! I'm exectuing!") 
     Application.Run(mainWindow) 
    End Sub 
End Class 

나중에 주요 방법에 더 많은 코드를 넣어 갈거야,하지만 지금 난 그냥 메시지 상자를 좀하고 싶습니다 내 메인 서브가 실제로 실행되고 있다는 것을 보여 주려고 왔어. 아마 뭔가 명백한 잘못을 저지르고 있을지 모르지만, 예를 통해 내가 무엇을 말할 수 없는지를 보았습니다. 어떤 아이디어?

감사합니다. Andy.

답변

7

봐 :

  1. 는 "응용 프로그램 프레임 워크를 사용"의 체크 박스를 제거합니다.
  2. "시작 개체"드롭 다운 상자에서 "Sub Main"항목을 선택하십시오. 명령 줄 인수에만 관심이 있다면

Sub Main properties

+0

네, 효과가 있습니다! 이제 메시지 상자가 생겼고 단순한 메시지라는 것을 알았습니다. 나는 무언가가 나를 혼란스럽게하는 새로운 언어를 배우는 무대에 있지만 잘 지내고있다. 내가 생각하는 응용 프로그램 프레임 워크에 대해 읽어야 할 것입니다. 감사! –

+1

@Andrew : 다음은 Application Framework이 실제로 무엇을하는지 알고 싶다면 멋진 기사입니다. http://visualstudiomagazine.com/articles/2007/10/01/enable-the-application-framework-in-vb .aspx. 응용 프로그램을 C# 버전과 가깝게 유지하려면 사용하고 싶지 않을 것입니다. 순수 VB 애플리케이션의 경우 몇 가지 좋은 기능이 있습니다. – Heinzi

+0

오늘은 "시작 객체"조차도 없다는 것을 알게되었습니다. 이제 시작 형태 일뿐입니다. – sinni800

0

저는 프로그램이 시작되지 않는 것이 아니라, messagebox.show가 GUI에 있어야한다고 생각합니다.

대신 Msgbox ("메시지")를 사용해보십시오.

희망이 있습니다. 프로젝트 속성에

+0

메인 서브에 중단 점을 넣기 시작했는데, 그런 경우에 대비해서 중단 점을 넣기 시작했습니다. 어쨌든 메시지 상자를 표시하는 양식이 필요하지 않아야한다고 생각하지 않습니다. –

1

다음 Main 방법을 차단 이외의 다른 옵션은 Environment.GetCommandLineArgs을 사용하는 것입니다.

+0

나는 그 생각을하지 못했지만, 프로그램을 시작할 때 필요합니다. 그리고 C# 프로그램을 복사 할 때 가능한 한 비슷하게 유지하고 'Main'을 사용하고 싶습니다. –

0

C#에서 VB.NET으로 전환하는 데 도움이되도록이 사이트 developer fusion은 C# 코드를 VB.NET으로 변환합니다. 잘하면 두 언어가 서로 어떻게 관련되는지 볼 수 있습니다.

+0

링크를 제공해 주셔서 감사합니다. –

관련 문제