2010년 5월 11일 화요일

티스토리로 이사갑니다.

텍스트큐브가 블로거 닷컴에 흡수된다는 공지를 보고

블로거 닷컴에 아이디를 만들어서 슬쩍 둘러봤습니다.

글 분류 기능이 없어서 도저히 저는 못 쓸 것 같더군요

 

같은 태터툴즈 기반의 티스토리로 이사를 완료했습니다.

아직 글이 많지 않아서 백업 및 복구가 간단하게 되더군요

 

앞으로는 티스토리로 찾아와주세요

 

http://techdic.tistory.com

 

2010년 4월 12일 월요일

파워포인트 2007 창 두개 이상 띄우기

파워포인트 2007로 문서작업 하다보면 항상 창 하나에 여러 문서가 열려서

듀얼 모니터로 작업을 할 수 없었습니다.

 

예전에는 검색해도 해결책을 찾을 수 없었는데 최근에 검색해보니

해결책이 나와있더군요.

 

UltraEdit 등의 Hex 에디트 가능한 에디터로 DLL 수정하기

http://db.ipocs.com/board/32436

 

주된 내용은 오피스가 설치된 폴더의 PPCORE.DLL 파일을 수정하면 된다는 것입니다.

Hex 편집모드에서 38 1D 를 검색해서 처음 나오는 문자열을 88 1D 로 수정하면 됩니다.

 

수정하기 귀찮은 분들은 아래 링크에서 수정된 DLL 파일을 다운받을 수 있습니다.

 

http://drkein.tistory.com/118

 

C:/Program Files/Microsoft Office/Office12 폴더에 복사해넣으면 됩니다.

 

참고로 오피스 2007에서 확인한 내용입니다.

다른 버전의 오피스에서는 될지 안될지 모르겠네요.

2010년 3월 30일 화요일

FileZilla 서버 한글 인코딩 문제

FileZilla 서버를 사용하는 서버에 알FTP 등의 클라이언트로 접속하면

한글로 된 폴더의 이름이 전부 깨지는 현상이 발생합니다.

 

FileZilla는 문자열을 UTF-8로 인코딩하는 반면,
다른 클라이언트들은 euk-kr 인코딩을 사용하고 있기 때문입니다.

 

파일질라 서버에서 문자열 인코딩을 바꿀 수 있으면 좋은데 그게 가능하지 않네요

그러나 다행이 이 문제를 해결하기 위한 패치 프로젝트가 소스포지에 있습니다.

 

http://sourceforge.net/projects/filezillapv

 

서버 버전에 따라 맞는 패치를 받아 설치하면 됩니다.

2010년 3월 29일 월요일

c++ 코드에서 폴더 생성하기

C 라이브러리를 사용하여 폴더를 생성하려면 다음과 같이 하면 됩니다.

 

[code cpp]
#include <direct.h>

_mkdir("폴더이름"); // Multi-byte 버전
_wmkdir(L"폴더이름"); // Unicode 버전
[/code]

 

win32 라이브러리를 사용하면 다음과 같이 폴더를 생성할 수 있습니다.

 

[code cpp]
::CreateDirectory(_T("폴더이름"), NULL);
[/code]

 

boost 라이브러리를 사용하면 다음과 같이 폴더를 생성할 수 있습니다.

 

[code cpp]
#include <boost/filesystem.hpp>

boost::filesystem::create_directory("폴더이름");
[/code]

 

2010년 3월 27일 토요일

안드로이드 어플리케이션 화면 크기 얻기

안드로이드 어플리케이션에서 화면 크기를 얻는 방법은 다음과 같습니다.

 

[code java] DisplayMetrics displayMetrics = new DisplayMetrics(); WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); wm.getDefaultDisplay().getMetrics(displayMetrics); int width = displayMetrics.widthPixels; int height = displayMetrics.heightPixels; [/code]

 

여기서 context 는 Activity 등에서 얻어온 Context 객체를 의미합니다.

다른 간편한 방법이 있다면 추후에 수정해서 올리도록 하겠습니다.

2010년 3월 26일 금요일

안드로이드 어플리케이션 화면 방향 고정하기

안드로이드 어플리케이션은 기본적으로 폰의 센서에 따라

화면이 가로/세로 방향으로 자동으로 변환됩니다.

그런데 어프리케이션을 개발하다보면 한쪽 방향으로 고정하고 싶을 때가 있습니다.

 

그런 경우 AndroidManifext.xml 파일 안에 방향을 고정하고 싶은 Acitvity에 대한 <activity> 태그 안에 다음과 같은 속성을 추가하면 됩니다.

 

  1. 세로방향으로 고정

    android:screenOrientation="protrait"

  2. 가로방향으로 고정

    android:screenOrientation="landscape"

 

2010년 3월 18일 목요일

서해꽃게장

대전에서 동학사를 지나 공주 가는 길에 마티터널 지나 바로 있는 집인데

메뉴는 게장정식 딱 하나 있습니다. 가격은 일인분에 2만원입니다.

게장이 짜지 않아 좋더군요. 밑반찬도 대략 20~30가지 정도 나오는데

전부 다른 나물이더군요. 반찬도 깔끔하고 맛이 좋았습니다.

 

먹는데 바빠서 사진으로 남은 건 흔들린 게장 사진 한장이네요 ㅋ

역시 게장정식인 만큼 가격이 비싸 자주 가지는 못할 듯 합니다.

 

지도에서 위치보기

 

MFC 프로젝트에서 소켓 사용하기

MFC에서 소켓을 사용하기 위해서는 프로젝트 생성할 때

Windows Socket을 사용하는 옵션에 체크를 해주면 되지만,

일반적으로 MFC 프로젝트를 생성하여 프로그램을 작성하다가

추후에 소켓을 추가하고자 하면 다시 프로젝트 생성하기가 번거롭습니다.

 

프로젝트를 새로 생성하지 않고 윈도우 소켓을 사용하려면 다음과 같이 하면 됩니다.

 

  1. stdafx.h 파일의 맨 마지막에 다음을 추가합니다.

    #include <afxsock.h>

  2. 프로젝트 App 클래스의 InitInstance() 함수의

    CWinApp::InitInstance();

    라인 밑에 다음과 같은 코드를 추가합니다.

    if (!AfxSocketInit()) {
        AfxMessageBox(_T("윈도우 소켓 초기화에 실패햇습니다."));
        return FALSE;
    }

 

2010년 3월 16일 화요일

boost::thread 의 sleep 사용하기

boost 라이브러리의 thread를 사용할 때 sleep을 사용할 일이 자주 생기는데

boost::thread::sleep 함수는 사용하기가 좀 번거롭습니다.

대신 boost::this_thread::sleep 함수를 사용하면 됩니다.

 

[code cpp]boost::this_thread::sleep(boost::posix_time::milliseconds(30));[/code]

 

인자로 사용되는 boost::posix_time::milliseconds 대신 boost::posix_time::seconds 함수 등으로 시간 단위를 지정할 수 있습니다.

2010년 3월 6일 토요일

약수터식당 - 옻닭

대전 IC 근처에 옻닭을 잘 하는 집이 있다고 해서 먹으러 가봤습니다.

대청호 근처에 굽이굽이 산길을 따라 들어가다

과연 식당이 있을까? 하는 곳에 자리잡고 있더군요.

시골 가정집을 개조해서 식당으로 사용하는 것 같은 느낌이었습니다.

 

국물이 깔끔하고 맛이 좋더군요. 직접 담근다는 김치도 매우 맛있었습니다.

닭을 다 먹고 나면 죽을 줍니다. 죽을 옻닭 국물을 섞어서 먹으면 맛나더군요 ㅋ

가격은 3만원 정도였던 것 같습니다. 옻닭은 요리하는데 시간이 걸려서

가기 전에 예약을 해놓고 가야 한다고 합니다.

 

지도에서 위치보기

 

2010년 2월 23일 화요일

산장가든 - 돼지갈비

돼지갈비 맛있게 하는 집이 있다고 해서 찾아가봤습니다.

충남 연기군에 있는 산장가든이란 곳인데 꽤 유명한 곳이라고 하더군요

메뉴는 돼지갈비 하나에 식사류가 전부입니다.

 

일반적으로 양념갈비집에서 파는 맛과는 많이 다른 맛입니다.

갈비가 너무 달지 않아 좋던데, 약간 싱겁다고 느낄수도 있을것 같습니다.

 

동치미 국수에 돼지갈비 시켜서 먹으면 맛있습니다. ㅎㅎ

동치미 국수는 역시 먹느라 정신팔려서 갈비 사진만 남았군요. ㅋㅋ

 

가격은 돼지갈비가 1인분에 9천원, 동치미 국수가 3천원이었습니다.

 

ps. 대전에서 가기 좀 멀다는 것이 단점입니다.

 

지도에서 위치보기

 

 

 

2010년 2월 18일 목요일

ODROID

안드로이드 어플리케이션을 개발하고 테스트할 수 있는 개발기기를 하나 구매했습니다.

국내 업체에서 제작한 ODROID라는 제품으로 하드웨어 스펙도 꽤 좋고

3월 초에 안드로이드 2.1 버전으로 업데이트 해준다고 해서 개발할때 도움이 될 듯 합니다.

 

단 실제 전화기와 달리 3G 통신 모듈과 GPS, 카메라 모듈이 없기 때문에

위 모듈 관련 어플을 개발하려고 할 때에는 안드로이드 마켓에 등록하면 구매할 수 있는

개발 폰을 구매하는게 더 나을 듯 합니다.

 

실제 개발하던 프로그램을 올려보니 에뮬레이터로 보는 것과는 또 다르고, 에뮬레이터에서 확인할 수 없던 버그들을 발견해서 고칠 수 있었습니다.

 

단 볼륨 업/다운 버튼이 터치식으로 되어있는데 너무 민감하게 반응하고, 잠궈놓아도 금방 풀리기 때문에 좀 불편한 감이 있습니다. 이 부분은 보완되었으면 좋겠네요..

 

자세한 설명은 http://www.hardkernel.com 에서 확인할 수 있습니다.

 

2010년 1월 31일 일요일

안드로이드 SDK 설치하기

최근 안드로이드 폰에 대한 관심이 좀 생겨서 안드로이드 SDK 를 설치하고 Hello World 프로그램을 실행해 보았습니다. 역시 처음 써보는 플랫폼이라 설정하는데 시간이 좀 걸리네요. 나중에 다시 삽질하기 싫어서 오늘 고생한 내용을 남겨봅니다.

 

안드로이드 SDK를 설치하려면 먼저 자바 SDK와 이클립스 IDE가 필요합니다.

 

자바 SDK는 http://java.sun.com 에서 다운 받을 수 있고

이클립스 IDE는 http://www.eclipse.org 에서 다운 받을 수 있습니다.

 

전 윈도우 7 64비트를 쓰는지라 x64용으로 다운받았습니다.

이클립스는 주로 Eclipse IDE for Java Developers를 설치해서 사용했는데 이건 64비트용 배포본이 없습니다. 64비트 윈도우에서 이클립스를 이용하려면 다운로드 페이지 맨 밑의 Eclipse Classic을 사용해야 합니다.

 

자바 SDK를 먼저 설치한 후 이클립스는 그냥 압축만 풀면 바로 사용할 수 있습니다.

 

설치가 끝났으면 이제 안드로이드 SDK를 다운받습니다. http://developer.android.com/sdk/ 에서 다운받을 수 있습니다. 다운받은 안드로이드 SDK를 원하는 폴더에 압축을 풀어줍니다. Android 공식사이트에는 폴더 안의 SDK Setup.exe 파일을 실행하면 설치가 진행된다고 하는데 64비트 윈도우라서인지 아무 반응이 없습니다. 다행이 다른 경로로 설치할 수 있습니다.

 

이클립스를 실행하고

Help > Install New Software 를 클릭하여 소프트웨어 설치를 실행합니다. 주소 창에 https://dl-ssl.google.com/android/eclipse 를 입력하고 Add 버튼을 누릅니다.

 

 

OK를 누르면 사이트가 추가되고 Work with 옆의 주소 창의 드롭다운을 내려보면 Android SDK를 선택할 수 있습니다. 선택하면 아래에 다운로드 가능한 패키지가 나타납니다. Developer Tools 를 선택하여 두 패키지를 설치합니다.

 

 

설치가 끝나고 나면 안드로이드 SDK 위치를 지정해주어야 합니다. 이클립스 메뉴에서 Window > Preference > Android > SDK Location 에서 Browse를 클릭하여 경로를 설정합니다.

 

이제 어플리케이션을 구동해보기 위해서는 가상머신을 하나 올려야 합니다.

Window > Android SDK and AVD Manager 를 클릭하면 안드로이드 관리자를 열 수 있습니다.

 

먼저 안드로이드 플랫폼을 설치해야 합니다. Available Packages를 선택하여 타겟 안드로이드 플랫폼을 선택해서 설치합니다.

 

 

Virtual Devices > New 를 선택하여 가상머신을 하나 추가합니다. 메모리 사이즈나 안드로이드 버전은 적당히 주고 하나 만들면 됩니다.

 

여기까지 안드로이드 프로그램을 구동해보기 위한 모든 준비를 마쳤습니다.

 

윈도우 계정 이름이 한글인 경우 참고하세요

 

글이 많이 길어졌는데 여기까지 설정을 마치면 안드로이드 에뮬레이터가 동작하는 것을 볼 수 있습니다. Window > Android SDK and AVD Manager 에서 가상머신을 선택하고 Start 메뉴를 누르면 다음과 같은 화면을 볼 수 있습니다.

 

 

여기까지 설정하는데 2시간, 글쓰는데 1시간이 더 걸렸군요. -_-;;;

2010년 1월 27일 수요일

유황족

유황족발 맛있게 하는 집이 있대서 지난 토요일에 가봤는데

가는날이 장날이라고 쉬더군요 -_-;;

오늘 다시 한번 가봤습니다.

 

메뉴는 유황족발 앞다리, 뒷다리, 미니족발, 해물파전, 쟁반국수 이렇게 있습니다.

가격은 족발이 7천원 ~ 2만 3천원, 파전하고 국수가 각각 8천원씩입니다.

 

족발 앞다리와 해물파전, 쟁반국수를 먹어봤는데

족발이 정말 맛있더군요. 일반 족발처럼 쫄깃하진 않지만

부들부들한게 보쌈수육과 식감이 비슷합니다.

이 족발하고 쟁반국수를 같이 먹으면 좋겠더군요.

단, 해물파전은 좀 덜익은 감이 있고 그렇게 맛있다는 느낌은 안들더군요.

 

제일 먼저 나온 족발 사진은 찍었는데

다른 메뉴는 먹는데 정신이 팔려서 못찍었네요 ㅋㅋ

 

지도에서 위치보기

 

2010년 1월 19일 화요일

포토샵 격자 간격 조정하기

간혹 그림 파일을 픽셀단위로 작업해야 할 일이 생기는데

이때 포툐샵의 격자 기능을 이용하면 편하게 작업할 수 있습니다.

 

포토샵의 격자는 [보기] > [표시] > [격자] 또는 단축키 Ctrl + ' 키로 표시할 수 있습니다.

 

이때 기본 격자 간격이 25 밀리미터로 되어있는데 픽셀로 작업하기 위해서는 간격을 조정해주어야 합니다. 간격 조정은 [편집] > [환경설정] > [안내선, 격자 및 분할영역] 을 선택하여 수행 할 수 있습니다.

 

 

위 그림에서 빨간색으로 표시된 부분의 단위를 원하는 단위 및 간격으로 바꾸면 됩니다.

2010년 1월 18일 월요일

GM 대우 1년 무료 시승 이벤트

 

 

GM 대우에서 1년 무료 시승 행사를 진행하고 있습니다.

라세티 프리미어 아이덴티티와 마티즈 크리에이티브에 응모할 수 있습니다.

마티즈 크리에이티브에 응모했는데 당첨되면 좋겠군요 ^^

 

행사사이트 바로가기

 

2010년 1월 12일 화요일

애플 USB 키보드 맵핑

랩에서 사용하던 키보드를 청소하다가 좀 이상하게 만들어버려서 새로 키보드를 구매해달라고 했습니다. 이왕 사는 김에 전부터 써보고 싶던 애플 키보드를 주문했습니다.

 

 

디자인은 워낙 훌륭하고, 키감도 꽤 맘에 드는 키감입니다.

키보드가 워낙 얇아서 처음 만졌을 때는 이질감이 들었는데

그것도 좀 쓰다보니 금방 익숙해지는군요

 

그런데 역시 애플 키보드이기 때문에 윈도우에서 쓰기엔 제한점이 있더군요.

알트키와 윈도우키의 배열이 바뀌어 있고, 한/영, 한자 변환 등 일부 기능키들이 없습니다.

키패드쪽도 사칙연산 키 등의 배열이 살짝 다릅니다.

 

여기저기 검색을 해보니 Key Tweak이라는 프로그램을 이용하면 키 맵핑을 변경할수 있다고 하여 프로그램을 설치하고 키 변경을 해 보았습니다

 

KeyTweak 홈페이지 : http://webpages.charter.net/krumsick/

 

제가 바꾼 키는 다음과 같습니다.

왼쪽 alt -> 왼쪽 윈도우키

왼쪽 command -> 왼쪽 alt

오른쪽 command -> 오른쪽 alt

오른쪽 alt -> 오른쪽 윈도우키

F13 -> Print Screen

F14 -> Scroll Lock

F15 -> Play / Pause (어디에 쓰는건지 잘 모르겠지만 그냥 맵핑-_-)

F16 -> 계산기

F17 -> 음소거

F18 -> 소리 줄임

F19 -> 소리 올림

Clear -> Num Lock

 

윈도우 설치시 키보드 타입 1을 쓰시는 경우에는 오른쪽 alt 가 한/영전환, 오른쪽 ctrl 키가 한자변환키로 사용되는데 저는 키보드 타입 3번을 선호하는 편입니다. 이 경우는 따로 한영키가 없고, Shift + Space로 한/영전환, Ctrl + Space로 한자변환을 할 수 있습니다.

 

참고로 제가 테스트한 환경은 윈도우 7 64비트입니다. 검색을 하다보니 윈도우 xp나 비스타에서도 똑같이 적용된다는 것을 확인할 수 있었습니다.

 

안타깝게도 애플 키보드의 fn 키는 맵핑 불가능한 키라서 insert 키는 포기해야 했습니다. 또한 Break / Pause 키도 일반 맵핑으론 키를 할당할 수 없어서 포기했습니다. insert는 별로 안쓰는 키라 아쉬울게 없지만 Break 키는 종종 쓰는 키라서 이 키보드의 가장 아쉬운 부분입니다.

 

저랑 똑같이 설정하고 싶으신 분은 Key Tweak을 설치하실 필요 없이 아래 첨부한 레지스트리 파일을 받아서 병합한 다음, 컴퓨터를 다시시작 해주시면 됩니다.

 

AppleKeyboardForWindows.reg

키 맵핑 변환 레지스트리 파일

 

2010년 1월 5일 화요일

doxygen이란?

doxygen은 프로젝트 문서화를 쉽게 할 수 있도록 도와주는 도구입니다.

 

프로그램을 작성할 때 일정한 형식으로 주석을 달아주면, 그 주석과 프로그램 구조를 토대로 MSDN의 API 문서나 Javadoc의 함수 설명과 유사한 형식으로 전체 프로그램의 문서를 만들어줍니다.

 

C, C++, C#, Java, PHP, Fortran 등의 소스코드들로부터 HTML, CHM, LaTeX(PDF), Man pages, RTF, XML 형식의 문서를 생성할 수 있습니다.

 

앞으로 시간이 날때마다 doxygen 사용법을 조금씩 정리해볼까 합니다.