이번 강좌에서는 비주얼 베이직으로 컴포넌트를 만들어 보겠습니다.
| |||||||||||||||
강좌에 들어가기에 앞서 선수학습으로 비주얼베이직을 할줄 알아야하는데, 일단 만드는 것을 따라서 할 것이므로 차츰 공부하시면 될 것 같습니다.
먼저 콤포넌트에 대해서 알아보겠습니다. 왜 콤포넌트을 만들어야하는가? 이것의 해답은 재사용이 가능했으면 좋겠다는 객체모델에 근거을 두고 있습니다. 컴포넌트기반의 애플리케이션이라고도 불립니다. 이것은 응용프로그램을 컴포넌트의 조합으로 개발하는 것을 말합니다. 우리는 많이 자주 사용되는 것이 있다면 함수로 만들어서 사용했었는데, 이런식으로 만든 것을 콤포넌트라고 부릅니다. ADO 객체(콤포넌트)를 우리는 무엇으로 만들었는지는 모르나, 인터페이스만 알고 있는 것으로 잘 사용하고 있는 것이 그 예입니다. cf)인터페이스 (일종의 함수) 우리는 내부는 알지 못하지만 인터페이스을 통해 ADO의 콤포넌트을 잘 사용할수 있었습니다. 그것을 일반적으로 콤 이라고 부릅니다. | |||||||||||||||
cf)
|
COM(Component Object Model) : 마이크로소프트의 이진규격.
프로그래밍언어는 아니나, VB같은 언어로 만들거나 호출할 수 있습니다. 컴포넌트는 컴파일된 파일(클래스파일.dll)로 사용합니다. | ||||||||||||||
장점: |
응용프로그램개발시 생산성 향상됩니다.
바이너리코드로, 적은 메모리와 리소스의 절약. 비즈니스로직과 사용자인터페이스의 분리. 프리젠테이션계층(HTML) + 비즈니스로직(ASP) ==> 디자이너가 코딩을 바꾸는 것이 어렵습니다. 컴포너트을 만들면,프리젠테이션과 비즈니스로직의 구분이 가능합니다. | ||||||||||||||
단점: |
실제로는 완벽한 구분이 힘듭니다.(asp.net은 완벽히 구분함.)
유지보수가 힘듭니다. | ||||||||||||||
그러면 콤포넌트을 직접 만들어보겠습니다. 보통은 비주얼베이직으로 만듭니다.
(C++로도 만듬.) | |||||||||||||||
먼저 간단한 비주얼베이직으로 콤포넌트을 만들어보겠습니다. 자료실을 할때, abc업로드콤포넌트등이 .dll로 나타나는 것을 생각하고 만들면 되겠습니다. 이번에 만들려고 하는 콤포넌트는 데이터베이스에 연결하는 콤포넌트을 만들고 계속해서 추가하도록 하겠습니다. 일단 비주얼베이직을 엽니다.
| |||||||||||||||
<그림 1> | |||||||||||||||
우리가 만들 것은 activex DLL을 선택합니다. 프로젝트의 이름이 가장 중요하므로 잘 정합니다. 예를 들어 feelzoa 라고 회사이름을 썼다고 합시다. 그 다음 클래스 모듈에서 zzang이라는 이름을 정합니다.
| |||||||||||||||
<그림 2> | |||||||||||||||
다음으로 프로젝트에 가서 참조 추가 마이크로소프트엑티브X 데이터오브젝트2.7을 추가합니다.
| |||||||||||||||
<그림 3> | |||||||||||||||
그리고 코딩을 해 보도록 하겠습니다.
| |||||||||||||||
<그림 4> | |||||||||||||||
옵션 익스플리트 하고 변수선언을 합니다. 그리고, 함수을 만듭니다.
| |||||||||||||||
Option Explicit Dim dbopen As New ADODB.Connection Set dbopen = New ADODB.Connection |
|||||||||||||||
이렇게 만들었다면, 끝났으니,파일에 feelzoa.dll 만들기을 누르면 자동으로 .dll파일이 만들어지고, 또한 윈도우2000서버의 레지스터리에 등록이 됩니다. 위치는 C:\WINNT\system32\inetsrv 에 가져다 놓습니다.
| |||||||||||||||
<그림 5> <그림 6>
|
'asp' 카테고리의 다른 글
dll을 이용한 로그인 (0) | 2010.04.21 |
---|---|
ASP 클라이언트를 사용하여 Visual Basic IDE에서 COM+ 구성 요소를 디버깅할 때 오류가 발생한다 (0) | 2010.04.21 |
ASP Examples (0) | 2010.03.31 |
ASP Response Object (0) | 2010.03.31 |
ASP 및 Scripting.FileSystemObject 사용하여 목차 페이지의 동적 테이블 만드는 방법 기계 번역 (0) | 2010.03.23 |