'분류 전체보기'에 해당되는 글 189건

  1. 2009.03.19 Midnight Peach 2.0 샘플 애플리케이션, 웹 애플리케이션 (1/2) 1
  2. 2009.03.19 ASP.NET GridView를 사용하는 효율적인 서버 사이드 페이징
  3. 2009.03.18 Midnight Peach 2.0 샘플 애플리케이션, 솔루션의 생성과 DBML 파일의 생성
  4. 2009.03.18 팝업 킬러와 MSTest(비주얼 스튜디오 단위 테스트)의 버그
  5. 2009.03.18 팝업 킬러와 DXperience 평가판을 편리하게 사용하는 팁 1
  6. 2009.03.17 WPF, 저수준 키보드 후킹 예제
  7. 2009.03.17 Midnight Peach 2
  8. 2009.03.12 무료 ASP.NET MVC 이북
  9. 2009.03.12 이벤트 코드 생성기 1.3 업데이트
  10. 2009.03.11 한글 로마자 변환기 1

Midnight Peach 2.0 샘플 애플리케이션, 웹 애플리케이션 (1/2)

Midnight Peach 2009. 3. 19. 12:15

[주의]
이 글은 MP의 현재 버전 (3.X)에 맞지 않습니다.

단순 참고용으로만 활용하십시오

이번 시간에는 메모패드의 프론트 엔드인 웹 애플리케이션을 만들어보겠습니다.

전체적인 모습은 다음과 같습니다.

비지니스 레이어 생성

먼저 앞 시간에 만든 솔루션에 Memopad.Web이라는 웹 애플리케이션 프로젝트를 추가하고, 생성된 웹 애플리케이션 프로젝트의 참조에 Memopad.Biz 프로젝트를 추가합니다.

이제 MP가 나서서 비지니스 레이어 코드를 만들 차례입니다.

MP를 실행시키고 비지니스 레이어 생성 버튼을 누릅니다.

Memopad.Biz를 빌드하여 생긴 DLL을 선택하고 확인을 누릅니다.

(내장 패키지와 커스텀 패키지를 선택할 수도 있으나 현재로서는 Default라는 내장 패키지 만이 제공되고 있으므로 기본값 그대로 선택하면 됩니다.)

MP가 코드를 생성할 테이블과 뷰를 지정합니다.

기본값은 모든 테이블과 뷰에 대해 코드를 생성하는 것입니다.

확인을 눌러 다음으로 넘어갑니다.

DBML을 변경해야 한다는 안내가 나타났습니다.

LINQ to SQL는 모든 값 저장 방식과 버전 번호 방식이라는 두 가지 동시성 검사 방법을 지원합니다.

MP에서는 현재 버전 번호 방식만 지원하니다.

따라서 모든 테이블은 IsVersion 속성이 지정된 컬럼을 가져야 하며, 그렇지 않은 경우에는 모든 컬럼의 UpdateCheck 속성이 “Never”로 설정되어야 합니다.

위 안내 메시지는 이 규칙을 위반한 테이블의 목록을 보여주며, 자동으로 이 규칙을 적용하는 방법을 제공합니다.

메모패드의 테이블들은 버전 번호 컬럼이 없으니까 모든 컬럼의 UpdateCheck 속성을 “Never”로 변경하는 방법을 사용하겠습니다.

화면 하단의 변경 버튼을 누르면 변경할 dbml 파일을 선택하는 대화 상자가 나타납니다.

dbml 파일을 선택하면 dbml 파일이 수정되어, 버전 번호 컬럼이 없는 모든 테이블의 컬럼의 UpdateCheck 속성이 “Never”로 변경됩니다.

여기서 주의할 점이 있습니다.

dbml 파일이 변경되면 반드시 비주얼 스튜디오에서 dbml 파일을 열어 저장을 해주어야 한다는 것입니다.

저장을 하지 않으면 Memopad.designer.cs 파일이 새로 생성되지 않아 dbml의 변경 내용이 반영되지 않습니다.

(참고로 Memopad.designer.cs은 Memopad.dbml을 입력값으로 하여 sqlmetal.exe 툴이 생성한 코드입니다.)

이제 비지니스 코드 생성의 3단계인 설정화면이 나타났습니다.

네임 스페이스 등의 변수 값을 수정하거나 템플릿을 통해 생성될 파일의 저장위치를 변경할 수 있긴 한데, 일반적인 경우에는 기본값을 그대로 사용하는 것이 무난할 것입니다.

다만 연결 문자열과 컬렉션 타입은 눈여겨 볼 만 합니다.

연결 문자열의 값은 DB 연결 문자열을 말하는데, “server=xxx.xxx.xxx.xxx; database=Memopad;….” 하는 식으로 직접 연결 문자열을 지정할 수도 있고, 기본값처럼 구성 파일(app.config / web.config)의 연결 문자열 설정을 사용하겠다고 지정할 수도 있습니다. (기본값)

기본값으로 연결 문자열의 이름이 솔루션의 이름과 동일한 “Memopad”로 설정되어 있는 것을 기억하시기 바랍니다.

또 한가지 흥미로운 변수는 컬렉션 타입니다.

기본값으로는 아마도 가장 보편적인 컬렉션일 List<T>를 사용하는 것으로 되어 있는데, 경우에 따라서는 BindingList<T> 같은 컬렉션을 사용하도록 설정할 수도 있습니다.

물론 모든 컬렉션을 다 사용할 수 있는 것은 아니고 Add(T item) 이라는 메서드를 구현하고 있는 컬렉션만 사용 가능합니다.

확인을 누르면 이제 비지니스 코드가 생성되고 화면에 표시됩니다.

화면의 가운데에는 템플릿과 엔터티의 목록이 계층 구조로 표시되고, 오른쪽에는 해당 템플릿과 엔터티로 생성된 코드가 표시됩니다.

템플릿은 데이터베이스 범위(1)와 (뷰를 포함한) 테이블 범위(2)로 구분됩니다.

또한 생성된 코드는 파일 단위로 특정 위치에(3) 저장(4) 할 수 있으며 클립보드로 복사(5)할 수도 있습니다.

하지만 생성된 코드를 저장하는 편리한 방법은 화면 왼쪽에 있는 저장 항목(6)을 클릭하는 것입니다.

여기서는 이전 포스트에서 생성한 솔루션을 지정하도록 하겠습니다.

윈도우 탐색기에서 보면 생성된 파일들을 볼 수 있는데, 이를 모두 비주얼 스튜디오에 추가하도록 합시다.

탐색기에서 비주얼 스튜디오 솔루션 탐색기로 파일을 끌어다 놓아도 되고, 비주얼 스튜디오에서 “기존 항목 추가” 컨텍스트 메뉴를 사용하는 방법도 있지만, 가장 편리한 방법은 “프로젝트에 포함” 컨텍스트 메뉴를 사용하는 것일 것입니다.

먼저 솔루션 탐색기에서 모든 파일 보기 명령을 활성화 시킵니다.

이제 폴더에는 있으나 프로젝트에는 포함되지 않은 파일이 화면에 표시됩니다.

(혹시 파일이 보이지 않으면 솔루션을 닫았다 다시 여시기 바랍니다.)

포함되지 않은 파일들을 선택한 후 컨텍스트 메뉴에서 “프로젝트에 포함”을 선택하여 프로젝트에 추가합니다.

여기까지 해서 비지니스 레이어가 만들어 졌습니다.

비지니스 레이어를 사용하여 웹 애플리케이션을 만드는 과정은 다음 포스트에서 이어서 다루도록 하겠습니다.

:

ASP.NET GridView를 사용하는 효율적인 서버 사이드 페이징

RTFM/ASP.NET 2009. 3. 19. 12:14

http://www.dotnetcurry.com/ShowArticle.aspx?ID=267&AspxAutoDetectCookieSupport=1

 

ObjectDataSource 와 GridView 를 사용하여 서버 사이드 페이징을 구현하는 방법에 관해서 설명합니다.

ObjectDataSource 에 내장된 페이징 기능을 이용하기 때문에 GridView 뿐만 아니라 ListView + DataPager 조합에도 적용될 수 있습니다.

ObjectDataSource 와 ListView 와 DataPager 를 함께 사용하여 서버 사이드 페이징을 구현하는 방법에 관해서는 Midnight Peach 웹 샘플 애플리케이션을 참조하시기 바랍니다.

:

Midnight Peach 2.0 샘플 애플리케이션, 솔루션의 생성과 DBML 파일의 생성

Midnight Peach 2009. 3. 18. 14:31

[주의]
이 글은 MP의 현재 버전 (3.X)에 맞지 않습니다.

단순 참고용으로만 활용하십시오

오늘부터 몇 회에 걸쳐 Midnight Peach 2.0을 사용하는 샘플 애플리케이션을 만들어보도록 하겠습니다.

이를 통해 Midnight Peach를 활용하면 개발 방법이 어떻게 바뀌는지, 또 그로 인해 얻게 되는 득과 실은 무엇인지에 대해 감을 잡을 수 있기를 기대합니다.


‘메모패드’ 라는 단순한 애플리케이션을 만들어 볼 것인데, 그 전에 이 ‘단순한’ 이란 형용사 대한 제 고민을 고백해야겠습니다.

한 때 C로 작성된 Hello world의 여러 가지 버전이 유행한 적이 있습니다.

(리치의 책에 등장하는) 오리지널 한 줄 짜리 버전 부터 시작해서 점점 복잡하고 정교한 버전으로 변화해 가는데, 그 중에는 C에서 유사 클래스(함수 포인터를 가진 구조체)를 구현한 버전이 있나 하면, Hello World를 출력하기 위한 프레임웍을 구축한 것으로 (제가 보기에는) 짐작되는 버전도 있었습니다.

Midnight Peach의 샘플 애플리케이션을 만드려니 뜬금없이 그 이야기가 생각이 납니다.

샘플이 너무 단순하여 필드에서의 요구사항들(보안, 확장성, 성능 등)을 생략하면 샘플의 유용성이 떨어질 것이고, 필드에서 개발하는 수준으로 샘플을 만들면 원래 샘플이 보여주려고 했던 핵심이 가리워질 것입니다.

대부분의 문제가 그렇듯이 이 문제 역시 취사선택의 문제인 듯 합니다.

메모패드는 샘플이 원래 보여줄려고 한 부분, 즉 Midnight Peach를 프레임웍 한 개발 방법을 보여주는 것에 주안을 두도록 하겠습니다.

굳이 이 이야기를 미리 말씀드리는 이유는, Midnight Peach를 필드에서 사용하실 때 메모패드를 기준으로 삼는 우를 범하지 마시라는 노파심에서였습니다.


메모패드는 아래 그림에서 보듯이 일종의 방명록 입니다.

사용자가 메모를 남기는 웹과 관리자가 메모들 관리하는 관리자 툴로 이루어져 있습니다.

아래 스샷은 각각 웹과 관리자 툴의 모습입니다.

데이터베이스의 스키마는 아주 간단한데, 메모와 카테고리라는 두 개의 테이블로 이루어져 있습니다.


아래 .sql 파일을 실행하여 데이터베이스를 생성한 후 본격적으로 샘플 애플리케이션을 만들어 보도록 하겠습니다.

Memopad.sql


Midnight Peach 2.0에는 전용 비주얼 스튜디오 솔루션을 생성하는 기능이 있습니다.

Midnight Peach를 실행한 후 솔루션 생성 버튼을 눌러 비주얼 스튜디오용 솔루션을 생성합니다.

솔루션 명과 솔루션이 생성될 디렉토리를 지정합니다.

확인을 누르면 아래와 같은 질문이 나타납니다.

Yes를 눌러 바로 솔루션을 열거나, No를 눌러고 비주얼 스튜디오를 실행시켜 방금 만든 솔루션을 엽니다.

생성된 솔루션의 구조를 살펴봅시다.

비지니스 레이어(Memopad.Biz)와 그 단위 테스트(Memopad.BizTest), WCF 서비스(Memopad.Service), 서비스 레이어(Memopad.ServiceBiz)에 해당하는 프로젝트가 각각 생성되었습니다.

또한 각 프로젝트에 필요한 참조도 추가되었는데(예를 들어 비지니스 레이어 단위 테스트 프로젝트는 비지니스 레이어 프로젝트가 필요합니다.), 이에는 MP가 생성한 프로젝트 뿐 아니라 System.Conmfiguration.dll과 같은 시스템 어셈블리도 포함됩니다.

붉은 색으로 표시된 부분은 추가된 폴더 혹은 프로젝트 아이템인데, MP가 생성하거나 사용자가 작성한 코드가 들어가게 됩니다.


이제 DBML 파일을 작성할 차례입니다.

Memopad.Biz 프로젝트의 Memopad.dbml 파일을 엽니다.

속성 창을 보면 Serialization Mode 속성이 기본값이 None이 아닌 Unidirectional로 지정되어 있는 걸 볼 수 있습니다.

이는 WCF 서비스를 통해 엔터티를 전송할 때 필요한 설정인데 WCF를 사용하지 않는다면 기본값 그대로 두어도 무방합니다.

자세한 내용은 MSDN을 참조하십시오.

서버 탐색기에서 Memo와 Category 테이블, 그리고 MemoView 뷰를 디자이너 화면으로 끌어옵니다.

그럼 디자이너의 화면은 다음과 같습니다.

솔루션을 빌드하여 무사히 빌드가 되는지 확인합니다.


여기까지가 본격적인 코딩을 위한 위밍업이었습니다.

다음 포스트 부터는 LINQ를 비롯해 다소 복잡한 코드가 등장합니다.

맛있는 담배를 한 대 하면서 머리를 잠시 식힌 후 또 달리도록 합시다.

:

팝업 킬러와 MSTest(비주얼 스튜디오 단위 테스트)의 버그

Dev Tools/팝업 킬러 2009. 3. 18. 02:02

WCF 프로젝트가 포함된 솔루션에서 MSTest 프로젝트를 디버깅하면 비주얼 스튜디오가 먹통이 되는 문제가 있습니다.

한참 코드삼매경에 빠져 있는데, 육중한 비주얼 스튜디오 프로세스를 강제로 죽이고 다시 실행시켜 작업하던 코드를 로딩해야 하면 짜증이 이만 저만이 아닙니다.

제가 사용하는 네 대의 컴에서 모두 같은 문제가 발생하는 걸로 봐서는 비주얼 스튜디오의 버그인 것으로 추정이 됩니다.

구글에서 찾아보니 저와 같은 문제가 포럼에 몇 번 올라온 적이 있습니다.

그 중 한 개발자에게서 얻은 정보인데, 이 버그로 비주얼 스튜디오가 뻗어다고 하더라도 비주얼 스튜디오를 다시 실행할 필요는 없다는 것을 알았습니다.

VSTestHost.exe 라는 프로세스만 종료하면 된다는군요.

image

비주얼 스튜디오의 버그가 근본적으로 해결된 것은 아니지만, 비주얼 스튜디오를 다시 껐다 켰다 하는 수고에 비하면 훨씬 편해졌습니다.

하지만 시간이 좀 지나자 Ctrl + Alt + Delete를 누르고 작업 관리자에서 프로세스를 찾고 종료시키는 이 짓도 귀찮아졌습니다.

그래서 이런 작업을 단축키 한 방으로 해결할 수 있는 기능을 팝업 킬러에 추가해보았습니다.

 

사용방법은 언제나처럼 간단합니다. (라고 일단 저는 말합니다.)

팝업 킬러에서 옵션 창을 열고, 죽일 프로세스들의 이름과 단축키를 설정해 두면 됩니다.

image

image

이후부터는 위에서 지정한 단축키가 눌러지면 해당 프로세스가 즉시 종료되게 됩니다.

(주의 : 프로세스 이름에 확장자가 포함되면 안됩니다. 예를 들어 notepad.exe 가 아니라 notepad 라고 입력하여야 합니다.)

물론 팝업 킬러가 활성화되어 있지 않더라도 동작합니다.

저수준 키보드 후킹에 관해서는 WPF, 저수준 키보드 후킹 예제을 참조하십시오.

:

팝업 킬러와 DXperience 평가판을 편리하게 사용하는 팁

Dev Tools/팝업 킬러 2009. 3. 18. 01:57

DXperience와 같은 써드 파티 라이브러리의 평가판을 사용하다 보면, 아래와 같이 평가판임을 알리는 팝업이 뜨는 경우가 있습니다.

image

일일히 창을 닫아 주는 것이 번거로와 툴을 하나 만들고 이름을 팝업 킬러라고 붙여 보았습니다.

image

팝업 킬러의 로직은 간단합니다. 일정 주기 마다 닫을 팝업이 있나 검사하고(폴링) 발견되면 팝업을 닫습니다.

팝업을 검사하는 로직은 몇 가지가 있을 수 있겠으나, 팝업 킬러는 단순히 팝업 윈도우의 캡션을 비교하여 팝업을 인식합니다.

(위의 첫번째 스샷의 윈도우 캡션이 Information 인데, 두번째 스샷을 보시면 이를 닫기 위해 팝업 캡션에 Information 을 지정하고 있음을 알 수 있습니다.)

두 개 이상의 팝업도 동시에 감시할 수 있는데, 아래 그림과 같이 감시할 팝업 윈도우의 캡션을 줄을 바꿔 주욱 적으면 됩니다.

image

설치는 秀作 론처의 론칭을 참조하십시오.

:

WPF, 저수준 키보드 후킹 예제

RTFM/Winform 2009. 3. 17. 16:53

http://blogs.vertigo.com/personal/ralph/Blog/archive/2007/02/12/wpf-low-level-keyboard-hook-sample.aspx

 

SetWindowsHookEx Win32 API를 사용하여 저수준 키보드 후킹을 구현하는 방법입니다.

여기서 ‘저수준 후킹’이란, 키보드 이벤트 핸들러가 구현된 닷넷 애플리케이션이 활성화되지 않은 상태이더라도 키보드 이벤트를 발생시킬 수 있다는 의미가 되겠습니다.

Popup Killer 에서 단축 키를 눌러 특정 프로세스를 죽일 때 이 코드를 사용합니다.

제목에는 WPF라고 되어 있지만 윈폼 애플리케이션에도 적용이 가능한 코드입니다.

:

Midnight Peach 2

Midnight Peach 2009. 3. 17. 13:36

[주의]
이 글은 MP의 현재 버전 (3.X)에 맞지 않습니다.

단순 참고용으로만 활용하십시오

Midnight Peach가 2.0으로 메이저 업그레이드 됐습니다.

수 십 개의 버그 수정과 더불어 소소한 변화가 있었지만, 2.0 버전의 주요 목표는 WCF 서비스 코드를 생성하는 것이었습니다.

이번 버전에서는 WCF 서비스 코드를 생성하고 사용하기 위해 아래와 같은 세 가지 기능이 준비되어 있습니다.

  • WCF 서비스 생성
  • WCF 서비스 호출 래퍼 생성
  • 비동기 호출 래퍼 생성

또한 Midnight Peach를 프레임웍으로 사용하도록 미리 설정된 비주얼 스튜디오 솔루션을 생성하는 기능도 추가되었습니다.

버튼 클릭 한 번 만으로 잘 구조화된 솔루션을 생성해내는 이 기능을 이용하면 개발을 좀 더 빨리 시작할 수 있습니다.

각각의 기능에 대해서는 이어질 별개의 포스트에서 다루도록 하겠습니다.

 

배포 준비는 다 됐는데 라이센스와 배포 방법을 아직 결정하지 못하였습니다.

결정되는대로 블로그를 통해 알려드리도록 하겠습니다.

혹시 공식적인 배포를 통하지 않고 미리 야매로 써보고 싶으신 분은 살짝 연락(댓글)을 줘보십시오.

:

무료 ASP.NET MVC 이북

RTFM/ASP.NET 2009. 3. 12. 16:38

http://weblogs.asp.net/scottgu/archive/2009/03/10/free-asp-net-mvc-ebook-tutorial.aspx

 

 

Scott Hanselman과 Rob Conery와 Phil Haack가 공저한 Professional ASP.NET MVC 1.0 책이 곧 발매된다고 합니다.

특이할 만한 사항은 Scott Guthrie가 이 책의 첫 장을 썼는데, 출판사인 Wrox와 계약하기를 원고료를 받지 않는 대신 원고를 무료로 배포하기로 하였다고 합니다.

그래서 엄밀히 말하면 무료 이북이 아니라 이북의 한 장(chapter)가 공개된 것이지만, 그 분량이 무료 185페이지에 이르므로 작은 책이라고 해도 무리가 없겠습니다.

공개된 장의 내용은 Nerddinner라는 ASP.NET MVC 샘플 애플리케이션을 처음부터 단계적으로 만들어가는 과정을 담고 있습니다.

ASP.NET MVC를 공부하는 분에게 강추!!

:

이벤트 코드 생성기 1.3 업데이트

Dev Tools/이벤트 코드 생성기 2009. 3. 12. 01:15

이벤트 코드 생성기의 버전이 1.3으로 올라갔습니다.

image

  • UI를 Devexpress Winform Controls 기반으로 변경하였습니다.
  • C# 3.0 템플릿의 버그 (자동 속성 생성 부분)를 수정하였습니다.

업데이트와 실행방법은 秀作 론처의 론칭를 참조하시기 바랍니다.

:

한글 로마자 변환기

Dev Tools/한글 로마자 변환기 2009. 3. 11. 17:37

image

뭐하는 툴입니까?

한국 개발자를 위한, ‘국어의 로마자 표기법’에 따라 한글을 로마자로 변환하는 툴입니다.

 

‘한국 개발자를 위한’이라는 게 어떤 의미입니까?

법무용 솔루션을 개발하는 상황을 생각해봅시다. ‘조서’니 ‘불변기일’ 하는 전문용어들이 있는데, 이를 클래스나 필드로 표현하려면 이름을 어떻게 지어야 할까요?

대략 세 가지 방법이 있는 것 같습니다.

  1. ‘조서’나 ‘불변기일’에 해당하는 영문명을 사용한다.
  2. 한글명을 그대로 클래스나 필드의 이름(즉 identifier)로 사용한다.
  3. 한글명을 로마자 표기법에 로마자(영문)로 표기한다.

각 방법마다 장단이 있으며 개발자마다 선호하는 방법이 있을텐데, 저 같은 경우는 이때까지는 1번 방법을 사용해왔으나 요새는 3번 방법 쪽으로 마음이 많이 기울고 있습니다.

1번의 단점은, 영어에 아주 익숙하지 않은 이상 복잡한 전문용어를 영어로 옮기기 위해서는 상당한 비용이 소모된다는 것입니다. 한영사전을 뒤적여 서너 단어를 조합해서 하나의 식별자를 만들었다고 해도, 이를 다른 개발자가 이해하기는 쉬운 일이 아닙니다. 따라서 이 경우에는 프로젝트 전반에 걸쳐 표준적인 ‘한영 대조표’를 관리해야 할 필요가 있습니다.

2번의 경우에는 전문용어를 변환할 필요가 없으니 개발자 간의 의사 소통이 가장 명확하다는 장점은 있으나, A)C#이나 자바와 같이 유니코드를 지원하는 언어에서만 사용 가능하고, B)비주얼 스튜디오 같은 IDE에서 자동 완성 기능이 매우 불편합니다. 또한 C)습관의 문제일 수도 있지만, 메서드와 필드의 이름이 한글로 되어 있으면 코드에 대한 가독성이 저하될 수도 있습니다.

3번의 단점은, 뭐랄까, 너무 없어 보인다는 것입니다. 영어도 아니고 한글도 아니고 한글을 영어로 표기하는 게 우스꽝스럽긴 하지만, 실용적인 관점에서는 무난한 해결책이 아닐까 싶습니다. 또 한가지 국어의 로마자 표기에 대한 표준이 확립되어 있음에도 불구하고 잘 지켜지지 않아, 같은 한글 용어가 개발자에 따라 조금씩 다른게 영문으로 표기될 수가 있다는 점도 들 수 있습니다.

 

이 툴은 표준 국어의 로마자 표기법에 따라 한글용어를 로마자(영문)로 변환하는 일을 합니다. 따라서 프로젝트 전반에 걸쳐 통일된 로마자 표기법을 제공하는 것을 목표로 하고 있습니다.

 

이 툴이 정말 로마자 변환을 완벽하게 할 수 있습니까?

그렇지는 않습니다. 한글의 특성 상 한글은 로마자와 1:1로 매칭되지 않습니다. 그래서 국어의 로마자 표기법에도 자음동화, 구개음화, 경음화 등에 의한 많은 예외 상황들이 있습니다.

이 툴이 변환해 낸 로마자는 완벽하지 않으며 사람의 수정이 필요할 수도 있습니다.

 

사용방벙을 알려주세요.

간단합니다.

image

에서 변환할 한글을 입력한 후

image

버튼을 누르면

image

에 변환된 로마자가 표기됩니다.

 

최근 목록이란 무엇입니까?

image

최근에 변환한 용어를 다시 사용하고 싶을 때 유용하게 사용할 수 있는 기능입니다.

목록에서 용어를 선택한 후 복사 버튼을 누르면 변환된 로마자가 클립보드로 복사됩니다.

최근에 변환된 로마자가 100개 까지 보관이 되며 100개가 넘으면 오래된 목록부터 하나씩 밀려납니다. 또한 프로그램을 종료하더라도 목록을 보존됩니다.

 

왼편에 있는 옵션에 대해서 설명해주세요.

image

케이싱은 로마자의 대소문자를 지정하는 옵션입니다.

현재는 다섯 가지의 케이싱 방법을 제공합니다.

괄호로 둘러쌓인 부분은 각 케이싱을 사용하여 ‘김과장’을 변환하는 경우의 예입니다.

 

image

패딩은 한글 음절 사이에 삽입하는 기호를 말합니다.

빈 칸(스페이스)을 지정할 수 있습니다.

 

image

변환 버튼을 누르면 변환된 로마자를 A)클립보드로 복사하거나, B)최근 목록에 추가하도록 설정하는 옵션입니다.

 

유니코드에 정의된 한글은 만 개가 넘는데 이 툴에서 그 모든 한글을 다 변환할 수 있나요?

그렇지는 않습니다. 이 툴에서 사용하는 기본 데이터는 http://taeyo.net/PDS/Content.aspx?SEQ=3092&TBL=UPLOAD를 기본으로 하고 있습니다.

데이터에 없는 한글을 변환하려고 하면  아래와 같이 한글에 해당하는 로마자를 추가할 수 있는 대화상자가 열립니다.

image

한번 추가된 한글은 파일로 저장되어 이후부터는 추가할 필요가 없습니다.

 

한 번에 한 단어씩만 변환이 되나요?

그렇지는 않습니다.

여러 단어를 한번에 변환하려면 아래 그림과 같이 줄바꿈 문자로 구분하여 입력하면 됩니다.

image

이때 케이싱은 줄 단위로 적용이 됩니다.

 

설치는 어떻게 합니까?

설치와 배포(자동 업데이트)는 수작 론처를 통해서 가능합니다.

 

비스타에서도 잘 됩니까?

비스타가 없어 테스트를 해보지는 않았지만, 파일의 퍼미션 때문에 문제가 될 수는 있을 것 같습니다.

만일 문제가 있으면 수작 론처가 실행된 디렉토리(예컨데 C:\Program Files\Sujak)의 퍼미션을 수정하면 되는데, 자세한 사항은 비스타에서 秀作 론처가 실행되지 않는 문제를 참조하시기 바랍니다.

혹시 소스도 제공하나요?

가치가 있는지는 모르겠지만 아래에서 받으실 수 있습니다.

 

소스를 받았는데 실행이 안되는데요.

비주얼 스튜디오 2008과 DevExpress Winform Contols의 무료 버전이 필요합니다.

 

사용 중 너무 짜증이 나서 개발자에게 저주를 하고 싶으면 어떻게 하면 됩니까?

반사!

: