리소스(Resouce) : 코드의 논리와 무관한 데이터
메뉴, 비트맵, 액셀러레이터, 문자열, 아이콘, 커서 등이 속한다.
1. 리소스의 분리 :
프로그램은 코드와 데이터로 구성된다. 데이터는 프로그램의 처리 대상이며 코드는 데이터를 처리하는 수단이다. 도스 프로그래밍과 달리 윈도우즈 프로그래밍에서는 이러한 데이터를 만들고 관리하는 것이 별도의 작업으로 분리되어 있다.
이 데이터들 중에 코드와 무관한 것들을 리소스(Resource)라 하며 별도의 편집기로 만들어져 컴파일되며 링크시에 실행파일에 결합된다.
윈도우즈 프로그래밍에서 리소스와 코드가 분리되어 있어 다음과 같은 장점이 있다.
1. 디자이너와 프로그래머가 분담하여 작업을 하기가 편하다.
2. 리소스를 수정하더라도 리소스만 컴파일 하면 되므로 컴파일 속도가 빨라진다.
3. 만들어 놓은 리소스를 다른 프로젝트에 쉽게 가져다 쓸 수 있어 재사용에 유리하다.
4. 리소스는 실행중에 교체가 가능하여 상황에 따라 다른 형태의 리소스를 사용할 수 있다.
리소스의 소스파일인 RC 파일은 메모장 등의 텍스트 편집기로 작성할 수 있는 텍스트 파일이다. RC 파일에 사용하고자 하는 리소스의 종류, 모양 등을 작성한 후 이 파일을 컴파일(리소스 컴파일러)하면 RES 라는 이진 파일이 생성되며 이 파일이 최종적으로 실행 파일에 합쳐진다.
(참고 : 리소스를 기술하는 RC 파일을 작성하는 데는 고유의 문법이 적용된다.
리소스 편집기를 사용할 경우 굳이 RC 파일의 문법에 대해서 몰라도 상관이 없다.)
2. 리소스 작성 :
Win32 Application 프로젝트를 만든다. 그리고 .cpp 파일을 추가하며 그다음에
Resource Script 파일을 추가한다.
작업영역에 Menu.rc 가 열리고 워크 스페이스를 보면 리소스 뷰가 열려있다.
리소스 뷰는 프로젝트에 포함되어 있는 리소스들의 목록을 계층적으로 보여주며 새로운 리소스를 작성하거나 다른 프로젝트에 있는 리소스를 Import 하는 등의 전반적인 리소스 관리를 할수 있다.
메뉴, 비트맵, 액셀러레이터, 문자열, 아이콘, 커서 등이 속한다.
1. 리소스의 분리 :
프로그램은 코드와 데이터로 구성된다. 데이터는 프로그램의 처리 대상이며 코드는 데이터를 처리하는 수단이다. 도스 프로그래밍과 달리 윈도우즈 프로그래밍에서는 이러한 데이터를 만들고 관리하는 것이 별도의 작업으로 분리되어 있다.
이 데이터들 중에 코드와 무관한 것들을 리소스(Resource)라 하며 별도의 편집기로 만들어져 컴파일되며 링크시에 실행파일에 결합된다.
윈도우즈 프로그래밍에서 리소스와 코드가 분리되어 있어 다음과 같은 장점이 있다.
1. 디자이너와 프로그래머가 분담하여 작업을 하기가 편하다.
2. 리소스를 수정하더라도 리소스만 컴파일 하면 되므로 컴파일 속도가 빨라진다.
3. 만들어 놓은 리소스를 다른 프로젝트에 쉽게 가져다 쓸 수 있어 재사용에 유리하다.
4. 리소스는 실행중에 교체가 가능하여 상황에 따라 다른 형태의 리소스를 사용할 수 있다.
리소스의 소스파일인 RC 파일은 메모장 등의 텍스트 편집기로 작성할 수 있는 텍스트 파일이다. RC 파일에 사용하고자 하는 리소스의 종류, 모양 등을 작성한 후 이 파일을 컴파일(리소스 컴파일러)하면 RES 라는 이진 파일이 생성되며 이 파일이 최종적으로 실행 파일에 합쳐진다.
(참고 : 리소스를 기술하는 RC 파일을 작성하는 데는 고유의 문법이 적용된다.
리소스 편집기를 사용할 경우 굳이 RC 파일의 문법에 대해서 몰라도 상관이 없다.)
2. 리소스 작성 :
Win32 Application 프로젝트를 만든다. 그리고 .cpp 파일을 추가하며 그다음에
Resource Script 파일을 추가한다.
작업영역에 Menu.rc 가 열리고 워크 스페이스를 보면 리소스 뷰가 열려있다.
리소스 뷰는 프로젝트에 포함되어 있는 리소스들의 목록을 계층적으로 보여주며 새로운 리소스를 작성하거나 다른 프로젝트에 있는 리소스를 Import 하는 등의 전반적인 리소스 관리를 할수 있다.
'Windows > _Windows Programming' 카테고리의 다른 글
GetLastError() 함수 (2) | 2010.02.10 |
---|---|
Mstsc(원격) 사용하기 (4) | 2010.02.06 |
윈도우 프로그램 기본 틀 (0) | 2009.12.23 |
윈도우 관리 메시지 (0) | 2009.12.23 |
타이머(Timer) (0) | 2009.12.23 |