Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
질문을 검색하다가...과연..쉘이란게 뭔가요? 저두 하구 싶어요~
질문이요? 제목 그래두입니다..
쉘프로그램은 뭐하는 데 쓰는 겁니까?
쉘익스텐션은 또 뭡니까?
자세히 갈켜주세요~
4
COMMENTS
최용일
•
2000.06.25 11:46
안녕하세요. 최용일입니다.
먼저 쉘이 무엇인지를 알아야죠. 쉘이란 뭘까? 시스템전반에 걸쳐 여러가지 설정사항들을
유저가 변경할 수 있도록 운영체제가 제공하는 사용자 인터페이스입니다. 예전 도스시절에는
command.com이 이 역활을 했죠... 윈도우환경의 쉘은 탐색기입니다. 우리가 항상 다루는 파일
관리자로서의 탐색기가 아니라 윈도우즈 부팅과 동시에 백그라운드에서 실행되는 탐색기를
말합니다. 윈도우즈의 탐색기는 쉘로서 작동할뿐아니라 우리가 항상 보아왔던 파일관리자의
두가지 기능을 동시에 합니다. 바로 이 쉘(탐색기)을 다루는 프로그래밍이 쉘프로그래밍입니다.
쉘익스텐션은 쉘의 특정한 기능들을 사용자 프로그램에서 사용할 수 있도록 해주는 인터페이스
를 말합니다. Add-On 프로그램이라고 생각하시면 이해하기가 쉽겠습니다. 아래 질문의 칸텍스
트메뉴 핸들러나 카피훅 핸들러, 아이콘핸들러, 프라퍼티쉬트, 드래그앤드랍핸들러와 같은 것
들이 쉘익스텐션입니다. 이것들은 모두 COM으로 표현되기 때문에 COM을 모르고는 쉘익스텐션을
프로그래밍할 수가 없습니다.
조금 횡설수설한듯한데... 이해가 되셨길...
^^ 항상 즐코하세요.
어린왕자 wrote:
> 질문이요? 제목 그래두입니다..
> 쉘프로그램은 뭐하는 데 쓰는 겁니까?
> 쉘익스텐션은 또 뭡니까?
> 자세히 갈켜주세요~
>
0
0
삭제
수정
댓글
어린왕자
•
2000.06.25 12:39
.
0
0
삭제
수정
댓글
최용일
•
2000.06.25 15:34
안녕하세요. 최용일입니다.
쉽게 하는 방법이 없는 것은 아닙니다. 약간의 편법이긴 하지만 쉽습니다. 대신 컨텍스트
메뉴 핸들러를 사용한것 처럼 막강한 기능(윈집을 보시면 메뉴가 동적으로 변하죠. 이런것
들)들을 사용할 수가 없습니다. 단지 정적으로만 사용할 수 있죠...
레지스트리를 건드려야 하는데 TRegistry 클래스를 이용하여 프로그래밍하시거나 윈도우의
RegEdit.exe를 이용하여 직접 손보는 방법이 있습니다.
먼저 컨텍스트메뉴가 뜰 파일 확장자를 정해야합니다. 모든 파일에 대해서 할 것인가...아님
특정한 확장자에 대해서 할 것인가, 기존에 있던 확장자에 대해서 할 것인가를...
RegEdit.Exe를 가지고 설명할께요. TRegistry를 이용하여 코딩하는 것도 이걸 들으면 하실수
있을 것입니다.
RegEdit.exe를 실행하면 내컴퓨터밑에 네개의 키가 보이는데 이중 HKEY_CLASSES_ROOT를 보세요.
그럼 *부터해서 파일 확장자리스트가 보일것입니다. 나만의 확장자 이름을 델파이의 백업파
일중 .pas의 백업파일 ~pas로 하겠습니다. HKEY_CLASSES_ROOT키 아래에 새로운 확장자
(.~pas) 이름으로 하위키를 하나 만듭니다.
이 키 아래에 shell이라는 하위키를 만들고 또 shell이라는 하위키아래에 컨텍스트메뉴에
뜰이름으로 하위키를 하나 만듭니다. 여기에서는 notepad라는 이름으로 만들겠습니다.
이렇게 만들면 기본적으로 첫번째 문자가 단축키가 되고 이름도 이키의 이름인 notepad가
되는데 이 키의 Default값을 변경시키면 단축키와 컨텍스트메뉴에 나오는 이름을 바꿀수가
있습니다. 기본적으로 메뉴에 notepad라고 나오고 첫번째글짜인 n에 밑줄이 그어져 있을것
입니다. Default값을 메모장(&M) 이라고 써놓으면 메뉴에 메모장(M)하고 M에 밑줄이 그어
져 단축키가 M으로 바뀌어 질것입니다. 그리고 메뉴도 한글로 나오죠...
또 이 notepad키 밑에 command라는 하위키를 만듭니다. 그럼 전체적으로
HKEY_CLASSES_ROOT/.~pas/shell/notepad/command 라는 키가 만들어졌을 것입니다.
// .~pas와 notepad키는 적당히 이름을 바꿀수가 있습니다. 나머지는 이름을 바꾸면 않되요.
여기에서는 *.~pas파일을 메모장으로 여는 예를 들겠습니다.
HKEY_CLASSES_ROOT/.~pas/shell/notepad/command 키의 Default값에 notepad %1이라고 적어
줍니다. 그럼 만사 OK.
탐색기를 실행시켜 델파이 폴더중에서 확장자가 .~pas파일에 마우스 커서를 놓고 컨텍스트
메뉴를 불러보세요. 그럼 방금 적은 메뉴가 보일것입니다. 그리고 클릭하면 메모장에서
.~pas파일을 편집할 수 있습니다.
어때요. 간단하죠.........
컨텍스트 메뉴 핸들러 프로그래밍은 강좌란에 올릴께요...
^^ 항상 즐코하세요.
0
0
삭제
수정
댓글
어린왕자
•
2000.06.25 12:45
아..오늘 오프모임 있었져? 잼있었나요? 조심해 내려가세요
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
델초보
•
2000.06.26 18:45
1
COMMENTS
/
0
LIKES
C 언어에서의 계행문자('n')을 델파이에서는 어떻게 구현하는지요?
홍세비
•
2000.06.26 19:19
델초보 wrote: > C 언어에서는 n 이란 계행 문자가 있어서 > 프린트문 출력시 > > "hellow World ...
이현철
•
2000.06.26 18:36
1
COMMENTS
/
0
LIKES
ODBC 설정을 코딩으로 하는 방법?
nilriri
•
2000.06.26 21:59
파워빌더에서 엑셀 odbc연결을... 아래와 같은 방법으로 했었거든요... 아마도 엑세스도 레지스트리의 같...
봉길천
•
2000.06.26 18:31
2
COMMENTS
/
0
LIKES
ShellExecute를 외부PGM실행후 종료시점알고파...
호야
•
2000.10.04 00:45
안녕하세요 봉길천님 불쑥 멜을 보내 죄송합니다. 델파이 Q&A에 글올리신걸보니 제가 원하는 문제를 먼저...
최용일
•
2000.06.26 22:31
안녕하세요. 최용일입니다. 형이 틀려서 그런것인데요... 보면 함수의 Result는 Integer형인데 GetExit....
초보
2000.06.26 17:50
0
COMMENTS
/
0
LIKES
델파이 화일 부피 줄이기에 관해
선해석
•
2000.06.26 10:51
4
COMMENTS
/
0
LIKES
또다른 SQL문법
임형호
•
2000.06.26 11:23
선해석 wrote: > 음.. 특정 시간 사이에 가입한 사람을 알고 싶으면 > query를 어떻게 주나요?? > > ...
선해석
•
2000.06.26 12:11
임형호 wrote: > 선해석 wrote: > > 음.. 특정 시간 사이에 가입한 사람을 알고 싶으면 > > query를 어...
임형호
•
2000.06.26 16:56
선해석 wrote: > 임형호 wrote: > > 선해석 wrote: > > > 음.. 특정 시간 사이에 가입한 사람을 알고 싶...
양익호
•
2000.06.29 19:53
임형호 wrote: > 선해석 wrote: > > 임형호 wrote: > > > 선해석 wrote: > > > > 음.. 특정 시간 사이...
선해석
•
2000.06.26 09:28
1
COMMENTS
/
0
LIKES
Query에 대한 질문.
머리나쁜얀
•
2000.06.27 00:42
선해석 wrote: > DB 서버에서 시간대별로 가입한 사람의 수에 대해 통계를 내고 싶습니다. > 어떻게 해야...
찍고턴
2000.06.26 09:02
0
COMMENTS
/
0
LIKES
내용이 한문인db를 한글로 변환하려면 어케해야돼나요?
어린왕자
•
2000.06.26 06:36
3
COMMENTS
/
0
LIKES
[재질문] 짧아진 파일명을 다시 길게 돌려놓구 싶어요
강민주
•
2000.06.26 19:43
어린왕자 wrote: > 안녕하세요..델초보 어린왕자입니다.. > paramstr(1)로..파일명을 받았는데.. > 그게...
어린왕자
•
2000.06.26 21:04
음..TSHFileInfo가 어떤 유닛에 있는지.. 팁란에 재질문 했는데요..
강민주
•
2000.06.26 21:46
어린왕자 wrote: > 음..TSHFileInfo가 어떤 유닛에 있는지.. > 팁란에 재질문 했는데요.. 안녕하세요....
왕초모
•
2000.06.26 05:29
2
COMMENTS
/
0
LIKES
Quick Report의 Summary에서의 천단위 소숫점...
Mr.Q
•
2000.06.26 06:00
왕초모 wrote: > 제목에서 말씀드렸듯이...Quick Report의 SummaryBand에서의 QRExpr에 > 표현된 총금액...
왕초모
•
2000.06.26 09:19
Mr.Q wrote: > 왕초모 wrote: > > 제목에서 말씀드렸듯이...Quick Report의 SummaryBand에서의 QRExpr에 ...
김보영
2000.06.26 04:47
0
COMMENTS
/
0
LIKES
Quick Report에서 Overlay band 사용방법....
차규식
2000.06.26 04:30
0
COMMENTS
/
0
LIKES
TypeCasting Error
김수환
•
2000.06.25 23:23
1
COMMENTS
/
0
LIKES
열기 다이얼로그 의 모양을 바꾸는법 ...
최용일
•
2000.06.27 01:34
안녕하세요. 최용일입니다. 새로 컴포넌트를 만드시는 것이 가장 쉬울 듯 하네요. ^^ 항상 즐코하세...
[델파이]
•
2000.06.25 19:46
1
COMMENTS
/
0
LIKES
델파이의 도움말-------
최용일
•
2000.06.27 01:32
안녕하세요. 최용일입니다. 시작메뉴의 델파이에서 헬프폴더를 보시면 MS SDK Hekp Files폴더가 있습니...
castle road
•
2000.06.25 11:03
2
COMMENTS
/
0
LIKES
[q] about tstringgrid
홍세비
•
2000.06.26 02:28
castle road wrote: > q&a 찾다가 지쳐 질문합니다. ㅡ.ㅡ > > stringgrid에 문자 입력은 오떻게 하는 ...
최용일
•
2000.06.25 11:51
안녕하세요. 최용일입니다. Q&A에 많이 질문했던 문제인데... 문서가 많아서 못찾은 것 같네요. 스트링...
어린왕자
•
2000.06.25 10:34
4
COMMENTS
/
0
LIKES
질문을 검색하다가...과연..쉘이란게 뭔가요? 저두 하구 싶어요~
질문이요? 제목 그래두입니다.. 쉘프로그램은 뭐하는 데 쓰는 겁니까? 쉘익스텐션은 또 뭡니까? 자세히 갈켜주세요~
최용일
•
2000.06.25 11:46
안녕하세요. 최용일입니다. 먼저 쉘이 무엇인지를 알아야죠. 쉘이란 뭘까? 시스템전반에 걸쳐 여러가지 ...
어린왕자
•
2000.06.25 12:39
.
최용일
•
2000.06.25 15:34
안녕하세요. 최용일입니다. 쉽게 하는 방법이 없는 것은 아닙니다. 약간의 편법이긴 하지만 쉽습니다. ...
어린왕자
•
2000.06.25 12:45
아..오늘 오프모임 있었져? 잼있었나요? 조심해 내려가세요
어린왕자
•
2000.06.25 10:16
1
COMMENTS
/
0
LIKES
음..윈도우 팝업메뉴에 저프로그램을 등록하는 방법있나요? 윈집같이..
최용일
•
2000.06.25 13:53
안녕하세요. 최용일입니다. 어린왕자님 강좌란에다가 적어놓을께요. 벌써 백줄이상 쓴것 같은데 아직 절...
castle road
2000.06.25 10:09
0
COMMENTS
/
0
LIKES
[q] about shellexecute...
무식이
2000.06.25 05:30
0
COMMENTS
/
0
LIKES
주소관리
lee
2000.06.25 04:48
0
COMMENTS
/
0
LIKES
Replace 함수를 파라독스에 적용할려면......
박하사탕
2000.06.25 03:26
0
COMMENTS
/
0
LIKES
dbgrid에서 엔터키로 이동후 입력시 한글 깨짐현상
어린왕자
2000/06/25 10:34
Views
191
Likes
0
Comments
4
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
먼저 쉘이 무엇인지를 알아야죠. 쉘이란 뭘까? 시스템전반에 걸쳐 여러가지 설정사항들을
유저가 변경할 수 있도록 운영체제가 제공하는 사용자 인터페이스입니다. 예전 도스시절에는
command.com이 이 역활을 했죠... 윈도우환경의 쉘은 탐색기입니다. 우리가 항상 다루는 파일
관리자로서의 탐색기가 아니라 윈도우즈 부팅과 동시에 백그라운드에서 실행되는 탐색기를
말합니다. 윈도우즈의 탐색기는 쉘로서 작동할뿐아니라 우리가 항상 보아왔던 파일관리자의
두가지 기능을 동시에 합니다. 바로 이 쉘(탐색기)을 다루는 프로그래밍이 쉘프로그래밍입니다.
쉘익스텐션은 쉘의 특정한 기능들을 사용자 프로그램에서 사용할 수 있도록 해주는 인터페이스
를 말합니다. Add-On 프로그램이라고 생각하시면 이해하기가 쉽겠습니다. 아래 질문의 칸텍스
트메뉴 핸들러나 카피훅 핸들러, 아이콘핸들러, 프라퍼티쉬트, 드래그앤드랍핸들러와 같은 것
들이 쉘익스텐션입니다. 이것들은 모두 COM으로 표현되기 때문에 COM을 모르고는 쉘익스텐션을
프로그래밍할 수가 없습니다.
조금 횡설수설한듯한데... 이해가 되셨길...
^^ 항상 즐코하세요.
어린왕자 wrote:
> 질문이요? 제목 그래두입니다..
> 쉘프로그램은 뭐하는 데 쓰는 겁니까?
> 쉘익스텐션은 또 뭡니까?
> 자세히 갈켜주세요~
>