산에서 만난 청설모

 

며칠전에도 만났는데 내가 가는 산에는 청설모가 많은것 같다.

 

며칠전에 만난 청설모는 거의 산 정상에서 만났는데

이번에 만난 청설모는 그리 높지 않은 위치에서 만났다.

 

여러장 찍었는데 그나마 알아볼수 있게 나온건 이거 한장 뿐이다.

 

 

 

내가 주로 가는 산에 있는 절에는 큰 불상이 있다.

 

사진으로 보기엔 작아보이는데 실제 앞에서 보면 어마어마한 크기다.

 

 

 

10배줌으로 한장 더 찍었다. 가까이 가서 보면 3~4층 건물 높이는 되는거 같다.



MyBell v0.3b - XPERIA용 벨소리 프로그램

 

 

 

 

스마트폰의 장점중에 하나는 벨소리를 마음대로 바꿀수 있다는것입니다.

벨소리는 자주 바꾸고 싶은데 그때마다 녹음 파일이나 mp3 파일을 열어서 특정 구간으로 자르고

편집해서 저장한후에 폰에 옮기고 폰 설정에서 기본 벨소리로 바꿔주는 과정이 너무 귀찮더군요.

그래서 만들게 됐습니다.


이 프로그램은 pc에서 나오는 사운드를 녹음해서

mp3로 인코딩한뒤에 폰으로 전송 시키고

전송된 파일을 기본 벨소리로 바꿔줍니다.


===============

※ 주의 사항 ※

===============

저작권이 있는 음원의 복제는 불법입니다.

이 프로그램 사용시 발생하는 저작권 문제는 사용자의 책임입니다.

=================================

※ 이렇게 사용하시면 안됩니다. ※

=================================

이 프로그램은 아래와 같이 사용하시면 절대 안됩니다.

네이트 폰 꾸미기 같은 사이트에서

1분간 재생되는 벨소리를 미리듣기를 녹음하셔서 폰으로 전송하는

용도로 사용하시면 절대 안됩니다.


================

간단한 사용 설명

================


1. 녹음장치

소리를 가져올 장치를 선택합니다.

일반적으로 PC에서 나는 소리를 녹음 소스로 많이 이용합니다.

* 주 사운드 캡처 드라이버

* 스테레오 믹스

* What u Hear

이런 장치들이 PC에서 나는 소리를 그대로 전달해주는 장치입니다.

본인이 직접 마이크에 대고 녹음 하거나 외부 장치로 부터 들어오는 소리를 녹음하려면

* 라인 입력

장치를 선택하시면 됩니다.

2. MP3 설정

생성될 MP3 파일의 옵션을 설정합니다.

보시면 아실테니 설명은 넘어가겠습니다.

3. 설정

- 전송 후 기본 벨소리로 지정

체크 되어있지 않다면 파일만 전송 합니다.

기본 벨소리 설정은 바뀌지 않으며 바꾸려면 사용자가 직접 폰에서 하셔야 합니다.

- 녹음시 파일이 존재하면 덮어쓰기

파일명에 설정된 이름으로 묻지도 따지지도 않고 그냥 덮어 씁니다.

- 녹음시작 딜레이

녹음 버튼을 누른뒤 몇초 뒤에 녹음을 시작할지 정합니다.

0 은 바로 시작하는것이고 0.5는 버튼을 누른뒤 0.5초 기다렸다가 녹음을 시작합니다.

4. 파일명

저장 할 파일명을 지정해줍니다.

녹음 버튼을 누르기 전에 설정하셔야 합니다.

5. 버튼설정

어떤 버튼들인지는 아실겁니다.

녹음을 눌러서 녹음을 시작하신후 정지버튼을 눌러서 녹음을 멈추고 파일을 저장

합니다.

그다음 파일 전송을 누르시면 파일이 폰으로 전송됩니다.

이때 기본벨소리 지정이 체크되어있다면 전송후 기본 벨소리로 지정합니다.

6. 볼륨

PC의 마스터 볼륨 조절입니다.

PC의 소리를 가져올 경우가 많기때문에 PC의 마스터 볼륨을 조절합니다.


==========

License

==========

이 프로그램은 공개프로그램(freeware)입니다.

회사, 관공서, 학교등 어떤곳에서도 자유롭게 사용하실 수 있으며

부록이나 무료의 형태로 제공될 수 없습니다.

제 홈페이지를 제외한 단체 혹은 기관에서의 재배포는 원칙적으로 금하고 있으며

제작자의 동의 없이 판매 및 상업적 활용 할 수 없습니다.

또한 제작자는 이 프로그램이 사용자의 필요 사항을 만족시킨다거나,

이 프로그램의 작동이 제대로 이루어진다거나,

이 프로그램에 오류가 없음을 보증하지 않습니다.

이 프로그램 사용시에 발생하는 모든 문제에 대해 제작자는 책임을 지지 않습니다.


이 프로그램에 사용된 MP3 라이브러리는 lame(http://lame.sourceforge.net/) 

사용하였으며, 라이선스는 LGPL을 따릅니다.

 

 

프로그램 업데이트 및 관리차원에서

다른곳에 업로드는 금하고 있습니다.

다운로드는 제 홈페이지를 링크 해주시기 바랍니다.

http://www.box.net/shared/6hesi3llx1

--------------------------------------------------------------------------------------------------------
2011-04-04


저작권 문제로 lame_enc.dll 은 포함하지 않고 배포합니다.

아래 검색사이트 다운 받으셔서 프로그램 폴더에 같이 넣어주시면 됩니다.
버전 3.9 이상을 권장합니다.

다음구글네이버

X1 AutoMute

 

 

=============

Change Log
=============

 

v0.2a -> v0.3a

(2009-12-04)

수정은 10월말에 했는데 이제야 업데이트 하네요. ^^;;
1. 프로그램이 종료되지 않게 수정

- 우측상단 X 누를때 종료 안됨, 우측하단 Close 버튼 누를때 종료됨

- 위 기능으로 Task Close 프로그램에서도 종료 안됨

 

2. 시작시 프로그램을 자동으로 숨김

 

v0.1a -> v0.2a
1. 감지 방법 변경

 

 

=======================
X1 AutoMute by KyRanDiA
=======================

프로그램의 라이선스는 license.txt 파일을 참고 바랍니다.

프로그램의 버그신고, 업데이트 : http://kyrandia.textcube.com

개발자 : 키란디아 (kyrandia at gmail.com)


----------------
이 프로그램은...
----------------

SonyEricsson XPERIA X1i 에서 헤드셋을 연결했을때
전화 수신음과 SMS 수신음이 외부 스피커로 출력되는
문제점 보완해주는 프로그램입니다.

프로그램이 실행 되면 메모리에 상주하면서
헤드셋 연결을 감지해서
연결 되면 전화 수신음, SMS 수신음을
사용자가 설정한대로 바꿔줍니다.
분리 되면 전화 수신음, SMS 수신음을
프로그램 실행전 설정값으로 되돌려 놓습니다.

프로그램을 종료할때도
프로그램 실행전 설정값으로 되돌려 놓습니다.


-------------
간단한 사용법
-------------

[ON 버튼]
감지 작업을 시작합니다.

[OFF 버튼]
감지 작업을 종료합니다.

[SMS 수신음]
소리 off, 진동 on : 소리는 나지 않고 진동만 울립니다.
소리 off, 진동 off : 화면에만 반응이 나타나고 소리나 진동은 없습니다.

[전화 수신음]
진동 없음 : 화면에만 반응이 나타나고 소리나 진동은 없습니다.
진동 1회
진동 3회

[시작시 자동으로 감지시작]
이 값이 체크 되어있으면
프로그램이 시작될때 자동으로 [ON 버튼]을 눌러줍니다.

[Reset 버튼]
갑자기 기기가 꺼지거나 프로그램 오류로 종료 되거나 했을때
프로그램이 변경해놓은 시스템 설정들을 출고당시의 설정으로 바꿔줍니다.

[About 메뉴버튼]
간단한 프로그램 정보입니다.

[Close 메뉴버튼]
프로그램을 종료합니다.

 

 

License

 

이 프로그램은 공개프로그램(freeware)입니다.
회사, 관공서, 학교등 어떤곳에서도 자유롭게 사용하실 수 있으며
부록이나 무료의 형태로 제공될 수 없습니다.
제 홈페이지를 제외한 단체 혹은 기관에서의 재배포는 원칙적으로 금하고 있으며
제작자의 동의 없이 판매 및 상업적 활용 할 수 없습니다.
또한 제작자는 이 프로그램이 사용자의 필요 사항을 만족시킨다거나,
이 프로그램의 작동이 제대로 이루어진다거나,
이 프로그램에 오류가 없음을 보증하지 않습니다.
이 프로그램 사용시에 발생하는 모든 문제에 대해 제작자는 책임을 지지 않습니다.

 

프로그램 업데이트 및 관리차원에서

다른곳에 업로드는 금하고 있습니다.

다운로드는 제 홈페이지를 링크 해주시기 바랍니다.


 [ 다운로드 ]

청설모

 
 
산에 갔다가 우연히 만난 청설모.
 
어찌나 빠른지 10배줌으로 겨우 한장 찍었다.
 
나무와 나무 사이를 이리저리 왔다갔다 하는 통에 더 찍고 싶었지만 못찍었다.

X1 SlideSound

 =============

Change Log

=============

 

v0.3a -> v0.4a

(2009-12-04)

1. 프로그램 실행시 백그라운드로 실행

2. 프로그램 종료되지 않게 수정 (Task Close 프로그램에서 종료 되지 않는 기능)

 

v0.2a -> v0.3a

1. 프로그램 아이콘 추가

 

v0.1a -> v0.2a

1. .Net CF 3.5 에서 .Net CF 2.0 으로 변경

2. 실행시 폼이 사라지지 않고 남아있는 문제 수정

 

=========================
X1 SlideSound by KyRanDiA
=========================

프로그램의 라이선스는 license.txt 파일을 참고 바랍니다.

프로그램의 버그신고, 업데이트 : http://kyrandia.textcube.com

개발자 : 키란디아 (kyrandia at gmail.com)


----------------
이 프로그램은...
----------------

SonyEricsson XPERIA X1i 에서
슬라이드를 열고 닫을 때 지정한 사운드를 재생해줍니다.
참고할것은 XPERIA 자체적으로 열때는 괜찮으나
닫을때는 이벤트가 늦게 발생하는 편입니다.
그런이유로 닫을때는 0.5초정도 느리게 재생됩니다.
프로그램의 오류가 아니니 참고 바랍니다.

 

-------------
간단한 사용법
-------------

X1 SlideSound.cab 파일을 설치하면 자동 설치되며
시작->프로그램->X1 SlideSound 를 실행하시면 실행됩니다.
다음 소프트리셋시에는 자동으로 프로그램을 시작합니다.

원하는 사운드로 교체하고자 할때는 wav 파일을 직접 교체하시면 됩니다.
파일의 위치는 XPERIA의 경우
슬라이드 열때 : \My Documents\slide_open.wav
슬라이드 닫을때 : \My Documents\slide_close.wav
입니다.

직접 위 파일을 교체하시면 원하시는 사운드로 재생이 가능합니다.

 

---------

기타 사항

---------

설치 파일에 포함된 wav 파일은 라이터 열고 닫는 소리입니다.

파일에 문제가 있을시에는 알려주시면 적절한 처리를 하겠습니다.

 

 

아래는 license 입니다.

프로그램명 : X1 SlideSound
개발자 : 키란디아
홈페이지 : http://kyrandia.textcube.com

 

이 프로그램은 공개프로그램(freeware)입니다.
회사, 관공서, 학교등 어떤곳에서도 자유롭게 사용하실 수 있으며
부록이나 무료의 형태로 제공될 수 없습니다.
제 홈페이지를 제외한 단체 혹은 기관에서의 재배포는 원칙적으로 금하고 있으며
제작자의 동의 없이 판매 및 상업적 활용 할 수 없습니다.
또한 제작자는 이 프로그램이 사용자의 필요 사항을 만족시킨다거나,
이 프로그램의 작동이 제대로 이루어진다거나,
이 프로그램에 오류가 없음을 보증하지 않습니다.
이 프로그램 사용시에 발생하는 모든 문제에 대해 제작자는 책임을 지지 않습니다.

 

 

프로그램 업데이트 및 관리차원에서

다른곳에 업로드는 금하고 있습니다.

다운로드는 제 홈페이지를 링크 해주시기 바랍니다.

 

다운로드 ] 

통도사
















바람 쐬러 통도사에 갔다가

XPERIA 카메라 테스트 겸 몇 장 찍었다.

resize only.








X1 셋팅 화면

 

 

 

셋팅하기 넘 힘들다..ㅎㅎ

 

스킨이 블랙이라서 블랙으로 나왔다.

그래도 이제 어느정도 쓸만하게 만든것 같다.

Sony Ericsson XPERIA X1

 

 

나도 이제 엑페 유저. ㅋㅋ

 

오늘 받자마자 찍은 사진들... 이제 셋팅 하고 좀 만져봐야겠다.

FlashDevelop에서 Trace 가 작동 안될때

 캡쳐할 시간이 없어 글로만 설명한다.

 

우선 F10을 눌러 프로그램 설정으로 들어간다음

Plugin -> flash viewer 를 선택한다.

 

External Player Path 를 다운 받은 debug용 flashplayer 를 찾아서 설정해준다.

Movie Display Style은 External로 선택한다.

 

그다음 오른쪽 Project 패널에서 노란색 박스 아이콘이 있는

해당 프로젝트에서 마우스 오른쪽 버튼을 눌러

Properties 로 들어간다.

 

General 에서 Output file 을 설정해준다.

 

알겠지만 프로그램 중간 중간 원하는곳에

trace(randNum);
trace("s : " + s);

처럼 삽입하면 된다.

 

 

F5 Test Movie

F8 Build Project

 

키를 이용해 테스트 해보면 화면 하단 Output 부분에 trace 한 내용들이 나올것이다.

 

AS3 작업 환경 구축하기

 ActionScript를 한번 배워볼까 싶어서

 

거금을 들여 책도 구입 한김에 작업 환경을 꾸며보려고 한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

우선 필요한 것은 Flex SDK 다.

 

이글을 쓰는 시점에는 3.4 버전이 나와있고 4 버전은 beta가 나와있다.

 

3.4 버전을 아래링크에서 다운 받는다.

 

http://www.adobe.com/products/flex/flexdownloads/

 

 

 

개발도구는 FlashDevelop 라는걸 한번 써보려고 한다.

 

FlashDevelop-3.0.3-RTM.exe 파일이 최근 release 인것 같다.

 

아래 링크로 들어가서 다운 받는다.

 

http://www.flashdevelop.org/community/viewtopic.php?f=11&t=5339

 

 

 

그다음은 Flash Player를 debug 가능한 걸로 설치해야 한다.

 

아래 링크로 들어가서 Projector Content Debugger 를 받아야 하는데

 

10 과  9 버전중에 편한걸로 받는다.

 

나는 9 버전 exe 파일을 받았다.

 

http://www.adobe.com/support/flashplayer/downloads.html

 

다운 받은 다음 그냥 한번 실행시켜주면 자동으로 연결된다.

 

 

그리고 준비되야할것이 1.6버전 이상의 Java이다.

 

 

 

자 이제 설치를 해보자.

 

Flex SDK 는 적당한 곳에 압축을 풀어놓자.

 

나는 D:\dev\Flex3sdk 디렉토리를 선택했다.

 

 

다음은 FlashDevelop 을 설치하자.

 

기본 설정으로 그대로 설치했다.

 

설치가 완료 되면 실행 하고 설정을 해줘야 한다.

 

F10 을 눌러 Program Setting 으로 들어간 다음

 

AS3Context 부분에서 Flex SDK Location 부분에 좀전에 SDK 압축을 풀어논

D:\dev\Flex3sdk 디렉토리를 선택하자.

 

 

 

New Project 를 시작한다음

 

ActionScript3 에서 Empty Project를 선택하고

 

Name 에 HelloWorld

Location 에 적당한 Flex 프로젝트를 저장할 디렉토리를 선택하고

 

Create directory for project를 체크해서 프로젝트 별로 디렉토리가 생성되게 하자.

 

 

OK 버튼을 누르면 Author 를 물어보는데 본인 아이디나 닉네임을 적자.

 

그러면 오른쪽 Project 패널안에 HelloWorld(AS3) 라는 부분이 보일것이다.

 

그부분에 마우스 오른쪽 버튼을 누르고 Add -> New Class 를 선택한다.

 

Class Name 을 물어보는데 HelloWorld 라고 입력한다.

 

 

그러면 HelloWorld.as 라는 이름으로 편집 화면이 열릴것이다.

 

아래와 같이 소스를 편집한다.

package 
{
 /**
  * HelloWorld!
  * @author KyRanDiA
  */
 
 import flash.display.MovieClip;
 import flash.text.TextField; 
 
 public class HelloWorld extends MovieClip
 {
 
  public function HelloWorld()
  {
 
    var t:TextField = new TextField;    
    t.text = 'Hello world!';
    addChild(t);
   
   
  }
 
 }

}

Java 를 해본 사람이라면 문법이 그리 낯설지는 않을것 이다.

문법 체크를 하고 싶다면 F7 키고

Ctrl + F8 을 누르면 Build Current File 이다.

 

그리고 F5 Test Movie , F8 Build Project 이다.

실행되면 Flash Player 에 Hello World! 가 찍혀서 나오면 성공이다.

소켓 에러

10049  요청한 주소는 해당 컨텍스트에서 유효하지 않습니다.

10050  네트워크를 사용할 수 없기 때문에 소켓 작업을 진행할 수 없습니다. 

10051  연결할 수 없는 네트워크에서 소켓 작업을 시도했습니다. 

10052  해당 작업이 진행되는 동안 오류가 발생하여 연결이 끊겼습니다. 

10053  현재 연결은 사용자의 호스트 시스템의 소프트웨어의 의해 중단되었습니다. 

10054  현재 연결은 원격 호스트에 의해 강제로 끊겼습니다. 

10055  대기열이 또는 버퍼가 부족하여 소켓에서 해당 작업을 진행하지 못했습니다. 

10056  이미 연결된 소켓에서 다른 연결을 요청했습니다. 

10057  소켓이 연결되어 있지 않거나 Sendto 호출을 사용하여 데이터그램 소켓에 보내는 경우에 주소가 제공되지 않아서 데이터를 보내거나 받도록 요청할 수 없습니다. 

10058  해당 소켓이 종료되었으므로 데이터 보내거나 받을 수 없습니다. 

10059  일부 커널 개체에 대한 참조가 너무 많습니다. 

10060  연결된 구성원으로부터 응답이 없어 연결하지 못했거나, 호스트로부터 응답이 없어 연결이 끊어졌습니다. 

10061  대상 컴퓨터에서 연결을 거부했으므로 연결하지 못했습니다. 

10062  이름을 해석할 수 없습니다. 

10063  이름 또는 이름의 구성 요소가 너무 깁니다. 

10064  호스트가 작동하지 않기 때문에 소켓 작업을 진행할 수 없습니다. 

10065  연결할 수 없는 호스트로 소켓 작업을 시도했습니다.

Windows Service 제거

 시작->실행에 services.msc 를 입력하면 서비스 관리창을 볼 수 있다.


sc delete 서비스이름

서비스명에 공백이 있다면
sc delete "서비스 이름"

키이름을 가져와 삭제하려면
sc getKeyName "서비스 이름"
sc delete 키이름

Rad Studio 2009 에서 Delphi .NET 으로 Compact Framework 기반 프로그램 만들기


Setting up the Development Environment

Installing the Compact Framework Assemblies

.NET Compact Framework 2.0 SDK 를 설치해야 한다.
파일명은 netcfsetupv2.msi 이고 기본 설치 경로는 \Program Files\Microsoft.NET\SDK\CompactFramework\v2.0 다.

다운로드 경로는 아래와 같다.
http://www.microsoft.com/downloads/details.aspx?familyid=AEA55F2F-07B5-4A8C-8A44-B4E1B196D5C0&displaylang=en

이하 SDK 설치가 되어있는 상태로 가정하고 설명한다.


Creating Borland.Delphi.System.dcuil

.NET CF 에 맞는 .dcuil 파일을 생성해야 한다.

dccil --clrversion=v2.0.70450 -DCF -m -q -nsBorland.VclCF
-nsBorland.Vcl -ln"C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\CF"
-W-UNIT_PLATFORM -W-SYMBOL_PLATFORM
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\mscorlib.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Xml.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Drawing.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Windows.Forms.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Data.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Windows.Forms.DataGrid.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Web.Services.dll"
-lu"C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\System.Net.IrDA.dll"
-N"C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\CF"
-U"C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\CF"
-LN"C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\CF" -z --no-config -Y
- "C:\Program Files (x86)\CodeGear\RAD Studio\6.0\Source\DotNet\rtl\borland.delphi.system.pas"


경로는 본인의 설치 환경에 맞게 수정하고 Rad Studio 아래에 lib\CF 디렉토리는 생성해준다.
나의 경우는 64bit OS를 사용하기때문에 Program Files 경로가 일반적인 32bit 환경과는 다르다.

netcf.bat 파일처럼 dos 용 batch 파일을 만들어서 하는게 편할것 이다.

주의 할 점은 위에 내용을 그대로 복사하면 CRLF가 붙게 되어서 여러줄로 저장이 되는데 CRLF가 없도록 해줘야 한다.
쉽게 말하면 엔터키 없이 한줄로 쭉 적어야 한다.
이렇게 하지 않으면 에러 메세지가 나올것이다.

성공적으로 실행 되었다면 생성해둔 CF 디렉토리에 아래와 같은 파일이 생성 될것이다.

Borland.Delphi.System.dcuil
mscorlib.dcpil
System.Data.dcpil
System.dcpil
System.Drawing.dcpil
System.Net.IrDA.dcpil
System.Web.Services.dcpil
System.Windows.Forms.DataGrid.dcpil
System.Windows.Forms.dcpil
System.Xml.dcpil



Configuring the Emulator

다운로드 경로는 아래와 같다.
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=38c46aa8-1dd7-426f-a913-4f370a65a582

0412/Windows Mobile 6 Professional Images (KOR).msi 다운로드 한 후 설치한다.

설치후 시작->프로그램->Windows Mobile 6 SDK->Standalone Emulator Images->Korean->Professional 선택해서 실행하면 아래와 같은 화면이 나온다.



File->Configure... 메뉴를 선택해서 Share folder 를 선택해준다.
이곳은 Emulator 에서 메모리 카드 슬롯 처럼 작동하는 곳으로 컴파일된 프로그램을 테스트 할때 유용하다.

나는 아래와 같이 설정했다.




Creating a Compilation Batch File

이제 CF 프로그램 생성시 사용할 batch file 을 만들어 보자.

내용은 아래와 같다.

@echo off
rem **************************************************************
rem ** Batch file to be used from the RAD Studio 2007 IDE Tools
rem ** menu to invoke the Delphi for .NET compiler to compile
rem ** Compact Framework applications. It takes two parameters
rem ** as follows:
rem **  %1 - Name of project .dpr file
rem **  %2 - Path to project directory
rem **************************************************************

set _DCCILPATH_="C:\Program Files (x86)\CodeGear\RAD Studio\6.0\Bin\dccil.exe"
set _CFUNITS_="C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\CF"
set _PROJECTNAME_=%1
set _PROJECTDIR_=%2
set _OUTPUTDIR_="D:\dev\Delphi.NET\CF\Shared"

rem *************************************************************
rem ** Ensure the RAD Studio 2007 Bin directory is in the path.
rem ** It may have been removed by a User path override.
rem *************************************************************
set _BDSDIR_=C:\Program Files (x86)\CodeGear\RAD Studio\6.0\Bin
path %_BDSDIR_%;%PATH%

rem *************************************************************
rem ** Cater for the fact that paths with spaces can't be passed
rem ** in from the Tools menu
rem *************************************************************
SHIFT
SHIFT
:LOOP
IF "%1" == "" GOTO END
set _PROJECTDIR_=%_PROJECTDIR_% %1
SHIFT
GOTO LOOP
:END

rem *************************************************************
rem ** Change to the project drive and directory
rem *************************************************************
FOR /F "tokens=1 delims=\ " %%A IN ('echo %_PROJECTDIR_%') DO SET _DRIVE_=%%~dA
%_DRIVE_%
cd %_PROJECTDIR_%
del *.dc?il

%_DCCILPATH_% -DCF --no-config "%_PROJECTDIR_%%_PROJECTNAME_%" -u%_CFUNITS_% -luSystem.Windows.Forms -luSystem.Data -E%_OUTPUTDIR_%
pause

자신의 설정에 맞게 디렉토리는 적절하게 변경한다.

각 옵션은 이 글의 마지막에 원문 글의 링크를 적어둘테니 참고 바란다.

파일은 아까 만들어둔 경로에 저장한다.

나의 경우는 아래와 같다.
D:\dev\Delphi.NET\CF\CFBuild.bat

위의 Batch File 을 IDE에 연결 시켜보자.

IDE 를 실행시키고 Tools 메뉴를 선택하고 Configure Tools... 를 선택하고 Add 버튼을 누른다.
창에 아래와 같이 입력한다.
Title : Delphi .NET CF Compiler
Program : D:\dev\Delphi.NET\CF\CFBuild.bat
Parameters : $SAVEALL $NAMEONLY($PROJECT).dpr $PATH($PROJECT)





Developing and Running a Delphi for .NET Application

Creating the Project

RadStudio 를 실행 하고 File->New->Other… 선택후
Delphi for .NET Projects 선택하고 Console Application 선택한다.
파일명은 HelloWorld.dproj 로 한다.


The Project Source

새 unit 을 추가하고 이름은 MainForm.pas 로 하자.
소스는 아래와 같다.

unit MainForm;

interface

uses
  System.Drawing, System.Collections, System.ComponentModel,
  System.Windows.Forms;

type
  TMainForm = class(System.Windows.Forms.Form)
  strict private
    Components: System.ComponentModel.Container;
    Label1: System.Windows.Forms.Label;
    Button1: System.Windows.Forms.Button;
    Label2: System.Windows.Forms.Label;
    procedure InitializeComponent;
    procedure Button1_Click(sender: System.Object; e: System.EventArgs);
  strict protected
    procedure Dispose(Disposing: Boolean); override;
  private
    { Private Declarations }
  public
    constructor Create;
  end;

implementation

{$AUTOBOX ON}

procedure TMainForm.InitializeComponent;
begin
  Self.Label1 := System.Windows.Forms.Label.Create;
  Self.Button1 := System.Windows.Forms.Button.Create;
  Self.Label2 := System.Windows.Forms.Label.Create;
  //
  // Label1
  //
  Self.Label1.Location := System.Drawing.Point.Create(16, 16);
  Self.Label1.Text := 'Hello World!';
  //
  // Button1
  //
  Self.Button1.Location := System.Drawing.Point.Create(16, 40);
  Self.Button1.Text := 'Click Me!';
  Include(Self.Button1.Click, Self.Button1_Click);
  //
  // Label2
  //
  Self.Label2.Location := System.Drawing.Point.Create(16, 72);
  Self.Label2.Size := System.Drawing.Size.Create(152, 23);
  //
  // TMainForm
  //
  Self.ClientSize := System.Drawing.Size.Create(292, 266);
  Self.Controls.Add(Self.Label2);
  Self.Controls.Add(Self.Button1);
  Self.Controls.Add(Self.Label1);
  Self.MinimizeBox := False;
end;

procedure TMainForm.Dispose(Disposing: Boolean);
begin
  if Disposing then
  begin
    if Components <> nil then
      Components.Dispose();
  end;
  inherited Dispose(Disposing);
end;

constructor TMainForm.Create;
begin
  inherited Create;
  InitializeComponent;
end;

procedure TMainForm.Button1_Click(sender: System.Object; e: System.EventArgs);
begin
  Label2.Text := 'Delphi is in the building!';
end;

end.



Project->View Source 한뒤 .dpr 파일은 아래와 같이 만든다.

program HelloWorld;

uses
  System.Windows.Forms,
  MainForm in 'MainForm.pas';

begin
  Application.Run(TMainForm.Create);
end.



Compiling the Project

아래 메뉴를 선택해서 컴파일 하자.



실행하면 아래와 같은 창이 뜬다.



에러가 나지만 걱정할건 없다.

Batch File에 설정한 D:\dev\Delphi.NET\CF\Shared\ 디렉토리에 들어가보면
HelloWorld.exe 파일이 만들어 진것을 확인할수 있다.

Emulator 에서 확인해보자.



위와 같이 정상 작동 함을 확인 할 수 있다.



한글 출력도 정상적으로 되는걸 확인 할 수 있다.


영문 출처 : http://edn.embarcadero.com/article/37915#37915_tocentry1

Insert DateTime Plugin for Notepad++ v0.3 업데이트 (32bit, 64bit)

   Notepad++용 현재 날짜 및 시간 입력 플러그인 v0.3 이 프로그램은 Notepad++(이하 Npp) 플러그인으로 단축키를 누르면 현재 날짜와 시간을 편집창에 삽입합니다. 이번 버전에서는 항상 생각하고 있던 옵션 기능을 추가 했습니다. 기...