Windows Vista 개발자를 위한 정보: 제어판을 위한 개발
Microsoft Corporation
업데이트한 날짜: 2006년 10월
Windows Vista 개발자를 위한 정보(영문)에서는 Windows Vista에 포함된 새롭고 확장된 기능에 대한 깊이 있는 내용에 관심이 있는 개발자, 기타 기술 전문가 및 관리자를 위한 내용을 다루고 있습니다. 이 정보는 Windows Vista 개발자 센터 (영문)에 간단한 기사 형식으로 약 2주에 한 번씩 게시됩니다. 이러한 기사는 여기에서 다운로드 가능한 Windows 도움말 파일을 요약한 것입니다.
참고 이 항목은 시험판 설명서이며 이후 릴리스에서 변경될 수 있습니다.
참고 이 기사에 대한 의견은 Vistadev@microsoft.com으로 전자 메일을 보내 주십시오.
목차
소개
더욱 쉽고 빨라진 애플릿 및 작업 검색
향상된 제어판 보기
제어판 애플릿의 유형
사용자 애플릿과 작업 추가 및 등록
제어판 애플릿을 열기 위한 새로운 구문
소개
제어판을 통해 사용자는 운영 체제 기능을 구성하고, 하드웨어와 소프트웨어 설치 및 구성, 보안 시스템 유지 관리, 사용자 계정 관리와 같은 관련 작업을 수행할 수 있습니다. 대부분의 사용자들은 제어판 작업을 자주 수행하지는 않으므로 이러한 작업을 시작, 수행 또는 완료하는 방법을 기억하지 못할 수 있습니다. 제어판에는 다양한 제어판 항목이 있으므로 일부 사용자는 어떤 애플릿으로 어떤 작업을 수행하는지 알아내는 데 어려움을 겪을 수도 있습니다.
Microsoft Windows Vista는 시각적으로 향상되고 잘 정리된 사용자 인터페이스를 제공하여 이러한 문제를 줄이고 보다 쉽게 제어판을 사용할 수 있도록 해줍니다. 또한 Windows Vista에서는 소프트웨어 개발자가 자신의 애플릿 및 작업을 더 쉽게 제어판에 추가할 수 있습니다.
Microsoft Windows Vista는 사용자 중심의 제어판을 위한 새로운 기능을 제공합니다. Windows Vista 제어판의 새로운 기능은 다음과 같습니다.
제어판의 어느 영역에서든> 신속하게 애플릿 및 작업을 찾을 수 있는 빠른 검색 기능
편리한 탐색이 가능한 향상된 제어판 홈 (Windows XP 의 종류별 보기와 유사 )
각 애플릿과 연결된 작업을 손쉽게 찾을 수 있도록 해주는 작업 연결
소프트웨어 개발자가 제어판에 자신의 애플릿 및 작업을 손쉽게 추가하고 등록할 수 있는 기능
제어판 애플릿을 프로그래밍 방식으로 여는 새로운 구문
이 기사에서는 소프트웨어 개발자가 관심을 가질만한 새 기능을 중점적으로 살펴보고 새 검색 및 작업 연결 기능에 대해서 간략히 설명합니다. 검색 및 작업 연결 기능에 대한 자세한 내용은 제어판 사용자 인터페이스를 참조하십시오.
더욱 쉽고 빨라진 애플릿 및 작업 검색
새로운 검색 기능은 Windows Vista 제어판의 중요한 기능 중 하나로, 다음과 같은 기능을 제공합니다.
제어판의 어느 영역에서든 신속하게 애플릿 및 작업을 찾을 수 있는 기능. 클래식 보기에서는 작업을 검색할 수 없습니다.
시작 메뉴 검색 상자에서 신속하게 애플릿을 찾을 수 있는 기능
검색 결과에서 애플릿 및 작업을 시작하는 기능
Windows Vista는 Windows XP의 두 배에 가까운 애플릿을 제공하지만 이 새로운 검색 기능 덕분에 매우 쉽게 제어판을 탐색할 수 있습니다. 새 검색 기능에 대한 자세한 내용은 제어판 사용자 인터페이스를 참조하십시오.
향상된 제어판 보기
Windows Vista 제어판의 보기에는 클래식 보기와 제어판 홈, 두 가지가 있습니다. 클래식 보기에서는 모든 애플릿과 제목이 큰 사전순 목록으로 표시되며 제어판 홈에서는 모든 애플릿이 종류별로 정리되어 표시됩니다. 또한 제어판 홈에는 가장 일반적으로 사용되는 몇 가지 작업 연결도 표시됩니다.
클래식 보기와 제어판 홈의 공통적인 새로운 기능은 이름으로 애플릿을 검색할 수 있는 검색 상자(Wordwheel)입니다. 클래식 보기에서는 범주 열이라는 새로운 항목도 있습니다. 클래식 보기에서 범주 열을 클릭하면 애플릿을 범주별로 정렬할 수 있습니다.
제어판 향상을 위한 Microsoft의 투자는 주로 제어판 홈에 집중되었습니다. 이는 제어판에서의 사용자 환경을 개선하고 사용자, 소프트웨어 개발자 및 관리자가 각자의 작업을 신속하고 효과적으로, 더 쉽게 완수할 수 있도록 하기 위해서입니다.
제어판에는 빠르고 쉬운 탐색을 위한 새로운 하이퍼링크가 있습니다. 제어판 홈에서 범주를 선택하면 해당 범주의 애플릿을 표시할 수 있습니다. 그런 다음 애플릿을 클릭하여 제어판 항목을 열거나, 애플릿 아래에 표시되는 작업 연결을 클릭하여 해당 애플릿에 대해 수행할 수 있는 몇 가지 작업을 표시할 수 있습니다. 새 검색 기능 및 향상된 보기에 대한 자세한 내용은 제어판 사용자 인터페이스를 참조하십시오.
제어판 애플릿의 유형
제어판 애플릿에는 세 가지 유형이 있습니다.
명령 개체—레지스트리에 지정된 명령을 실행하는 애플릿입니다.
셸 폴더—제어판에서 열리는 애플릿입니다. 셸 폴더의 예로는 글꼴 폴더, 관리 도구, 개인 설정, 시스템, 사용자 계정 및 프로그램이 있습니다.
CPL—CplApplet 함수를 구현하는 애플릿입니다.
가장 구현하기 쉬운 애플릿은 명령 개체입니다.
사용자 애플릿과 작업 추가 및 등록
Windows Vista에서는 제어판에 애플릿을 추가하기가 더 쉬워졌습니다. 소프트웨어 개발자는 이제 손쉽게 자신의 애플릿 및 작업을 제어판에 추가할 수 있습니다.
이전 버전의 Windows에서는 Windows 레지스트리와 CplApplet 함수를 사용하여 제어판에 애플릿을 추가했습니다. 운영 체제에서는 레지스트리를 사용하여 애플릿이 포함된 모듈을 열거합니다. 각 모듈의 CplApplet 함수가 호출되어 애플릿과 해당 아이콘 및 설명을 표시하고 애플릿을 호출합니다. 이 프로세스는 애플릿이 CplApplet 인터페이스를 구현해야 하므로 명령 개체를 이용하는 것보다 복잡합니다. 이 프로세스는 Windows Vista에서도 지원되지만 구현하기 더 쉬운 명령 개체를 사용하는 것이 좋습니다.
Windows Vista에서는 실행 파일(.exe)을 작성하고 이를 명령 개체로 등록하기만 하면 제어판에 애플릿이 표시됩니다. 예를 들어 CplApplet 인터페이스를 구현하고 바이너리를 수정하는 지루한 작업을 수행할 필요 없이 애플릿에 대한 MySystemApplet.exe 실행 파일을 작성하고, MySystemApplet.exe를 셸 명령 개체로 등록하기만 하면 제어판에 애플릿을 추가할 수 있습니다.
다음 코드 샘플은 MySystemApplet.exe 애플릿을 명령 개체로 등록하고 이 애플릿을 제어판에 추가합니다.
MySystemApplet.exe 애플릿을 명령 개체로 등록하고 이 애플릿을 제어판에 추가하려면
명령 개체에 대한 새 GUID를 만듭니다. 이 예에서는 새 GUID로 {0052D9FC-6764-4D29-A66F-2F3BD9E2BB40}을 사용합니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{0052D9FC-6764-4D29-A66F-2F3BD9E2BB40}의 값을 MySystemApplet. Default Value = "MySystemApplet"으로 설정한 다음 GUID를 사용자의 GUID로 바꿉니다.
HKEY_CLASSES_ROOT\CLSID\{0052D9FC-6764-4D29-A66F-2F3BD9E2BB40}을 다음 값으로 설정합니다.
// 애플릿의 표시 이름을 설정합니다.
(Default value) as REG_SZ = "MySystemApplet" // 애플릿의 정식 이름을 설정합니다. System.ApplicationName as Reg_sz = "MyCompany.MySystemApplet" // control.exe /name MyCompany.MySystemApplet을 호출하면 애플릿이 시작됩니다. // 모양 및 개인 설정과 프로그램 범주에 애플릿을 추가합니다. System.ControlPanel.Category as Reg_sz = "1,8" // 애플릿의 모듈 이름과 문자열 테이블 ID를 정의합니다. 형식은 "@" 기호로 시작하여 그 뒤에 MUI 문자열 테이블을 포함하는 .exe 또는 .dll, 그 다음 "-", 그리고 문자열 테이블의 ID 순서입니다. 애플릿에 문자열 테이블이 없는 경우에는 이 형식은 텍스트만 포함할 수도 있습니다. 이 경우 이름은 지역화되지 않습니다. LocalizedString as Reg_expand_sz = "@%SystemRoot%\MySystemApplet.exe,-9" // LocalizedString과 같은 형식입니다. InfoTip as reg_expand_sz = "@%SystemRoot%\MySystemApplet.exe,-5"
HKEY_CLASSES_ROOT\CLSID\{0052D9FC-6764-4D29-A66F-2F3BD9E2BB40}의 기본 아이콘을 설정합니다.
// DefaultIcon을 기본값으로 설정합니다. 2는 아이콘의 리소스 ID를 나타냅니다(기본값).
reg_expand_sz = "%SystemRoot%\MySystemApplet.exe,-2"
HKEY_CLASSES_ROOT\CLSID\{0052D9FC-6764-4D29-
A66F-2F3BD9E2BB40}\Shell\Open\Command에 대한 명령을 설정합니다.// 아이콘이 호출될 때 호출할 명령을 지정합니다(기본값). reg_expand_sz = "%ProgramFiles%\MyCompany\MySystemApplet.exe"
HKEY_CLASSES_ROOT\CLSID\{0052D9FC-6764-4D29-A66F-2F3BD9E2BB40}에서(여기에서 GUID는 애플릿을 등록하는 데 사용한 GUID) System.Software.TasksFileUrl. "System.Software.TasksFileUrl" 값을 reg_expand_sz = "C:\\test\\MySystemApplettasks.xml"로 설정하여 "System.Software.TasksFileUrl" 레지스트리 값이 설치한 작업 XML의 위치를 가리키도록 합니다. 아래의 샘플 코드는 작업 XML 파일의 예제입니다.
다음 표에서는 Windows Vista의 각 제어판 범주를 나타내는 값을 나열합니다.
값 |
범주 아이콘 표시 위치 |
---|---|
1 |
모양 및 개인 설정 |
2 |
하드웨어 및 소리 |
3 |
네트워크 및 인터넷 |
4 |
사용되지 않음 |
5 |
시스템 및 유지 관리 |
6 |
시계, 언어 및 국가별 옵션 |
7 |
내게 필요한 옵션 |
8 |
프로그램 |
9 |
사용자 계정 및 가족 보호(비즈니스 릴리스 및 Ultimate에서는 도메인 가입 시 "사용자 계정"으로만 표시) |
10 |
보안 |
11 |
이동 PC(이 범주는 랩톱 컴퓨터에서만 표시) |
다음 코드 샘플은 XML 파일의 작업을 정의합니다. "System.Software.TasksFileUrl" 레지스트리가 이 XML 파일을 가리키도록 설정할 수 있습니다.
<?xml version="1.0" ?> <applications xmlns="https://schemas.microsoft.com/windows/cpltasks/v1" xmlns:sh="https://schemas.microsoft.com/windows/tasks/v1"> <!-- MySystemApplet --> <application id="{0052D9FC-6764-4D29-A66F-2F3BD9E2BB40}"> <!-- 이 GUID는 애플릿에 대해 만들어 네임스페이스에 등록한 GUID와 일치해야 합니다. --> <!-- 카드놀이 --> <sh:task id="{3B75A7AE-C4E4-4E5A-9420-7CECCDA75425}"> <!-- 이 작업만을 위해 만들어진 GUID입니다. --> <sh:name>Play solitaire</sh:name> <sh:keywords>game;cards;ace;diamond;heart;club;single</sh:keywords> <sh:command>%ProgramFiles%\Microsoft Games\Solitaire\solitaire.exe</sh:command> </sh:task> <!-- Task Manager --> <sh:task id="{BF46D6AA-B5E6-4EE1-9E5B-ED017272B9F9}"> <!-- 이 작업을 위해 만들어진 GUID --> <sh:name>Run Task Manager</sh:name> <sh:keywords>taskmgr;taskman;programs;processes;threads;cpu;utilization</sh:keywords> <sh:command>taskmgr.exe</sh:command> </sh:task> <!-- IE --> <sh:task id="{DE3A6DCC-C18A-4BBF-9227-11856D7B4422}"> <sh:name>Open Internet Explorer</sh:name> <sh:keywords>IE;web;browser;net;Internet;Netscape;Trident;ActiveX;plug-in;plugin</sh:keywords> <sh:command>iexplore.exe</sh:command> </sh:task> <category id="1"> <!-- 모양 및 테마 --> <!-- 이 idref 항목은 위에 정의된 작업의 GUID를 참조합니다. "3B7.."은 카드놀이, "BF4.."는 작업 관리자, "DE3.."은 Internet Explorer입니다.--> <sh:task idref="{3B75A7AE-C4E4-4E5A-9420-7CECCDA75425}" /> <sh:task idref="{BF46D6AA-B5E6-4EE1-9E5B-ED017272B9F9}" /> <sh:task idref="{DE3A6DCC-C18A-4BBF-9227-11856D7B4422}" /> </category> <category id="8"> <!-- 프로그램 --> <sh:task idref="{3B75A7AE-C4E4-4E5A-9420-7CECCDA75425}"> <sh:name>Click here for fun</sh:name> <!-- "다시 정의 이름"을 표시합니다. MySystemApplet 애플릿이 프로그램 범주에 표시되면 이 카드놀이 링크에 대해 "Play solitaire" 대신 "Click here for fun" 텍스트를 사용하게 됩니다. --> </sh:task> <sh:task idref="{BF46D6AA-B5E6-4EE1-9E5B-ED017272B9F9}" /> <sh:task idref="{DE3A6DCC-C18A-4BBF-9227-11856D7B4422}" /> </category> </application> </applications>
제어판 애플릿을 열기 위한 새로운 구문
Windows Vista는 코드 및 시작->실행 메뉴에서 간단하고 이해하기 쉬운 각 애플릿의 정식 이름을 지정하여 제어판 애플릿을 열 수 있는 새로운 구문을 제공합니다. 구현이나 파일 이름이 바뀌더라도 정식 이름은 그대로 유지되므로 이러한 새 정식 이름은 애플릿에 액세스하기 위한 가장 좋은 방법입니다. 예를 들어 이전 버전의 Windows에서는 Internet Explorer 제어판 애플릿인 인터넷 속성을 시작하려면 Control.exe inetcpl.cpl 구문을 사용합니다. 이 구문은 애플릿을 .cpl 파일로 구현한 경우에만 작동합니다.
이 구문은 Windows Vista에서 변경되었습니다. Windows XP의 많은 .cpl 파일이 이제 셸 폴더 애플릿으로 구현됩니다. 예를 들어 desk.cpl은 개인 설정 애플릿으로 대체되었으며 nusrmgr.cpl은사용자 계정으로 대체되었습니다.
이러한 새 인-프레임 애플릿에 액세스하는 방법은 정식 이름을 사용하는 새 구문을 사용하는 것입니다. 예를 들어 개인 설정 애플릿에 액세스하려면 control.exe /name Microsoft.Personalization을 사용합니다. 사용자 계정 애플릿에 액세스하려면 control.exe /name Microsoft.UserAccounts를 사용합니다.
다음은 Windows Vista와 함께 제공되는 모든 애플릿의 정식 이름입니다.
Microsoft.AddHardware |
Microsoft.PenAndInputDevices |
Microsoft.AdministrativeTools |
Microsoft.PeopleNearMe |
Microsoft.AudioDevicesAndSoundThemes |
Microsoft.PerformaceInformationAndTools |
Microsoft.AutoPlay |
Microsoft.Personalization |
Microsoft.BackupAndRestoreCenter |
Microsoft.PhoneAndModemOptions |
Microsoft.BitLockerDriveEncryption |
Microsoft.PowerOptions |
Microsoft.Bluetooth |
Microsoft.Printers |
Microsoft.CardSpace |
Microsoft.ProblemReportsAndSolutions |
Microsoft.ColorManagement |
Microsoft.ProgramsAndFeatures |
Microsoft.DateAndTime |
Microsoft.RegionalAndLanguageOptions |
Microsoft.DefaultPrograms |
Microsoft.ScannersAndCameras |
Microsoft.DeviceManager |
Microsoft.SecurityCenter |
Microsoft.EaseOfAccessCenter |
Microsoft.SpeechRecognitionOptions |
Microsoft.FolderOptions |
Microsoft.SyncCenter |
Microsoft.Fonts |
Microsoft.System |
Microsoft.GameControllers |
Microsoft.TabletPCSettings |
Microsoft.GetPrograms |
Microsoft.TaskbarAndStartMenu |
Microsoft.GetProgramsOnline |
Microsoft.TextToSpeech |
Microsoft.IndexingOptions |
Microsoft.UserAccounts |
Microsoft.Infrared |
Microsoft.WelcomeCenter |
Microsoft.InternetOptions |
Microsoft.WindowsAnytimeUpgrade |
Microsoft.iSCSIInitiator |
Microsoft.WindowsDefender |
Microsoft.Keyboard |
Microsoft.WindowsFirewall |
Microsoft.MobilityCenter |
Microsoft.WindowsSideShow |
Microsoft.Mouse |
Microsoft.WindowsSidebarProperties |
Microsoft.NetworkAndSharingCenter |
Microsoft.WindowsUpdate |
Microsoft.OfflineFiles |
|
Microsoft.ParentalControls |
|
소프트웨어 개발자는 제어판에 자신의 애플릿을 추가하는 경우 이 목록에 이름을 추가할 수 있습니다. 이러한 정식 이름은 이해하고 기억하기 쉽습니다.
이제 Windows Vista에서는 어렵게 .cpl 파일을 만들 필요 없이 애플릿에 대한 실행 파일을 만들고 이를 등록하는 방법으로 제어판에 자신의 애플릿을 추가할 수 있습니다.
이 기사는 여기에서 다운로드 가능한 Windows 도움말 파일에서도 볼 수 있습니다. 도움말 파일에서 이 기사를 찾으려면 Fundamentals(기본), Windows Vista Management(Windows Vista 관리), **Developing for Windows Management(Windows 관리를 위한 개발)**를 순서대로 확장한 다음 **Developing for the Control Panel(제어판을 위한 개발)**을 클릭하면 됩니다.