윈도우 무비 메이커를 처음 접하면서 생경한 느낌이 들지만, 프로그램의 정체와 용도를 분명히하면 실망도 적고, 알맞은 용도로 활용할 수 있으므로 여러분들이 언급하고 있는 윈도우 무비 메이커의 장단점을 먼저 정리해 볼까 합니다. 우선 장점은 다음과 같습니다.누구나 무료로 사용 가능. 윈도우 메모장처럼 XP의 SP2, SP3에서는 기본 설치되는 프로그램이고, 윈도우 7이상에서는 무료를 다운로드 받을 수 있습니다.초보자도 어렵지 않게 동영상 편집. 직관적이고 단순한 사용자 인터페이스를 가지고 있으면서도 일반적인 동여상 편집 과정을 그대로 수행할 수 있습니다.슬라이드 쇼 동영상에 최적화. 아마추어용 동영상, 사진 기반의 슬라이드 쇼를 쉽게 제작할 수 있도록 기능을 제공하고 있습니다. 본글의 제목처럼 간편한 음악 ..
아이들 학교 축제 준비를 하면서 동영상 편집 도구로 윈도우 무비 메이커를 사용한다는 이야기를 들었는데 막상 사용해 보려고 이것 저것 알아보니 "무료"로 배포하고 있고 서비스팩에 자동 포함된다는 설명도 있기는 한데 찾기가 쉽지는 않군요. 위의 그림은 http://windows.microsoft.com/ko-kr/windows/get-movie-maker-download 페이지의 내용으로 운영체제별로 사용 가능 무비 메이커의 버전과 다운로드 방법등이 기술되어 있습니다. 필자의 경우에는 Windows7을 사용하고 있으므로 우측의 [지금 받기] 버튼을 통해서 무비 메이커 2012를 다운로드 받아 설치 했습니다. 다운로드 파일은 wlsetup-web.exe로 실행하면 웹을 통한 "Windows 필수 패키지 201..
본 글은 가장 간단한 컴파일러(C언어 배우기를 위한 준비 참조)와 텍스트 편집기(또 다른 텍스트편집기 NPP - 노트패드 플러스 플러스 참조)를 활용한 C언어 개발을 위한 노트패드 ++(이하 NPP)의 콘솔 플러그인(노트패드 ++의 유용한 플러그인 설치하기 참조)에 관련한 포스팅입니다. 연관 글을 참조하시면 보다 유익한 C언어 스터디를 하실 수 있습니다.NPP로 C언어 소스 코드를 편집하다가 별도의 창을 열어서 컴파일을 수행하고 그 결과에 따라 디버깅하는 작업을 반복할 수도 있지만 NPP 창 내부에서 빌드 과정을 확인하면서 코드를 보완하거나 코드를 참조하면서 빌드 또는 실행 결과를 확인하기 하기 위해서는 하나의 인터페이스에서 작업하는 것이 유용합니다. 비주얼스튜디오나 이클립스와 같은 통합개발환경(IDE)..
노트패드 ++(이하 NPP)의 플러그인은 설치 폴더 아래에 있는 plugins 디렉토리에 있는 DLL 파일들에 의해 수행됩니다. 플러그인의 추가 설치 및 관리는 위의 그림과 같이 플러그인>Plugin Manager>Show Plugin Manager 메뉴를 통해서 수행합니다. 플러그인 관리자는 위의 그림과 같이 "Available", "Updates", "Installed" 탭으로 구분하여 인터넷을 통한 최신의 플러그인 정보나 업데이트 정보를 제공합니다. 사용자는 개별 플러그인을 클릭하여 상세한 설명이나 릴리즈 정보를 확인할 수 있습니다. 새로운 플러그인을 설치하려면 위의 그림과 같이 해당 플러그인을 체크 선택하고 [Install] 버튼을 클릭하면 됩니다. 플러그인을 설치한 다음에는 NPP를 재가동 해야..
데이터베이스를 사용하는 솔루션 프로그램들은 프로그램의 정상 가동을 위해서 필요한 스키마가 미리 준비되어 있는 상태로 프로그램을 시작하는 것이 일반적인 방법입니다. 그러나, 최근의 프로그램들은 데이터베이스 연결까지만 사용자가 설정해 놓으면 테이블이나 뷰 생성과 초기 데이터 준비를 프로그램이 알아서 진행하여 프로그램 수행 환경 준비를 자체 해결하는 경우가 많습니다. 이 과정에서 연결한 데이터베이스에 특정 테이블이나 컬럼의 존재 여부를 검사하는 과정은 필수적이라 할 수 있습니다. 테이블 존재 여부를 검사해서 테이블이 존재하지 않는 경우 자동으로 테이블을 생성하는 DDL(Data Definition Language) 문장을 실행할 수 있을 것입니다. 프로그램 버전 업그레이드 과정에서 특정 컬럼이 존재하지 않는 ..
첫째를 임신한 아내를 데리고(모시고) 지리산 노고단을 다녀온지도 가물 가물해질 만큼 시간이 흘렀네요. 산티아고 순례길에서 영감을 받은 한 언론인의 열정과 노력 덕분에 제주 올레길이 열리고 걷기 열풍이 한창일 무렵 "지리산 둘레길"이란 이름으로 새롭게 재 탄생한 걷는 길을 한번은 가야지 가야지 했는데 드디어 그날이 오는가 봅니다. 사실 힘들게 뭐하러 그런 길을 걷는가? 하는 분들도 있겠지만 지리산 곳곳에 발자국을 남기며 젊은 시절을 지낸 필자에게는 "지리산 둘레길"이 경건하게 느껴질 정도입니다. 그래서 더욱 기대가 큰가 봅니다. 아름다운 풍경, 황홀한 단풍에 대한 기대보다 지리산의 품에 안기어 걷는 시간에 대한 기대입니다. 걷기 여행에 자동차를 끌고 가는 것이 영 마음에 들지는 않지만 기차표 매진, 애매한..
필자가 토터스깃을 사용하는 가장 큰 이유는 아마도 서브버전 사용 과정에서 익숙해진 아이콘 오버레이 기능 때문이 아닌가 싶습니다. 토터스깃에서 제공하는 아이콘 오버레이 기능은 각 파일 및 디렉토리의 상태를 아이콘으로 보여줌으로서 개발자로 하여금 어떤 부분에 수정을 가했는지, 어떤 파일이 형상 관리 대상인지 아닌지를 아이콘을 통해 한눈에 파악할 수 있도록 도와 줍니다. 외부 저장소를 복제(Clone)해서 작업 사본(Working Copy)을 확보하면 초기 상태는 초록색 바탕의 체크 표시 아이콘인 "Normal" 상태가 됩니다. 위의 그림은 ".git" 명칭을 가진 기본(Bare) 저장소와 작업 사본(Woking Copy)이 함께있는 일반적인 저장소 복제(Clone) 방법으로 프로젝트를 시작한 예제로 폴더와 ..
최근 웹호스팅을 사용하는 한 사이트에서 똑같은 프로그램임에도 불구하고 기능이 잘 동작하지 않는 다는 이야기를 듣고 간단하게 몇가지 조사해 보니 file_get_contents() 함수가 정상적인 동작을 하지 않더군요. file_get_contents() 함수는 파라미터로 외부 사이트의 URL을 입력하면 해당 페이지의 내용을 가져와서 문자열로 리턴해 주는 개발자 입장에서는 매우 유용한 함수인데 해커들이 이런 함수를 통해서 인젝션(Injection) 공격을 수행하기 때문에 PHP 설정중에 allow_url_fopen를 0으로 설정해서 fopen(), file(), file_get_contents() 등의 함수에서 외부 URL을 사용할 수 없도록 한다는 이야기 였습니다. 해당 함수 사용 과정에 위험성이 있는지..
저자는 독일의 루츠 폰 베르너(Lutz von Werder)와 바바라 슐테-슈타이니케(Barbara Schulte-Steinicke)입니다. 괴테와 헤르만헤세의 작품에서 익숙해져 있는 탓인지 독일인의 문체가 그리 낫설지 않게 느껴져서 책 읽기의 부담이 덜했습니다. 문화적 배경은 다를 수 있지만 "글쓰기"에 몰입한 책이니 만큼 블로그 글쓰기로 스스로의 역량을 높이고 마음의 평안과 가술적 나눔등 여러가지 유익을 누리고 있는 가운데 좀더 쉽게 읽히고 도움을 줄 수 있는 글을 어떻게 하면 잘 써볼까? 하는 마음이 있는 사람이라면 누구나 공감과 동의속에 책을 읽을 수 있을 것입니다. 아마존에서 판매하고 있는 원서의 제목은 "Schreiben von Tag zu Tag"로 직역하면 "매일 매일 글쓰기"입니다. 부제..
윈도우 폼(Windows Forms) 응용을 MDI(Multiple Document Interface) 형태로 만들면 하나의 윈도우 폼이 부모폼(Parent Form)이 되고 여러개의 자식폼을 내장하는 방식으로 편리한 창 관리, 예를 들어 타일 방식으로 창을 자동 배열하거나 연속 형태(Cascade)로 창을 간단하게 배열할 수 있습니다. 그런데 이런 형태의 창 배열을 사용하지 않고 부모폼의 작업 영역에 한번에 하나의 폼만을 표시하려고 하면 몇가지 설정이 필요합니다. 분명 자식폼으로 사용할 폼의 ControlBox 속성을 False로 설정했지만 위의 그림과 같이 자식폼이 부모 폼의 작업 영역에 꽉차도록 WindowState 속성을 Maximized로 설정하면 컨트롤 박스가 보이고 맙니다. 폼 클래스에 Do..
텍스트 편집기에서 다중창을 사용할 수 있는지 없는지는 생산성에 상당한 영향을 비칩니다. 오랜 기간 발전을 거듭해온 노트패드++(이하 NPP)도 다중창 또는 창 분할 기능이 있습니다. 창분할 관련 기능은 상단 탭을 우측 마우스 버튼을 클릭하여 컨텍스트 메뉴를 사용합니다. 같은 파일을 양쪽 창에 동시에 보면서 작업하고 싶을 경우에는 "분할 창으로 복사"를 선택하고 좌우 분할 창간의 이동은 "분할 창으로 이동"을 선택하면 좌에서 우로 또는 우에서 좌로 분할 창을 이동할 수 있습니다. 분할 창이 생기면 위의 그림과 같이 점선으로 표시된 "분할 크기 조정바"를 통해서 좌우 분할창의 크기를 끌어다놓기(Drag and Drop) 방식으로 조정할 수 있습니다. 또한 "분할 크기 조정바" 상하단에 있는 작은 좌우 화살표..
위의 첨부파일 링크는 아래에서 언급하는 내용들을 반영한 배포 패키지 입니다. 한국어만을 남겨두고 다른 언어들과 테마 파일을 삭제하고 아래에서 언급할 번역 적용과 폰트 설정등을 감안한 파일입니다. 다운로드 받으셔서 압축 해제하면 바로 한글 환경에서 작업할 수 있습니다. 노트패드++(이하 NPP)를 설치하고 설정>환경설정을 통해서 "한국어"를 사용자 인터페이스의 언어로 선택할 수 있는 것은 NPP 설치 폴더의 localization 폴더에 있는 korean.xml 파일이 있기 때문입니다. 위의 그림은 localization/korean.xml 파일을 NPP로 열어본 예제로 "Native-langue" 태그의 name 속성에 "한국어"로 정의되어 있는데 이 이름이 환경설정>속성창에 표시됩니다. 번역 내용을 수..
분산 버전 관리 시스템(DVCS, distributed version control system)으로서의 깃(Git)을 사용한다는 의미는 현재 자신이 사용하는 컴퓨터 시스템에 로컬 저장소(Repository)를 확보하는 것으로 시작합니다.(깃(Git) 시스템 구조 이해 참조) 아무 것도 존재하지 않는 빈 저장소로 시작할 수도 있고 이미 어느 정도 진행한 기존의 다른 저장소(로컬 또는 원격)로 부터 시작할 수도 있습니다. 윈도우 탐색기에서 빈 디렉토리를 만들고 컨텍스트 메뉴>"Git 저장소 여기에 만들기"(git init)를 선택하면 아무 것도 존재하지 않는 빈 저장소로 형상 관리를 시작할 수 있습니다. "Git 저장소 여기에 만들기"를 수행하면 위의 화면과 같이 일반적인 깃 저장소로 만들지 기본 저장소(..
예전에는 별로라고 생각했었는데 시간이 지나고 기술이 발전함에 따라 새로운 시각으로 바라보게 되는 것이 있습니다. NPP, Notepad ++를 언제 처음 만났었는지는 가물가물하지만 첫 텍스트편집기였던 울트라에디터를 벗어나 다른 편집기에 익숙해 있던 터라 다른 텍스트 편집기는 돌아볼 마음이 없었는데 우연히 다시 만나게된 Notepad++(이하 NPP)와도 친해질 필요가 있겠구나 싶습니다. 윈도우에서만 동작하는 것이 단점으로 보이기는 하지만 가벼운(다운로드 파일 2MB 내외) 텍스트 편집기로 소스도 공개되어 있고 개발자에게 유용한 다양한 기능과 함께 용도에 따라 간편한 설치가 가능한 점은 매력적으로 보입니다. 버전 1.0이 2003년에 공개되었으니 12년이 넘게 이어져온 프로젝트의 역사는 나름의 안정성도 보..
자주 사용하지는 않지만 가끔 파일의 내용을 전용 뷰어나 에디터가 아닌 파일이 저장된 상태 그대로 확인하고 싶을 때가 있습니다. 특히 텍스트 파일이 아닌 바이너리 파일을 다루는 프로그램을 작성하는 경우 프로그래밍 과정에서 파일의 내용이 의도대로 작성되었는지 확인하는 것은 매우 중요합니다. 그렇지만 바이너리 파일의 경우 해당하는 전용 뷰어나 에디터로 내용 확인이 가능하기는 하지만 원천적인 정보를 볼 수 있는 것이 아니므로 저장된 형태 그대로 볼 수 있는 도구가 필요합니다. 이런 필요를 채워주는 것을 헥사(Hex) 뷰어 또는 헥사 에디터등으로 부르는데 이런 도구들은 파일의 내용을 16진수 형태로 덤프(Dump)해서 사람이 직접 확인할 수 있는 문자 코드에 제한 없이 내용을 확인할 수 있도록 해줍니다. 위의 그..