'ETC.'에 해당되는 글 41건

  1. 2008.10.09 한글날, 한글 폰트
  2. 2008.08.27 몸집 커진 말벌에 꿀벌 '덜덜'
  3. 2008.07.31 Google의 백과사전 'Knol" 2
  4. 2008.06.12 명박산성 위키피디아에 등록!
  5. 2008.05.27 Youtube 화질 업그레이드 방법?
  6. 2008.04.01 취향테스트 2
  7. 2008.03.19 스티브 잡스의 10가지 프리젠테이션 노하우
  8. 2007.11.14 웃어야 사는 거미
  9. 2007.10.07 Pentax SMC M50mm F2.0 렌즈 분해기 2
  10. 2007.10.05 레이몬드 첸의 윈도우 개발 282 스토리


한글날, 한글 폰트

ETC. 2008. 10. 9. 10:35
오늘, 10월 9일은 한글날이다. 세종대왕께서 집현전 학자들과 함께 만들어 낸 우리의 소중한 한글.
한글날을 기념하여 대형 포털사이트도 한글 로고를 사용하고, 글꼴도 공개하였다.

아래 로고는 구글 / 네이버 / 다음 의 로고

사용자 삽입 이미지


글꼴도 설치해 봤는데 괜찮은 것 같다. 글꼴은 아래 링크에서!!!

네이버 http://hangeul.naver.com/index2.jsp#
다음 http://fontevent.daum.net/?t__nil_logo=daum
:

몸집 커진 말벌에 꿀벌 '덜덜'

ETC. 2008. 8. 27. 13:59
관련기사 : http://photo.media.daum.net/photogallery/culture/0803_animal/view.html?photoid=2815&newsid=20080827105012459&cp=yonhap

다음(www.daum.net)에 뜬 말벌에 관련된 기사가 있길래 내용을 보았다.

국내 야산의 말벌 개체의 몸집이 커지고 개체 수도 증가하여 인명 피해의
우려가 있다는 내용과 함께 말벌이 꿀벌을 죽이고 있는 사진 한 장.

더 놀라운 것은 이 기사에 달린 댓글의 엄청난 센스!!!



비유도 Perfect!!!

...
...
...


그러나, 아직 1641일 남았음 -_-;;





:

Google의 백과사전 'Knol"

ETC. 2008. 7. 31. 09:35
구글에서 백과사전인 위키피디아와 같은 놀(Knol : Knowledge 의 줄임, nol 이라고 읽음)이라는 이름이 서비스를 시작했다.

기존의 위키피디아는 특정 게시물에 대해서 누구나 자유롭게 수정을 할 수 있는 특징이 있었으나, 놀은 공개된 지식사전이지만 등록한 내용에 대해서는 등록자만 수정을 할 수 있다.

작성한 내용은 구글에서 열심히 서비스 중인 애드센스와 연계를 통해서 수익창출의 방법으로도 이용될 수 있는 것 같다.

구글의 새로운 서비스... '놀' 여기서 한 번 놀아봐야 하려나.
그런데 생각해보니 남에게 공유해 줄 지식이 별로 없는 것 같다. -_-;;

knol1


knol2


http://knol.google.com

:

명박산성 위키피디아에 등록!

ETC. 2008. 6. 12. 10:52
명박산성이 위키피디아에 등록되었다.

최초 등록시의 내용은

명박산성(明博山城)

광종(狂宗)(연호:조지) 부시 8년(戊子年)에 조선국 서공(鼠公) 이명박이 쌓은 성으로 한양성의 내성(內城)이다.

성(城)이라고는 하나 실제로는 당시 육조거리에 막아놓은 기대마벽(機隊馬壁)이 백성들에 의해 치워지매, 그에 대신하여 보다 더 견고한 철궤로 쌓아올린 책(柵)에 불과하다.

이는 당시 서공(鼠公)의 사대주의 정책과 삼사(三司:조선,중앙,동아) 언관들의 부패를 책하는 촛불민심이 서공의 궁(宮)으로 향하는 것을 두려워 만든 것이다.

무자년(戊子年) 유월(六月) 패주(敗主) 두환을 몰아낸 일을 기념하여 백성들이 구름처럼 몰려들자 한성부 포도대장 어(魚) 아무개의 지시로, 하루 밤낮만에 쌓아올려져서 길 가던 도성의 백성들이 실로 괴이하게 여겼다. 한편으로는 그 풍경을 관람코저 모여든 백성이 그 머릿수를 헤아리매 팔만(포도청 추산)이 넘어, 도성 내의 새로운 관광명소가 될 날이 머지 않았다고도 전한다.

이랬으나...

위키피디아의 특성에 맞지 않다는 의견으로 내용이 많이 수정되었다.

http://ko.wikipedia.org/wiki/명박산성


결국에는 어울리지 않다는 의견으로 삭제토론이 진행중... ^^;
이 문서는 위키백과에 어울리지 않는 문서라는 의견이 2008년 6월 10일 (KST)에 제기되어, 현재 삭제 토론 중입니다. 이 문서에 대한 의견을 삭제 토론의 해당 항목에 올려 주시기 바랍니다. 삭제 토론이 끝나지 않았습니다.
:

Youtube 화질 업그레이드 방법?

ETC. 2008. 5. 27. 11:20

Youtube.com에서 제공되는 동영상을 업로드 당시의 화질로
감상하려면 원래 주소에   &fmt=18 와 같이 파라미터를 추가적으로 입력해서 볼 수 있다.
fmt는 파라미터 명이며, 뒤의 숫자는 항상 18이 아니라 6,7,8 등과 같이 변경해서
입력해보면 좀 더 좋은 화질로 동영상을 감상할 수 있다.


출처 : 인터넷 댓글 중 발견





:

취향테스트

ETC. 2008. 4. 1. 13:49


간결하고 냉정한 인공지능 로봇 취향

메마르고 독창적인. 당신은 전통적인 엔지니어의 취향입니다.

당신은 인과관계가 깔끔한 것을 좋아하는 취향입니다. "그래서? 그게 왜 그렇게 됐는데?"라는 생각을 자주 하는 편이죠. 마치 if-then 구문이 골수 깊이 박힌 엔지니어와 같다고나 할까요. 질서정연하지 않은, 장황한 감정에 의존하는 순정 만화 영화 소설은 당신이 좀처럼 가까이 하기가 힘들 겁니다.


"공각 기동대"의 주인공 쿠사나기 소령.
임무 달성의 효율성을 극대화하기 위해 만들어진 기계 군인.
쿠사나기 소령의 철두철미함과 냉혹한 결단력은 당신 취향의 이상형입니다.

당신은 너무 흔하고 뻔한 것에 쉽게 싫증내는 비주류 지향입니다. 매일 똑같은 광경이 펼쳐지는 멜로 드라마, 매일 똑같이 성형한 연예인들이 나오는 TV 광고, 매일 똑같은 멜로디와 창법의 발라드 노래, 당신에겐 모두 짜증나는 것들입니다. 도대체 이런 똑같은 것들을 지겨워 하지도 않고 즐겨 보는 사람들은 제정신일까 궁금합니다.

현실 세계에선 '까다로운' 비주류일지 모르지만, 인터넷 시대에 당신 같은 부류는 주류가 될 수 있습니다. 지루하고 개념없는 대중에 반항적인, 현실에 불만 가득한 사람끼리 모여 영향력을 발휘하고, 무개념 인간들을 조롱할 수 있을테니까요.


좋아하는 것
간결하고 논리적이고 특이한 것이 좋습니다. 딱 부러지게 예를 들자면 SF 소설이죠. 물론 SF 소설 싫어할 수도 있습니다. SF 소설의 상당수는 장황하게 길기만 하니까요. 취향이 상당히 특이하다는 말을 들을 수도 있지만, 의외로 대중적인 영화 소설 음악에 끌리기도 합니다.

사실 이렇게 보면, 특별히 당신의 취향에 시금석 같은 기준이 있는 것은 아닙니다. 일단은 뭔가 새롭고 독창적일 것, 그러나 당신이 아는 상식과 논리에 벗어나지 않을 것. 이 정도 조건이면 당신이 좋아하는 것에 근접할 수 있을 겁니다. 가령, 다음과 같은 광고 정도면 괜찮을까요?


저주하는 것
비논리, 비이성, 군중심리, 이유도 묻지 않는 따라쟁이들, 오빠부대. 당신이 저주하는 것들입니다. 물론 당신 취향만 특별히 저주하는 것은 아닐테지만 말이죠.


-----------------------------------------------------------------------------

"톡톡튀는 참신한 키치 예술 취향"과 "무난하고 보편적인 소년 소녀 취향". 이 두 취향하고 적대적 관계라네...

:

스티브 잡스의 10가지 프리젠테이션 노하우

ETC. 2008. 3. 19. 09:14

1. 화제를 제시하라.
2. 열정을 표출하라.
3. 윤곽을 보여줘라.
4. 숫자를 의미 있게 활용하라.
5. 잊지 못할 순간을 선사하라.
6. 시각적 자료를 극대화 하라.
7. '쇼'를 하라.
8. 작은 실수는 잊어라.
9. 장점을 팔아라.
10. 연습만이 살 길이다.


프리젠테이션의 달인(?)으로 통하는 스티브 잡스의 프리젠테이션을 노하우.
경험상 1~9번을 아무리 잘해도 마지막 항목인 10번을 이행하지 않으면 결국에는
그렇고 그런 프리젠테이션이 됩니다.

하지만 저를 포함한 대부분의 사람들이 10번 항목을 가장 하지 않으며, 하기 싫어하죠.
아무리 창의적이고 놀라운 발표자료를 만들어도 그것을 완벽히 자신의 것으로 만들기 위해서
반드시 지켜야할 항목인 것 같습니다.


:

웃어야 사는 거미

ETC. 2007. 11. 14. 09:13
사용자 삽입 이미지

Figure1. the happy spider from National Geographic

 



웃고 있는 거미(the happface spider). 정식 명칭은 Threidion grallator  라고 한다.

하와이, 오하우, 몰로카이, 마우이 섬에서만 볼 수 있는 종으로 몸의 길이가 5mm 밖에 안되는 녀석이다.

몸에 드러나 있는 독특한 패턴은 새에게 잡아 먹히지 않지 위해서라는
과련 새들이 저 모양을 볼 수나 있을지는 모르겠다 ;;

위키피디아의 설명으로는 거미가 뭘 먹느냐에 따라서 패턴이 변화한다는데... 흠 그날 메뉴에 따라서 달라진다는건가?? -_-a

암튼 우리 인간은 행복하거나 기쁠때 웃고 또는 웃음을 통해서 행복을 찾는데
이 녀석들은 생존을 위해서  웃고 있다.




사용자 삽입 이미지

Figure2. the happyface spider ( from http://starbulletin.com/96/09/17/features/story1.html)

 



Reference site:
http://en.wikipedia.org/wiki/Theridion_grallator
http://starbulletin.com/96/09/17/features/story1.html
http://photography.nationalgeographic.com/photography/photo-of-the-day/spider-guarding-eggs.html
:

Pentax SMC M50mm F2.0 렌즈 분해기

ETC. 2007. 10. 7. 22:49

Pentax 필름 카메라 ME Super를 구입하면서 함께 딸려온 녀석 m50.2

렌즈 내부에 곰팡이가 있었고 나의 무관심 속에 무럭무럭자라나고 있었다.

간단히 소개 하자면 이 녀석은 5군 5매이다.

즉, 5개의 렌즈로 구성되어 있으며 별도의 발삼접착제 등을 사용하지 않았다.
(그런것으로 알고 있다 -_-;;)

할일 없는 일요일 오후 큰 마음 먹고 이 녀석의 다시 태어나게 해주기로 결심!!

수술대 준비, 수술 도구 준비, 조명 준비, 역사적인 순간을 기록할 촬영 장비 준비 끝!!


1. 마운트 부 제거
 - 5개의 나사를 풀어내고 철로 된 마운트 부를 들어낸다.

사용자 삽입 이미지


2. 마운트 부를 제거한 모습.
 - M렌즈 이면서 단렌즈이기 때문에 단순하게 생겼다. 그래도 머리가 나쁘면 나 처럼 캐고생 ㅡㅠ

사용자 삽입 이미지



3. 조리개 조절 부를 제거한 모습.
 - 조리개를 조일 때 돌리는 부위를 제거한 모습이다. 아래 사진의 작은 홈(?)이 있는데 이 부분에 작은 쇠구슬 같은 것이 들어있다. 빼낼 때 잘못해서 잃어버리면 나중에 조립하고 사용할 때 딱딱 끊기는 느낌이 없어진다.

사용자 삽입 이미지



4. 위 단계와 동일
사용자 삽입 이미지




5. 4번 사진에서 금색의 금속 두 개와 조리개를 조절하는 철제부위를 제거한 모습
 - 두 개의 금색 금속은 렌즈가 돌지 않고 앞 뒤로 움직이도록 해주는 역할을 하는 것 같다.
 - 그리고 지금의 상태를 잘 기억해야 한다. 나중에 조립시에 조리개 조절 철제가 들어가는 위치를 맞추어야 하기 때문에...
사용자 삽입 이미지




6. 네임링을 제거한 모습
 - 네임링은 고무장갑을 착용하고 나사 제거하듯이 한쪽방향으로 돌려주면 된다. 우리집에는 고무장갑이 없어서 그냥 무식하게 (-)드라이버로.. ;;

사용자 삽입 이미지




7. 네임링을 제거하면 보이는 나사를 제거하고 필터/후드를 끼우는 철제를 제거
   그리고 렌즈 몸통을 잡고 렌즈를 돌려주면 렌즈가 빠져나온다.
사용자 삽입 이미지



8. 자 이쯤에서 중간정리 좌측에서 아래로 분해한 순서이다.
사용자 삽입 이미지



9. 중간 정리 2차.
사용자 삽입 이미지



10. 렌즈군을 두 개로 분리하였다.그냥 들어내면 된다. ㅡㅡ;
     왼쪽이 대물(?)렌즈, 렌즈의 외부 이고, 오른쪽이 조리개 및 접안(?)렌즈 부이다.
사용자 삽입 이미지



11. 상동
사용자 삽입 이미지



12. 왼쪽의 외부측 렌즈를 분리하였다. 스크류 방식이라서 돌리면 풀어진다.

사용자 삽입 이미지


13. 완전 해부도이다. (사실 완전은 아니다. 조리개도 안 풀었고 렌즈도 3군으로만 분리된 상태)
사용자 삽입 이미지



14. 아래 사진의 두 녀석을 말끔히 청소해주었다.
사용자 삽입 이미지


15. 청소 후 말끔해진 것 처럼 보이는 렌즈... -_-;;;
사용자 삽입 이미지


16. 조립은 역순으로 해결. (렌즈 종류에 따라 그렇지 않은 것도 있다고 함.)

17. 주의 사항은 조립시에 처음 나사산이 끼우는 위치가 틀려지면 조립을 할 수 없게 된다. 조립을 해도 초점링이 정상적으로 작동되지 않음!!!




결론 :
 - 눈에 거슬리던 곰팡이를 제거하기 위해서 분해를 하였고 황금 같은 일요일 오후 5시간을
몽땅 투자하였다. 그리고 얻은 결론은 그냥 4만원 정도 주고 전문점에 맡기자!! ㅡ,.ㅡ;
곰팡이 균에 의해서 코팅이 깍여진 경우는 그 흔적이 남을 수 있다고 한다.( 바로 이 렌즈의 경우!!), 그리고 조립후 없던 먼지들 마져 더욱 쌓여버렸다.



뭐 암튼 이번 녀석을 통해 얻은 경험으로 다른 녀석들도 슬슬.... 후후

{eof}
:

레이몬드 첸의 윈도우 개발 282 스토리

ETC. 2007. 10. 5. 14:03

윈도우용 소프트웨어 사용과 개발에 관한 ‘방법(how)’이 아닌 ‘이유(why)’를 밝힌 최초의 책!
이 책은 윈도우 진영 대표 블로거의 글을 모아놓은 ‘윈도우 개발 비하인드 스토리’이다!
이 책은 참고 서적이나 방대한 입문서가 아니라, 짤막하고 서로 독립적인 일련의 글을 통해 윈도우의 철학을 파악할 수 있도록, 교훈적이 방식이 아닌 대화적 접근 방법을 취하는 ‘생생한 역사서’와 같다. 따라서 독자들은 흥미(또는 기술적인 전문성)에 따라 자유롭게 각종 주제로 건너뛸 수 있다. 글들은 일반적인 주제로 그룹화되어 있으며, 단 깊이 있는 주제를 설명할 때는 순서대로 읽어야 할 때도 있다(그러나 이것도 하나의 장 내에 국한된다).

이 책의 주 독자층은 누구인가?
윈도우의 역사에 관심이 있으면서 기술을 이해하는 독자들이다. 이 책의 내용 중 절반 정도는 프로그래밍 지식을 필요로 하지 않는다. 그리고 나머지 절반은 독자가 소프트웨어 설계와 개발에 기초적인 지식이 있다고 가정한다. 그러나 특별한 전문성은 요구하지 않는다. 다만 윈도우 프로그래밍과 관련된 주제에서는 독자가 Win32 사용자 인터페이스 프로그래밍과 COM에 친숙하다고 가정한다.

이 책으로부터 무엇을 얻을 것인가?
주된 목표는 불합리한 설계로 보이는 것의 이면에 숨어 있는 철학과 원리를 터득하는 것이다. 또, 윈도우에서 무엇인가 수행할 수 없을 때는 충분한 이유가 있기 때문이라는 것을 이해하게 될 것이다. 그리고 윈도우가 과거 호환성을 유지하기 위해 수행해야 하는 많은 노력을 파악할 수 있을 것이다(그리고 왜 그렇게 하는 것이 중요한지에 대해서도).

우리는 다음과 같은 것들에 한번쯤 물음표를 찍어본 적이 있었을 것이다.
- 왜 윈도우는 지금처럼 작동할까?
- 왜 컴퓨터 끄기가 시작 메뉴에 있을까?
- 그리고 도대체 시작 버튼은 왜 그곳에 있을까?
- 어떻게 대화상자 루프로 들어갈 수 있을까?
- 왜 레지스트리 파일들은 ‘하이브(hives)’라고 불릴까?
- 왜 GetWindowText 함수는 이상하게 작동할까?

이러한 질문에 대해 베테랑 개발자의 비하인드 스토리를 전격 공개한다!
윈도우의 이상한 부분 중 많은 것들은 윈도우 개발과정의 이면을 들여다보면 쉽게 수긍할 수 있다. 이러한 것들을 이해하면 생산성은 높아지고, 좌절하는 일은 줄어들 것이다. 10년 이상 마이크로소프트의 윈도우 개발팀에서 일해 온 레이몬드 첸은 독자가 알고 싶어하는 ‘숨겨진 윈도우’를 공개할 것이다. 첸의 매력적인 문체, 깊은 통찰력, 그리고 사려 깊은 유머 감각은 그를 세계 최고 수준의 테크니컬 블로거로 만들었다. 이 책에서 그는 공개되지 않은 설명, 값진 기술적 충고, 그리고 윈도우에 생명을 부여하는 일화들을 들려주며, 이 대부분을 여러분 자신의 것으로 만들어준다.

이 책의 내용들 중 몇 가지는 다음과 같다.
- 효과적인 사용자 인터페이스와 자동판매기의 상관관계
- 창과 대화상자 관리에 대한 깊이 있는 이해
- 성능 최적화가 직관적이지 않은 이유
- COM 개체와 비주얼 C++ 컴파일러의 약점
- 과거 호환성에 관한 자세한 내용
- 윈도우는 무엇을 하며, 왜 하는가?
- 개발자가 모르는 윈도우 프로그램의 보안 구멍
- 공들여 만든 프로그램을 윈도우에서 보다 잘 실행되게 하는 팁

저자 블로그 : http://blogs.msdn.com/oldnewthing/

http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200708300006
 

Chapter 01 사용자 인터페이스 설계의 초기 진출 1
컴퓨터를 끄기 위해 왜 시작 버튼을 눌러야만 하는가? 2
왜 윈도우에는 ‘전문가 모드’가 없는가? 3
모든 대화상자에서 기본 응답은 ‘취소’이다 3
최선의 설정은 느끼지는 못하지만 존재하고, 예상대로 작동하는 것이다 6
우리의 탁월한 지성미를 증명하기 위해 당신이 답변할 수 없는 질문을 할 것이다 6
설치할 때 더 새로운 운영체제 파일을 유지하겠느냐고 왜 묻지 않는가? 7
기능에 관한 생각 9
옵션 비활성화시키며, 언제 제거할 것인가? 11
버튼이나 메뉴에 ‘...’를 언제 넣을 것인가? 12
자동판매기를 위한 사용자 인터페이스 설계 13
실내 도어 락을 위한 사용자 인터페이스 설계 14
윈도우 UI에서의 마스카라의 발전 15

Chapter 02 윈도우 95에 대한 몇 가지 추억 17
내 시간대는 왜 세계 지도에 표시되지 않는가? 18
윈도우 95는 메모리가 1GB를 넘을 때 왜 부팅할 수 없었나? 19
윈도우 95에는 왜 곰, 토끼, 아기돼지라는 함수가 있나? 20
BOZOSLIVEHERE와 TABTHETEXTOUTFORWIMPS가 무엇인가? 21
윈도우 95 특수 판의 상자에는 무엇이 있었나? 23
윈도우는 모든 사람에게 로르샤흐 검사를 실시한다 23
무술 로그온 그림 24
왜 정말 큰 사전은 좋지 않은가 25
윈도우 95의 시작 소리에 관한 고찰 26
정확성을 고려하지 않는다면 칼럼을 쓰기가 훨씬 쉽다 27
시스템 속성 페이지는 왜 메모리 크기를 반올림하는가? 27
하드 디스크 표시등은 왜 몇 초마다 깜박이는가? 28
더 빠른 syscall 트랩에 대한 검토 29
1바이트는 1달러이다 30
제품 지원 요청은 판매비용을 가중시킨다 30
트윅 UI가 윈도우 CD에 왜 포함되지 않는가? 31
xcopy로는 윈도우를 설치할 수 없다는 사실을 밝히다 32
에그헤드 소프트웨어 상점 전체를 사다 33
윈도우 파워 토이의 역사 34
윈도우는 최종 빌드 번호를 어떻게 선택했는가? 36
서비스 팩에서는 왜 빌드 번호를 증가시키지 않는가? 38

Chapter 03 GetWindowText의 비밀 이력 39
윈도우는 텍스트를 어떻게 다루는가 40
GetWindowText 들어가기 40
이 규칙들이 마음에 들지 않을 때는 어떻게 할 것인가? 41
어떤 차이가 있는지 예를 들 수 있는가? 42
GetWindowText를 위한 규칙은 왜 이렇게 이상한가? 43

Chapter 04 작업 표시줄과 알림 영역 45
왜 어떤 사람들은 작업 표시줄을 ‘트레이’라고 부를까? 46
작업 표시줄은 왜 기본적으로 화면 아래쪽에 위치하는가? 47
작업 표시줄의 시계는 왜 초를 표시하지 않는가? 48
작업 표시줄은 왜 아날로그 시계를 표시하지 않는가? 49
작업 표시줄을 수직으로 고정시키면 왜 ‘시작’이 나타나지 않는가? 49
사용자가 ‘X’ 버튼을 클릭할 때 알림 아이콘은 왜 메시지를 받지 않는가? 50

Chapter 05 헷갈리는 인터페이스 문제 51
이 작은 중첩 아이콘들은 무엇인가? 52
로그 온할 때 원하지 않는 파일이나 폴더가 왜 열리는가? 52
파일 라벨 색상은 무엇을 의미하는가? 55
고급 옵션 대화상자는 왜 각 옵션에 ON 또는 OFF를 표시하는가? 56
Alt+Tab 목록에 나타나는 아이콘 순서는 어떻게 결정되는가? 56
폴더의 읽기전용 속성은 왜 그렇게 이상한가? 57
작업 표시줄의 빈 버튼을 클릭하면 왜 사라지는가? 58
모두 최소화와 바탕화면 보기의 차이점은 무엇인가? 59
메뉴의 굵은 활자는 무엇을 의미하는가? 60
개인화된 웹 사이트 아이콘들은 어디서 오는가? 60
작업 관리자의 탭과 버튼들은 어디로 갔나? 61
파일을 드래그하면 이동이 될까, 복사가 될까? 62
연결 폴더는 왜 자동으로 재생성되는가? 63
문서를 여러 개 선택하고 인쇄할 때 순서가 왜 바뀌는가? 64
레이몬드, 제품 지원으로 하루를 보내다 65
커넥터에 먼지 불기 65
윈도우에서 기가바이트는 정확히 얼마 만큼인가? 67
‘테스트/검토 목적으로만 사용’이라는 꼬리표를 왜 제거할 수 없는가? 67

Chapter 06 GlobalAlloc 함수의 이력 69
초창기 70
선택자 72
Win32로의 전이 73
구현에 대한 간단한 언급 74

Chapter 07 Windows 프로그래밍의 짤막한 주제들 77
임시용 프로그램 78
제목 아이콘을 위한 오른쪽 클릭 상황 메뉴 만들기 83
CreateMenu와 CreatePopupMenu의 차이점은 무엇인가? 85
창 관리자는 메뉴들을 언제 자동으로 제거하는가? 87
창이 화면에 보일 때만 그리기 87
창이 덮였는지 판단하기 91
바둑판식 배열 효과를 위한 비트맵 브러시 93
DC 브러시는 언제 쓸모가 있는가? 96
고정된 직사각형을 그리는 데 ExtTextOut 사용하기 98
고정된 직사각형을 그리는 데 StretchBlt 사용하기 100
흉측한 상자 없이 문자열 출력하기 101
세마포어는 소유자가 없다 109
자동 리셋 이벤트는 단지 어리석은 세마포어일 뿐이다 111

Chapter 08 창 관리 113
왜 가짜 WM_MOUSEMOVE 메시지를 받는가? 114
WM_MOUSEENTER 메시지 는 왜 없는가? 116
흰 플래시 117
빈 브러시의 용도는? 117
바탕화면 창은 무엇이 그렇게 특별한가? 118
창을 비활성화하고 활성화하는 올바른 순서 119
이전 창 위치를 복원할 때의 미묘함 120
UI 모달성과 코드 모달성 121
WM_QUIT 메시지와 모달성 124
모달 UI의 올바른 소유자 설정의 중요성 127
모달이 된 프로그램과 상호작용하기 130
시한 MessageBox - 간단한 버전 130
임시용 창 133
GWLP_USERDATA의 보너스 창 바이트들 134
시한 MessageBox - 더 나은 버전 134
시한 상황 메뉴 137
왜 창은 파괴된 후에 메시지를 받는가? 138

Chapter 09 하드웨어에 대한 회고담 139
하드웨어 과거 호환성 140
유령 CD-ROM 드라이브 141
마이크로소프트 회사 네트워크는 지옥보다 1.7배 나쁘다 141
제조업체가 그들 자신을 모욕할 때 143
WHQL 드라이버 인증 절차 속이기 143
6미터짜리 컴퓨터 144
죽음의 USB 카트 145
새 장치가 인식되었습니다 - 보잉 747 145
엄청나게 많은 오버클로킹이 있었다 146

Chapter 10 대화상자 관리자의 내부 처리 149
대화상자 프로시저에 대해 150
대화상자 템플릿의 발전 161
도대체 대화상자 템플릿은 왜 사용하는가? 195
대화상자는 어떻게 생성되는가 197
모달 대화상자 루프 205
중첩 대화상자와 DS_CONTROL 217
도대체 왜 대화상자 루프가 필요한가? 225
대화상자 편집기는 왜 컨트롤 ID를 100부터 할당하기 시작하는가? 226
DefDlgProc 안에서 어떤 일이 벌어지는가? 227
비활성화된 컨트롤로부터 초점을 이동시키지 말 것 229
IsDialogMessage 안에서 어떤 일이 벌어지는가? 230
메시지 상자의 X 버튼은 왜 비활성화되는가? 237

Chapter 11 일반적인 소프트웨어 문제 239
일광 절약 시간제는 왜 직관적이지 않은가 240
파일을 플로피에 복사할 때 타임스탬프가 왜 바뀌는가? 241
반환 주소를 믿지 말라 242
정렬 비교 함수 작성하기 243
다른 편에서 계약서를 읽을 수 있다 245
실용주의와 순수주의 사이의 전쟁 249
최적화는 종종 직관에 반한다 250
서버에서 페이징 = 죽음 253
재계산할 수 있는 것은 저장하지 말라 254
성능은 다른 구성요소의 희생으로 얻어진다 255
폴링에 대한 성능적 결과 257
메모리 누수를 식별하기 위한 가난한 사람의 방법 258
나쁜 정책을 가진 캐시는 메모리 누수의 또 다른 이름이다 259

Chapter 12 비주얼 C++ 컴파일러에 대한 집중 탐구 267
소멸자가 언제 실행되는지 아는가? 268
COM 개체의 레이아웃 272
조정자 썽크 275
__purecall은 무엇인가? 280

Chapter 13 과거 호환성 283
종종 애플리케이션은 단지 중단시키기를 원한다 284
프로그램이 문서화되지 않은 구조에 굴복할 때 284
문서화되지 않은 특성에 의존하는 애플리케이션들을 왜 단순히 차단하지 않는가? 286
16비트 DOS와 윈도우는 왜 아직도 존재하는가 288
NUL이나 CON과 같은 예약 파일명에 대한 정책은 무엇인가? 290
UNC 경로의 앞에 (가끔) 왜 드라이브 문자가 허용되는가? 292
게임 디어 헌터의 위력을 과소평가하지 말라 293
버그는 종종 게임의 후반까지 드러나지 않는다 293
셸 폴더 키에 관한 길고 슬픈 이야기 294
오류 코드 과거 호환성의 중요성 296
그럼요, 할 수 있어요 297
프로그램이 운영체제를 패치하고 손상시킬 때 299
호환성은 내부의 부수적인 작업에까지 제약을 가한다 300
윈도우는 왜 BIOS 시계를 지역 시간으로 유지하는가? 301
잘못된 버전 번호 확인 302
사람들이 IUnknown::QueryInterface를 망치는 방법 302
시스템이 결코 바뀌지 않을 것이라고 프로그램이 가정할 때 - 에피소드 1 304
시스템이 결코 바뀌지 않을 것이라고 프로그램이 가정할 때 - 에피소드 2 305
위장 디스플레이 제어판 306
위장 시각 스타일 307

Chapter 14 어원과 역사 309
WPARAM과 LPARAM의 W와 L은 무엇을 나타내는가? 310
윈도우 98에서 최대 모니터 개수는 왜 9개였는가? 310
레지스트리 파일은 왜 하이브라고 불리는가? 311
16비트 윈도우 내의 자원을 위한 메모리 관리 311
HINSTANCE와 HMODULE의 차이점은 무엇인가? 312
WinMain의 hPrevInstance 매개변수의 목적은 무엇인가? 314
GlobalWire 함수는 왜 그렇게 불리는가? 316
LocalAlloc과 GlobalAlloc의 차이점은 무엇인가? 316
GMEM_SHARE 플래그의 요점은 무엇인가? 318
LPARAM으로 캐스트하기 전에 왜 중복된 캐스트를 종종 보게 되는가? 319
왜 레지스트리 함수 이름은 가끔씩 Ex로 끝나는가? 320
SHGetMalloc, SHAlloc, CoGetMalloc, CoTaskMemAlloc 사이의 차이점은 무엇인가? 322
윈도우 오류 보고는 왜 닥터 왓슨이란 별명을 가지는가? 327
다이렉트엑스 4에 무슨 일이 있었나? 328
HANDLE 반환 값은 왜 그렇게 일관성이 없는가? 329
텍스트 파일은 왜 Ctrl+Z로 끝나는가? 331
행 종결자는 왜 CR+LF인가? 332
TEXT와 _TEXT와 _T, 그리고 UNICODE와 _UNICODE 333
대화상자는 왜 처음에 숨긴 채 만들어지는가? 333
내부를 바꾸면 아무도 눈치 채지 못한다 334
FlushInstructionCache가 아무 것도 하지 않는데 왜 호출해야 하는가? 335
InterlockedIncrement/Decrement는 왜 결과의 부호만 반환하는가? 336
WSASetLastError 함수는 왜 존재하는가? 337
윈도우에는 왜 방송 기반의 메커니즘이 있는가? 338
작업 표시줄이 만들어지기 전에는 창들이 어디로 최소화되었나? 339
바탕화면 창은 왜 작업 표시줄을 제외하도록 축소되지 않았는가? 340
Alt 키를 눌렀다 놓을 때 캐럿은 왜 깜박임을 멈추는가? 341
ES_OEMCONVERT 플래그는 무엇인가? 342
파일 시스템 터널링의 배경 역사 343
NTFS와 탐색기는 왜 파일명 정렬에서 일치하지 않는가? 345
날짜 및 시간 제어판은 달력이 아니다 347
윈도우 95는 어떻게 DLL의 기본 주소를 변경했나? 348
SYSTEM_FONT와 DEFAULT_GUI_FONT는 무엇인가? 350
상하 컨트롤의 화살표들은 왜 거꾸로 되어 있는가? 351
윈도우 95 발표회 입장권 352

Chapter 15 창 메시지는 어떻게 전달되고 추출되는가 355
전송 메시지와 게시된 메시지 356
전송 메시지의 수명 361
게시 메시지의 수명 362
생성된 게시 메시지 363
SendMessageCallback은 언제 여러분을 다시 호출하는가? 366
메시지가 시간제한이 될 때 SendMessageTimeout에서 어떤 일이 벌어지는가? 367
여러분이 배운 것을 몇 가지 메시지 처리 신화에 적용하기 367
누가 메시지를 전송 또는 게시했는지 어떻게 알 수 있는가? 368
PostMessage로 키보드 입력을 흉내낼 수 없다 369

Chapter 16 국제적 프로그래밍 371
유니코드에서 대소문자 매핑은 어렵다 372
부적절한 대소문자 매핑에 관한 일화 373
왜 텍스트를 회전시킬 수 없는가 374
0409와 1033이라고 불리는 디렉토리들은 무엇인가? 376
코드 페이지를 계속 주시하라 377
기본 8비트 코드 페이지는 왜 ‘ANSI’라고 불리는가? 386
기본 콘솔 코드 페이지는 왜 ‘OEM’이라고 불리는가? 386
OEM 코드 페이지는 왜 종종 ANSI라고 불리는가? 387
유니코드와 ANSI 사이의 변환에 대한, 논리적이지만 다소 놀라운 결과 388

Chapter 17 보안 391
모든 사람이 쓸 수 있는 파일 392
탐색기로부터 파일 감추기 393
패스워드 훔치기 394
비인증 드라이버의 조용한 설치 395
디버깅 코드가 보안 취약점이 될 수 있다 396
공유 영역은 왜 보안 취약점인가 397
인터넷 익스플로러의 고급 보안 구성은 인트라넷을 신뢰하지 않는다 400

Chapter 18 Windows 2000과 Windows XP 403
새 시작 메뉴는 모든 프로그램 목록에서 왜 즐겨쓰는 메뉴를 사용하지 않는가? 404
시작 메뉴 고정 목록에는 왜 프로그램으로 액세스할 수 없는가 405
윈도우 XP 서비스 팩 2는 왜 종종 CD 자동실행 설정을 잊어버리는가? 406
안전하지 않은 장치 제거 대화상자 407
윈도우 XP의 코멘트? 버튼에 대한 두 가지 회고담 408
CD를 구운 후에 탐색기는 왜 그것을 꺼내는가? 409
윈도우를 설치할 때 왜 새 부트 섹터를 저장하는가? 409
심적인 디버깅 : 왜 값비싼 4 CPU 컴퓨터에서 세 개를 무시하는가 410
심적인 디버깅 : CPU 사용량이 왜 50%로 올라가는가 411
DS_SHELLFONT 플래그는 무엇인가? 412
왜 DS_SHELLFONT = DS_FIXEDSYS | DS_SETFONT인가? 413
DS_SHELLFONT는 속성 시트 페이지에서 어떤 다른 효과를 가지는가? 414

Chapter 19 Win32 설계 문제 417
가져오기가 해결되지 않으면 왜 Win32의 모듈을 로드할 수 없는가? 418
왜 구조체의 크기는 엄격하게 점검되는가? 419
WM_DEVICECHANGE를 위해서 왜 이런 이상한 값을 반환해야 하는가? 422
프로그램과 사용자 간의 무기 경쟁 423
TerminateProcess는 왜 가로채지 못하는가? 424
어떤 프로세스는 죽고 난 후에 왜 작업 관리자에 남아있는가? 425
WAIT_ABANDONED의 결과 이해하기 426
알림 아이콘 풍선 팁 내 하이퍼링크를 넣을 수 없는가? 428
같은 트리 항목 여러 번 사용할 수 없는가? 429
괴상한 STRRET 구조체 430
UTF-8을 왜 ANSI 코드 페이지로 설정할 수 없는가? 431
가라앉은 클라이언트 영역은 언제 사용해야 하는가? 432
모두 포함하는 윈도우 상위 집합 버전이 왜 없는가? 433
바탕화면을 비활성화하는 것이 어떻게 가능하단 말인가? 434
창과 메뉴의 중첩 한계는 무엇인가? 435
HWND_TOP과 HWND_TOPMOST 사이의 차이점은 무엇인가? 435

Chapter 20 부담 437
계층적 저장소 관리 438
지정학 439
원격 데스크톱 연결과 그리기 440
빠른 사용자 전환과 터미널 서비스 443
다중 사용자 444
로밍 사용자 프로필 445
전환된 폴더 447
내 문서와 Application Data 450
대규모 주소 공간 451
전원 관리와 배터리 전원 감지하기 455
간헐적인 네트워크 연결 457
안티 앨리어스 글꼴과 클리어타입 459
고해상도 디스플레이 462
다중 모니터 466
작업 영역 469
팝업 창을 정확한 장소에 표시하기 470
접근성 471

Chapter 21 어리석은 짓 481
많이 오해되는 ‘없는(nop)’행동 481
마케팅이 슬라이드를 망치지 못하게 하라 482
별난 버그 보고서 482
예제 URL을 조심하라 483
독립된 코드는 없다 484
그러나 나는 비주얼 베이직 프로페셔널을 가지고 있다 485
이는 모두 반투명의 플라스틱 때문이다 485
필자의 첫 번째 살해 위협 486
AOL CD로부터 벗어날 수 없다 487
컴퓨터를 전원에 연결하기 전에 충분한 경고 주기 488
스파이더 솔리테르가 인기 있는 챔피언을 내쫓다 489
랫 포커에는 무엇인가가 있다 489
제품 그룹의 이름을 지을 때 조심하라 490
내부 배포 목록 이름을 부여할 때의 심리학 491
관리자와 프로그래머 사이의 차이점 491
플로피 디스크를 세마포어 토큰으로 사용하기 492
토큰이 중간에 의미를 바꿀 때 493
부드러운 형태의 질책인 별난 골칫거리 494
물리적 개체를 상기자로 사용하기 494
사무실 디스코 파티 495
할로윈 주제의 로비 496

인덱스 497


: