Visual Basic 6.0 사용자를 위한 App 개체

업데이트: 2007년 11월

이 항목에서는 Visual Basic 6.0의 App 개체와 Visual Basic 2008에서 이에 해당하는 요소를 비교하여 설명합니다.

Visual Basic 6.0에서 App 개체는 응용 프로그램에 대한 정보를 설정하거나 검색하는 데 사용되는 전역 개체입니다. Visual Basic 2008에는 App 개체에 직접 해당하는 요소가 없지만 대부분의 속성, 메서드 및 이벤트를 .NET Framework의 해당 멤버에 매핑할 수 있습니다.

개념적 차이

Version Information 속성

App 개체의 Version Information 속성은 Visual Basic 2008에서 Assembly 특성으로 대체되었습니다. Version Information 속성은 프로젝트 속성 대화 상자에서 설정할 수 있습니다. Assembly 특성은 어셈블리 정보 대화 상자에서 설정할 수 있으며 이 대화 상자는 프로젝트 디자이너의 응용 프로그램 탭에서 응용 프로그램 정보 단추를 클릭하여 사용할 수 있습니다.

참고:

Version Information 속성은 프로젝트 파일(.vbp)에 저장되며 이 파일은 메모장과 같은 텍스트 편집기를 사용하여 편집할 수 있습니다. Assembly 특성은 AssemblyInfo.vb 파일에 저장되며 코드 편집기에서 편집할 수 있습니다.

File Description 속성

Visual Basic 6.0의 App 개체에는 FileDescription 속성과 Title 속성이 모두 있습니다. FileDescription은 Windows 탐색기에 나타나는 설명 텍스트를 결정합니다.

Visual Basic 2008에는 FileDescription 특성이 없습니다. 대신 Title 특성에서 Windows 탐색기에 나타나는 설명 텍스트를 결정합니다.

HelpFile 속성

Visual Basic 6.0의 HelpFile 속성은 응용 프로그램 수준에서 도움말 파일을 지정합니다.

Visual Basic 2008에서는 HelpProvider 구성 요소를 사용하여 폼별로 도움말 파일을 지정합니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 도움말 지원을 참조하십시오.

Version 속성

Visual Basic 6.0의 Major, Minor 및 Revision 속성은 응용 프로그램의 세 부분으로 구성된 버전 번호를 반환하는 데 사용됩니다.

Visual Basic 2008에서는 버전 정보에 Build 속성도 포함되며 Version 속성 하나를 사용하여 네 부분으로 구성된 완전한 버전 번호를 검색할 수 있습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 버전 번호를 참조하십시오.

Title 속성

Visual Basic 6.0에서는 App 개체의 Title 속성은 프로그래밍 방식으로 변경할 수 있습니다. 이런 작업을 통해 Windows 작업 관리자에 나타낼 이름을 결정할 수 있습니다.

Visual Basic 2008에서 Title 특성은 읽기 전용입니다. 응용 프로그램 기본 폼의 Text 속성은 작업 관리자에 표시되는 이름을 결정합니다. Text 속성을 프로그래밍 방식으로 설정할 수 있지만 이렇게 하면 폼 제목 표시줄의 텍스트도 변경됩니다.

TaskVisible 속성

Visual Basic 6.0에서 App 개체의 TaskVisible 속성은 응용 프로그램을 Windows 작업 목록(Windows 9x) 또는 작업 관리자 응용 프로그램 탭(Windows 2000 이상)에 표시할지 여부를 결정합니다. 일반적으로 이 속성은 배경 작업으로 실행되도록 작성된 응용 프로그램을 사용자가 닫을 수 없도록 하는 데 사용됩니다. 대부분의 경우 TaskVisible 속성은 사용자 인터페이스를 표시하지 않는 응용 프로그램에서 사용됩니다.

Visual Basic 2008에서는 TaskVisible 속성에 해당하는 요소가 없습니다. 그러나 작업 목록에 표시되지 않는 Windows 서비스나 콘솔 응용 프로그램을 만들 수 있습니다.

PrevInstance 속성

Visual Basic 6.0의 PrevInstance 속성은 응용 프로그램의 인스턴스가 이미 실행 중인지 여부를 확인합니다. 일반적으로 응용 프로그램 시작 시 PrevInstance를 호출하고 true가 반환되면 응용 프로그램을 중단합니다.

Visual Basic 2008에는 PrevInstance에 직접 해당하는 요소가 없습니다. 프로젝트 디자이너의 응용 프로그램 탭에 있는 여러 인스턴스 속성을 설정하여 응용 프로그램의 여러 인스턴스를 허용할 것인지 여부를 제어합니다. 런타임에 사용자가 응용 프로그램의 다른 인스턴스를 시작하려고 하면 NextInstanceStarted 이벤트가 발생합니다. 이 이벤트 처리기에 코드를 추가하여 응용 프로그램의 첫 번째 인스턴스를 활성화할 수 있습니다.

그 외의 차이점

Visual Basic 6.0에는 Visual Basic 2008에서 더 이상 지원되지 않는 ActiveX 구성 요소, OLE 자동화 및 기타 기술과 관련된 여러 App 개체 속성이 있습니다. 이러한 속성은 이 항목의 뒷부분에 있는 App 개체 속성에 해당하는 요소 표에 언급되어 있습니다.

App 개체에 대한 코드 변경 사항

다음 코드 예제에서는 Visual Basic 6.0과 Visual Basic 2008에서 공통적으로 사용하는 일부 App 개체에 대한 코딩 기술의 차이점을 보여 줍니다.

응용 프로그램의 버전 번호를 표시하는 방법에 대한 코드 변경 사항

다음 예제에서는 응용 프로그램의 버전 번호를 검색하고 레이블에 표시하는 방법을 보여 줍니다.

' Visual Basic 6.0
Label1.Caption = "Version: " & App.Major & "." & App.Minor & "." _
& App.Revision
' Visual Basic
Label1.Text = My.Application.Info.Version.ToString()

응용 프로그램의 경로를 확인하는 방법에 대한 코드 변경 사항

다음 예제에서는 실행 응용 프로그램의 경로를 검색하여 응용 프로그램의 폴더에 저장된 이미지 파일을 표시하는 방법을 보여 줍니다.

' Visual Basic 6.0
Picture1.Picture = LoadPicture(App.Path & "\Logo.jpg")
' Visual Basic
PictureBox1.Image = System.Drawing.Bitmap.FromFile( _
  My.Application.Info.DirectoryPath & "\Logo.jpg")

응용 프로그램의 두 번째 인스턴스가 실행되지 않도록 하는 방법에 대한 코드 변경 사항

다음 예제에서는 단일 인스턴스 응용 프로그램을 구현하는 방법을 보여 줍니다.

' Visual Basic 6.0
Private Sub Form_Load()
    If App.PrevInstance = True Then
        MsgBox("The application is already running!")
    End If
End Sub
' Visual Basic
' Assumes that the Make Single Instance Application checkbox in the 
' Project Designer has been checked.

Private Sub MyApplication_StartupNextInstance(ByVal sender As Object, _
ByVal e As Microsoft.VisualBasic.ApplicationServices. _
StartupNextInstanceEventArgs) Handles Me.StartupNextInstance
    MsgBox("The application is already running!")
End Sub

App 개체 속성 및 이에 해당하는 요소

다음 표에는 Visual Basic 6.0 App 개체의 모든 속성 및 메서드와 이에 해당하는 Visual Basic 2008의 요소가 나와 있습니다.

Visual Basic 6.0

동일한 기능의 Visual Basic 2008 요소

Comments

My.Application.Info.Description 속성

CompanyName

My.Application.Info.CompanyName 속성

EXEName

My.Application.Info.AssemblyName 속성

FileDescription

My.Application.Info.Title 속성

HelpFile

새롭게 구현되었습니다. HelpProvider 구성 요소를 사용합니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 도움말 지원을 참조하십시오.

HInstance

GetHINSTANCE

LegalCopyright

My.Application.Info.Copyright 속성

LegalTrademarks

My.Application.Info.Trademark 속성

LogEvent method

WriteEntry 메서드(My.Application.Log 및 My.Log)

LogMode

LogPath

새롭게 구현되었습니다. 자세한 내용은 응용 프로그램의 정보 기록을 참조하십시오.

Major

My.Application.Info.Version 속성

참고:

Visual Basic 2008에서는 버전 번호 형식이 다릅니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 버전 번호를 참조하십시오.

Minor

My.Application.Info.Version 속성

참고:

Visual Basic 2008에서는 버전 번호 형식이 다릅니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 버전 번호를 참조하십시오.

NonModalAllowed

새롭게 구현되었습니다. 이 속성은 ActiveX .dll 파일과 관련된 읽기 전용 속성입니다. 공용 언어 런타임에서 자동으로 이 동작을 관리합니다.

OleRequestPendingMsgText

OleRequestPendingMsgTitle

OleRequestPendingTimeout

OleServerBusyMsgText

OleServerBusyMsgTitle

OleServerBusyRaiseError

OleServerBusyTimeout

해당 요소가 없습니다. 이러한 속성은 Visual Basic 2008에서 지원되지 않는 OLE 자동화와 관련된 속성입니다.

Path

My.Application.Info.DirectoryPath 속성

PrevInstance

IsSingleInstance

참고:

IsSingleInstance 속성은 Protected 속성입니다. 이 속성은 프로젝트 디자이너에서 여러 인스턴스 확인란을 선택하거나 선택 취소하여 디자인 타임에만 설정할 수 있습니다.

ProductName

My.Application.Info.ProductName 속성

RetainedProject

새롭게 구현되었습니다. Visual Basic 2008에서는 메모리에 프로젝트를 유지할 수 없습니다.

Revision

My.Application.Info.Version 속성

참고:

Visual Basic 2008에서는 버전 번호 형식이 다릅니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 버전 번호를 참조하십시오.

StartLogging method

새롭게 구현되었습니다. 자세한 내용은 응용 프로그램의 정보 기록을 참조하십시오.

StartMode

해당 요소가 없습니다. 이 속성은 Visual Basic 2008에서 지원되지 않는 ActiveX 구성 요소를 만드는 작업과 관련된 속성입니다.

TaskVisible

새롭게 구현되었습니다. 작업 관리자에 나타나지 않는 응용 프로그램을 만들려면 Windows 서비스 또는 콘솔 응용 프로그램 프로젝트를 만듭니다.

ThreadID

새롭게 구현되었습니다. 이 속성은 실행 스레드의 ID를 반환합니다. Visual Basic 2008의 스레드 모델은 상당히 다릅니다.

Title

My.Application.Info.Title 속성

UnattendedApp

새롭게 구현되었습니다. Visual Basic 2008에서 무인 응용 프로그램을 사용하려면 콘솔 응용 프로그램 프로젝트를 만듭니다.

업그레이드 참고 사항

Visual Basic 6.0 응용 프로그램을 업그레이드하면 Major 및 Minor 속성만 업그레이드됩니다. Visual Basic 2008에서는 RevisionBuild 속성에 새 값을 할당합니다.

참고 항목

개념

Visual Basic 6.0 사용자를 위한 도움말 지원

Visual Basic 6.0 사용자를 위한 버전 번호

참조

My.Application 개체