VB.NET 2008/Visual Basic 2008

어셈블리 - Visual Basic의 어셈블리

본클라쓰 2011. 6. 15. 10:56

 

어셈블리는 Visual Studio에서 실행되는 하나의 프로젝트로 생성된 실행파일(.exe)나 동적 연결 라이브러리(.dll) 파일이다.

 

어셈블리는 Visual Basic 소스 파일을 컴파일하면 자동으로 생성된다. 어셈블리는 .NET 응용 프로그램에 대한 배포, 버전 관리, 재사용, 활성화 범위 지정 및 보안 권한의 기본 단위를 형성한다. 어셈블리는 실행파일(.exe)이나 동적 연결 라이브러리(.dll) 파일 형태를 취하며 .NET Framework의 빌드 블록이다.

 

모든 어셈블리내 에서는 어셈블리 매니페스트가 있다. 매니페스트에는 어셈블리 ID(이름과 버전), 사용자가 만든 다른 어셈블리(.exe 또는 .dll 파일이 의존하는 어셈블리), 비트맵 파일, 추가 정보 파일을 비롯하여 어셈블리를 구성하는 모든 다른 파일을 설명하는 파일 테이블, 모든 외부 종속성 목록인 어셈블리 참조 목록이 있다.

 

어셈블리에는 내용, 버전 관리 및 종속성에 대한 정보가 포함되어 있기 때문에 Visual Basic을 사용하여 만드는 응용 프로그램은 레지스트리 값에 관계없이 정상적으로 작동한다. 어셈블리는 dll 충돌을 줄여 주고 응용 프로그램의 신뢰도를 높이며 해당 응용 프로그램을 쉽게 배포할 수 있도록 한다. 대부분의 경우 해당 파일을 대상 컴퓨터에 복사하기만 하면 .NET 기반 응용 프로그램을 설치할 수 있다.

 

어셈블리를 사용하려면 어셈블리에 대한 참조를 추가해야 한다. 참조를 추가하는 방법은 Visual Studio를 실행시킨 후 참조를 추가할 프로젝트를 선택한 후

 

메뉴바의 [프로젝트 - '프로젝트명' 속성(P)]을 선택한다.

 

 

해당 프로젝트의 속성이 나오면 참조 경로 페이지에서 참조 경로를 설정한다.

 

Visual Studio의 참조 추가 대화 상자에는 다섯 가지 옵션이 있다.

 

1. .NET - 참조에 사용할 수 있는 .NET Framework 구성 요소를 모두 나열한다.

2. COM - 참조에 사용할 수 있는 COM 구성 요소를 모두 나열한다.

3. 프로젝트 - 로컬 프로젝트에서 만든 재사용 가능한 구성 요소를 모두 나열한다.

4. 찾아보기 - 파일 시스템의 구성 요소를 찾아볼 수 있다.

5. 최근에 사용한 파일 - 최근에 컴퓨터의 프로젝트에 추가한 구성 요소 목록이 있다.

 

이 때 나열되는 참조 파일은 Public Assemblies 폴더(Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Public Assemblies)의 어셈블리만 나열된다. 어셈블리는 Public Assemblies 폴더에 복사하거나 직접 찾아 볼 수 있다. 단, GAC(전역 엄셈블리 캐시)는 완전히 런타임 환경의 일부이므로 GAC에서 참조를 추가할 수 없다.

 

GAC에 등록되어 있는 사용자 지정 구성 요소에 대한 참조가 포함된 응용 프로그램을 배포하거나 복사하는 경우 구성 요소는 Copy Local 설정과 관계없이 응용 프로그램과 함께 배포 또는 복사되지 않는다.

 

동일한 솔루션에 있는 다른 프로젝트의 출력에 대한 파일 참조를 추가하면 컴파일 오류가 발생할 수 있으므로 이 방법은 사용하지 않는 것이 좋다. 대신 참조 추가 대화 상자의 프로젝트 탭을 사용하여 프로젝트 간 참조를 만든다. 이렇게 하면 프로젝트에서 만드는 클래스 라이브러리를 보다 효율적으로 관리할 수 있으므로 개발 팀이 작업하기가 간편해진다.

 

만약, 응용 프로그램 크기를 줄이기 위해 코드에서 실제로 호출되지 않는 구성 요소에 대한 참조를 제거할 때는 프로젝트 디자이너의 참조 페이지에서 액세스할 수 있는 사용하지 않는 참조 대화 상자를 사용하여 이 작업을 수행할 수 있다.

 

참조를 추가한 다음 참조 및 imports 문의 설명대로 imports 문을 사용하여 사용할 항목의 네임스페이스를 선택한다. 어셈블리를 참조하고 가져오면 액세스 가능한 모든 클래스, 속성, 메서드 및 해당 네임스페이스의 기타 맴버를 해당 코드가 사용자 파일에 포함된 것처럼 응용 프로그램에서 사용할 수 있다.