본문 바로가기

분류 전체보기

RSS 2.0 XML 포맷에 대한 설명 RSS 2.0 Specification 'rss' Element RSS 2.0을 준수하는 문서는 문서 요소로 'rss' 이름의 Element를 가져야 합니다. 'rss' Element는 attribute로 version을 반드시 가져야 하며 그 값은 항상 "2.0"입니다. 'rss' Element는 'channel' 이름의 Element를 자식으로 갖습니다. 1. 'channel' Element 채널(channel)은 웹 사이트에 대응되는 개념입니다. 자식 Element로 3개의 필수 요소와 15개의 선택 요소를 갖습니다. 1.1 'title' Element (필수 요소) {channel_title} 채널의 이름입니다. 웹 사이트의 이름과 같게 지정하면 됩니다. 1.2 'link' Element (필수 .. 더보기
[GAS/XCode]64비트 어셈블리어에서 메모리 번지 지정 오류 해결 32비트에서는 Hello, World 구문을 아래와 같이 띄울 수 있습니다. /* 32bit version / GNU Assembly */ .data message: .string "Hello, World!\n" .text .global _main .extern _printf _main: # 스택 프레임 만들기 pushl %ebp movl %esp, %ebp # 함수의 본문 # printf(message); pushl $message xorb %al, %al call _printf addl $4, %esp # 스택 프레임 제거 movl %ebp, %esp popl %ebp ret 잠시 xorb %al, %al을 보자면… _printf 함수를 호출하기 전에 AL 레지스터의 값을 설정하는데, System V.. 더보기
소켓 통신 #3 - ICMP 클라이언트 구현하기(3) 소켓 통신 #3 - ICMP 클라이언트 구현하기(3) - by Tapito 2편에서 ICMP 패킷을 sendto로 보낼 때는 IP 헤더를 소켓에서 알아서 작성하도록 지정했습니다. 이번에는 IP 헤더를 직접 구성하여 패킷을 보내보도록 하겠습니다. IP 헤더를 직접 작성하기 위해서는 setsockopt 함수에서 IP_HDRINCL 속성을 지정해야 합니다. /* 예제 */ #pragma comment(lib, "ws2_32.lib") #include #include #include #include #include #include #pragma pack(push, 1) typedef struct _tagIPHDR4 { BYTE bVersionIHL; // Version and IHL BYTE bTypeOfSer.. 더보기
윈도우에서 IP 주소 얻는 방법 윈도우에서 IP 주소 얻는 방법 - by Tapito 인터넷으로 패킷을 주고 받기 위해서는 상대방과 자기 자신의 IP 주소를 알아야 합니다. 이 IP 주소는 세계 어디서나 식별 가능한 공인 IP일 수도 있고 같은 라우터에 물려있어야 식별 가능한 사설 IP일 수도 있습니다. 상대방의 IP 주소는 비교적 쉽게 얻을 수 있거나 이미 알고 있는 상태이기 때문에 문제가 되지 않지만 자기 자신의 IP를 얻는 방법은 약간 복잡합니다. 흔히 10.xxx.xxx.xxx, 172.16.xxx.xxx ~ 172.31.xxx.xxx, 192.168.xxx.xxx로 시작하는 주소는 사설 IP로서 같은 공유기에 물려있는 장치들 사이에서나 유효하며 이 범위가 아닌 IP가 아니더라도 같은 네트워크에 접속된 장치들에서만 유효한 사설 .. 더보기
소켓 통신 #3 - ICMP 클라이언트 구현하기(2) 소켓 통신 #3 - ICMP 클라이언트 구현하기(2) - by Tapito ICMP로 통신하기 위해서는 저수준 소켓을 만듭니다. 만일 Windows 운영체제에서 이 단계에 INVALID_SOCKET이 반환되고 GetLastError 함수 등을 통해 10013 오류가 확인되었다면 해당 프로그램을 관리자모드로 실행하면 됩니다. SOCKET icmpSocket = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); struct sockaddr_in icmpDestination에 ping을 보낼 대상이 미리 저장되어있다고 하면 sendto 소켓함수를 통해 상대방의 수신 여부와 무관하게 일방적으로 데이터(ICMP를 포함한 패킷 전체)를 쏩니다. 전송 성공 시 전송된 바이트 수를 반환하고 그렇.. 더보기
소켓 통신 #3 - ICMP 클라이언트 구현하기(1) 소켓 통신 #3 - ICMP 클라이언트 구현하기(1) - by Tapito ICMP 패킷 헤더 이번에는 좀 더 저수준으로 소켓을 다뤄보겠습니다. ICMP(Internet Control Message Protocol)는 ping 명령에서 사용되는 프로토콜로 목적지와의 통신이 원활한지를 확인하는데 사용됩니다. 저수준이니만큼 패킷의 구조도 직접 작성해야 하는데요, 목적지로 ping을 보내서 되돌아오기까지의 과정에서 주고받는 데이터를 에코(echo)라 합니다. 에코를 보내고 받을 때 전달되는 ICMP 구조체는 아래와 같이 선언하기로 약속(RFC 792 규격)되었습니다. /* ICMP 헤더 구조체의 예 */ typedef struct _tagICMPHDR { BYTE bType; // Type BYTE bCode.. 더보기
히브리어 문자의 자음과 모음의 종류 및 발음 해설 자음 설명글자 ': 알레프(묵음, 우리말의 아, 악, 알 처럼 음가 없이 자리만 차지하는 'ㅇ'같은 글자)א: אָלֶף v: 베이트(로마자 v발음, 우리말의 순경음 비읍)ב: בֵית b: 베이트(로마자 b발음, 우리말의 비읍)בּ: בֵּית g: 기멜(로마자 g발음, 우리말의 기역)גּ: גִּימֶל / ג: גִימֶל d: 달렏(로마자 d발음, 우리말의 디귿)ד: דָּלֶת h: 헤(로마자 h발음, 우리말의 히읗)ה: הֵא v: 바브(로마자 v발음, 우리말의 순경음 비읍)ו: וָו z: 자인(로마자 z발음, 우리말의 반치음)ז: זַיִן h': 흐에트!(거센 h발음)ח: חֵית t': 테이트!(거센 t발음)ט: טֵית y: 요-드(로마자 y발음)י: יוֹד ch, k: 각각 하프, 카.. 더보기
소켓 함수를 사용하여 도메인을 IP주소간 상호 변환하기 getnameinfo는 IP 주소에서 도메인으로 변환하는 기능을, getaddrinfo는 도메인에서 IP 주소로 변환하는 기능을 제공합니다.최근의 DNS 서버는 IP 주소에서 도메인으로 변환하는 Reverse DNS 기능을 지원하지 않기 때문에 getnameinfo 함수의 결과가 올바르지 않을 수 있습니다. /* 예제 */ /* WinSock 라이브러리를 링크합니다. */ #pragma comment(lib, "ws2_32.lib") /* 소켓 구조체를 사용하기 위한 헤더 */ #include /* getnameinfo와 getaddrinfo가 선언된 헤더 */ #include #include #include #include int main(int argc, char * argv[]) { ADDRINFO.. 더보기
ScreenCapture 1.2 Windows CE용 화면 캡처 프로그램입니다. 더보기
PocketNotepad 4.0 Windows CE용 메모장인 PocketNotepad 4.0입니다. 더보기
Microsoft .NET Compact Framework 3.5 Windows CE용 닷넷 프레임워크으로서 지원되는 마지막 버전인 .NET Compact Framework 3.5입니다. 더보기
Macromedia Flash Player 6 Windows CE용 플래시 플레이어인 Macromedia Flash Player 6 버전입니다. 설치과정은 필요하지 않으며 장치에서 zip 파일의 압축을 풀고 실행파일을 실행하면 됩니다. 더보기
Microsoft Facebook 각 버전 Windows CE용 Facebook 앱인 Microsoft Facebook입니다. 아래 버전 중 하나를 선택하여 설치후 실행합니다. 더보기
MDict 2.4 Windows CE에서 사용할 수 있는 사전 프로그램인 MDict 2.4입니다. 한글 패치 버전도 함께 첨부하며, cab파일로 프로그램을 설치 후 설치 경로에 한글 패치 파일을 덮어쓰면 됩니다. 더보기
Mobile FTP Client Windows CE에서 사용할 수 있는 FTP 클라이언트입니다. 아래 버전 중 하나를 선택하여 설치하면 됩니다. 더보기
wmTorrent 각 버전 Windows CE에서 사용할 수 있는 토렌트 클라이언트인 wmTorrent입니다. 아래 버전 중 하나를 선택해 설치하여 사용하면 됩니다. 더보기
Pocket RAR 각 버전 WinRAR의 Windows CE 버전인 Pocket RAR입니다. ZIP 포맷과 RAR 포맷의 압축 및 압축풀기를 지원합니다. 아래 버전 중 하나를 설치하여 사용하면 됩니다. 더보기
Mangameeyace 2.4b 이미지 파일 형식으로 된 만화를 볼 수 있는 어플리케이션입니다. 굳이 만화 아니어도 이미지 뷰어로서 사용해도 무방합니다. 더보기
Total Commander/CE 2.5 Windows CE용 탐색기 어플리케이션인 Total Commander/CE 2.5입니다. 파일 탐색 외에 레지스트리 및 FTP 접속도 가능합니다. 장치 루트(\)에서 \\Plugins 항목을 클릭하면 해당 기능을 사용할 수 있습니다. 더보기
이동된 게시물입니다. 본 게시글은 블로그 개편으로 이동되었습니다. 아래 주소로 접속하여 주십시오. This article has been moved due to the the reorganization of the blog. Please visit the page linked below: この文書はブログの改編ので移動されました。下記の住所で接続して下さい。 http://blog.codingcat.kr/17 더보기
이동된 게시물입니다. 본 게시글은 블로그 개편으로 이동되었습니다. 아래 주소로 접속하여 주십시오. This article has been moved due to the the reorganization of the blog. Please visit the page linked below: この文書はブログの改編ので移動されました。下記の住所で接続して下さい。 http://blog.codingcat.kr/18 더보기
이동된 게시물입니다. 본 게시글은 블로그 개편으로 이동되었습니다. 아래 주소로 접속하여 주십시오. This article has been moved due to the the reorganization of the blog. Please visit the page linked below: この文書はブログの改編ので移動されました。下記の住所で接続して下さい。 http://blog.codingcat.kr/15 더보기
이동된 게시물입니다. 본 게시글은 블로그 개편으로 이동되었습니다. 아래 주소로 접속하여 주십시오. This article has been moved due to the the reorganization of the blog. Please visit the page linked below: この文書はブログの改編ので移動されました。下記の住所で接続して下さい。 http://blog.codingcat.kr/16 더보기
下川みくに もう一度君に会いたい(시모카와 미쿠니 - 한번 더 그대를 만나고 싶다) もう一度君に会いたい(한번 더 그대를 만나고 싶다) 作詞: 下川(しもかわ)みくに(작사: 시모카와 미쿠니) 作曲: Gajin 編曲: 西川(にしかわ)進(すすむ)(편곡: 니시카와 스스무) 唄: 下川(しもかわ)みくに(곡: 시모카와 미쿠니) さよならはいつも急(きゅう)に 이별은 언제나 급하게 そよ風(かぜ)のように遣(や)って来る 조용히 바람과 같이 찾아온다 少(すこ)し強(つよ)がる君(きみ)の笑顔(えがお)に 涙(なみだ)こぼれた日(ひ) 조금은 강한척 하는 그대의 웃는 얼굴에 눈물 흘러나온 날 きっと君(きみ)は今日(きょう)の日(ひ)も 분명 그대는 오늘의 날을 真(ま)っ直(す)ぐ明日(あした)を見(み)てる 똑바로 내일을 바라보겠지 風(かぜ)が吹(ふ)くあの丘(おか)に咲(さ)いた 向日葵(ひまわり)のように 바람이 부는 저 언덕에 피.. 더보기
Windows NT 4.0 DDK 문서 - IMEAPPS.DOC [Part 2] Windows 95 / Windows NT 어플리케이션을 위한 다국어 IME 규격 Version 1.18 마지막 수정일: 1996년 5월 21일, 번역: Luciano Jeong ImmSetCompositionString 함수에 대하여 5.1 구성요소 5.1.1 절(Clause) 절은 하나 또는 그 이상의 문자로 구성되어 있습니다. 그리고 절은 변환의 기본 단위입니다. 기본적으로 IME는 한번에 하나의 절을 변환합니다. 한 절에 있는 모든 문자는 같은 속성을 가져야 합니다. 5.1.2 대상 절(Target Clause) 대상 절은 하나의 절입니다. 그리고 이 절은 사용자가 변환합니다.(And it is the clause that the end user is converting.) 속성은 0x01 또는 .. 더보기
Windows NT 4.0 DDK 문서 - IMEAPPS.DOC [Part 1] Windows 95 / Windows NT 어플리케이션을 위한 다국어 IME 규격 Version 1.18 마지막 수정일: 1996년 5월 21일, 번역: Luciano Jeong 1 개요 극동지역 버전의 윈도우를 위해 어플리케이션이 더블바이트 문자를 생성할 수 있도록 입력 방식 편집기(Input Method Editor, 이하 IME)가 특별 프로세스로서 도입되었습니다. IME를 인식하는 어플리케이션은 IME에 특성화괸 메시지를 처리하고 IME API를 호출해야 합니다. 그러나 인터페이스를 사용해 IME와 상호작용하는 프로그램을 개발하는 프로그래머에게는 몇 가지 어려움이 있습니다. API와 메시지의 설계가 다른 윈도우 API와 너무 다릅니다. 이는 인터페이스를 이해하고 사용하는데 어려움을 야기합니다. I.. 더보기
Windows DDK 문서 IMEIMES.DOC - 11. IME File Format and Data Structures (IME 파일 포맷 및 데이터 구조) #5 (완결) IME 개발을 위한 Win32 다국어 IME 개요 버전 1.32 최종 수정일: 1998년 4월 1일, 번역: Luciano Jeong CANDIDATEFORM CANDIDATEFORM 구조체는 IMC_GETCANDIDATEPOS and IMC_SETCANDIDATEPOS 메시지에서 사용됩니다. /* CANDIDATEFORM */ typedef tagCANDIDATEFORM { DWORD dwIndex; DWORD dwStyle; POINT ptCurrentPos; REC rcArea; } CANDIDATEFORM; CANDIDATEFORM 구조체의 멤버 dwIndex 후보 목록의 ID를 지정합니다. 0부터 시작하는 후보목록의 인덱스입니다. dwStyle CFS_CANDIDATEPOS 또는 CFS_EXCL.. 더보기
Windows DDK 문서 IMEIMES.DOC - 11. IME File Format and Data Structures (IME 파일 포맷 및 데이터 구조) #4 IME 개발을 위한 Win32 다국어 IME 개요 버전 1.32 최종 수정일: 1998년 4월 1일, 번역: Luciano Jeong IME 통신을 위해 사용되는 구조체 다음은 IME 통신을 위해 사용되는 구조체에 대한 설명입니다. CANDIDATELIST CANDIDATELIST 구조체는 변환할 수 있는 후보 문자열에 대한 정보를 포함하고 있습니다. /* CANDIDATELIST */ typedef struct tagCANDIDATELIST { DWORD dwSize; // 이 구조체의 크기 DWORD dwStyle; // 후보 문자열들의 스타일 DWORD dwCount; // 변환 후보 문자열의 수 DWORD dwSelection; // 현재 선택된 후보 문자열의 순번 DWORD dwPageStart.. 더보기
Windows DDK 문서 IMEIMES.DOC - 11. IME File Format and Data Structures (IME 파일 포맷 및 데이터 구조) #3 IME 개발을 위한 Win32 다국어 IME 개요 버전 1.32 최종 수정일: 1998년 4월 1일, 번역: Luciano Jeong IME 관리 구조체 아래는 IME를 관리하기 위해 사용되는 구조체들에 대해 설명하고 있습니다. IMEINFO IMEINFO 구조체는 내부적으로 IMM과 IME 인터페이스에 사용됩니다. /* IMEINFO */ typedef struct tagIMEInfo { /* The byte count of private data in an IME context. */ /* IME 컨텍스트에서 사적으로 쓰일 메모리의 바이트 수 */ DWORD dwPrivateDataSize; /* The IME property bits. See description below. */ /* IME 속성.. 더보기
Windows 95 Device Driver Kit Windows 95를 위한 장치 드라이버를 개발하는데 필요한 DDK입니다. 압축을 풀고 ISO 파일을 마운트하며 사용하면 됩니다. 더보기