<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>재미주의 프로그래밍(funnism.com)</title>
		<link>http://funnism.com/</link>
		<description>안녕하세요...^^ 
재미주의 프로그래밍 블로그에 오신것을 환영합니다.
연락주실분은 lovests2@naver.com 으로 남겨주세요.</description>
		<language>ko</language>
		<pubDate>Wed, 10 Mar 2010 21:54:02 +0900</pubDate>
		<generator>Tistory 1.1 (http://www.tistory.com/)</generator>
		<image>
		<title>재미주의 프로그래밍(funnism.com)</title>
		<url><![CDATA[http://cfs13.tistory.com/upload_control/download.blog?fhandle=YmxvZzI5NDA1MkBmczEzLnRpc3RvcnkuY29tOi9hdHRhY2gvMC8yNDAwMDAwMDAwMDAuSlBH]]></url>
		<link>http://funnism.com/</link>
		<description>안녕하세요...^^ 
재미주의 프로그래밍 블로그에 오신것을 환영합니다.
연락주실분은 lovests2@naver.com 으로 남겨주세요.</description>
		</image>
		<item>
			<title>Xerces-c 프로젝트 생성 및 빌드설정</title>
			<link>http://funnism.com/42</link>
			<description>프로젝트 생성과 빌드설정은 2.8.0, 3.1.0 두버젼 모두 디렉토리 이름만 다르고 동일하기 때문에 기준은&lt;br /&gt;
2.8.0버전을 기준으로 설명하도록 하겠습니다.&amp;nbsp;참고로 2.8.0은 VC8(VS 2005)까지만 지원하고,&lt;br /&gt;
3.1.0은 VC9(VS 2008) 까지 지원합니다. 뭐 비쥬얼스튜디오 버전에 따른 차이점은 없다고 보셔도 무방합니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 12pt&quot;&gt;1. 비쥬얼스튜디오 프로젝트 생성&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;br /&gt;
일단 콘솔프로젝트를 생성하겠습니다. 프로젝트 이름은 아래와 같이 하겠습니다.&lt;br /&gt;
&lt;STRONG&gt;2.8.0 : &lt;FONT color=#3058d2&gt;DOMPrint280&lt;/FONT&gt;&lt;br /&gt;
3.1.0 : &lt;FONT color=#3058d2&gt;DOMPrint310&lt;/FONT&gt;&lt;br /&gt;
&lt;/STRONG&gt;&lt;br /&gt;
&lt;SPAN style=&quot;FONT-SIZE: 12pt&quot;&gt;&lt;STRONG&gt;2. 비쥬얼스튜디오 빌드환경 설정&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;br /&gt;
이제 프로젝트의 빌드환경을 변경해줘야 합니다. 빌드환경은 정적 라이브러리와 동적라이브러리 모두 설명드리도록&lt;br /&gt;
하겠습니다.&lt;br /&gt;
&lt;br /&gt;일단,&amp;nbsp;&quot;프로젝트 속성 -&amp;gt; 구성 속성 -&amp;gt; C/C++ -&amp;gt;&amp;nbsp;추가 포함 디렉토리&quot;&amp;nbsp;에&amp;nbsp;경로를 설정합니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile22.uf.tistory.com/image/177C9E144B966A41576382&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;280추가포함디렉토리.PNG&quot; height=&quot;190&quot; width=&quot;683&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&lt;STRONG&gt; - 정적 라이브러리 &lt;/STRONG&gt;: 정적라이브러리는 lib파일을 링크시켜 하나의 실행파일 또는 하나의 DLL로 사용할 수 있는 방법입니다.&lt;br /&gt;
&lt;br /&gt;① &quot;프로젝트 속성 -&amp;gt; 구성 속성 -&amp;gt; 링커 -&amp;gt; 일반 -&amp;gt;&amp;nbsp;추가&amp;nbsp;라이브러리 디렉토리&quot;&amp;nbsp;에&amp;nbsp;경로를 설정합니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Debug&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : D:\Library\xerces-c-2.8.0\Build\Win32\VC8\Debug&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2.8.0 Static Debug&amp;nbsp;&amp;nbsp;&amp;nbsp; : D:\Library\xerces-c-2.8.0\Build\Win32\VC8\StaticDebug&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Release&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; :&amp;nbsp;D:\Library\xerces-c-2.8.0\Build\Win32\VC8\Release&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Static Release : D:\Library\xerces-c-2.8.0\Build\Win32\VC8\StaticRelease&lt;/STRONG&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile3.uf.tistory.com/image/141605144B966B2F30F241&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;280추가라이브러리.PNG&quot; height=&quot;118&quot; width=&quot;683&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;② &quot;프로젝트 속성 -&amp;gt; 구성 속성 -&amp;gt; C/C++ -&amp;gt; 전처리기 -&amp;gt; 전처리기 정의&quot; 에 다음 지시자를 입력합니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2.8.0 Static&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; :&amp;nbsp;XML_LIBRARY&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 3.1.0 Static&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : XERCES_STATIC_LIBRARY&lt;/STRONG&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile29.uf.tistory.com/image/1204200B4B9792A274173A&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;전처리기.PNG&quot; height=&quot;173&quot; width=&quot;683&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
③&amp;nbsp;&quot;프로젝트 속성 -&amp;gt; 구성 속성 -&amp;gt;&amp;nbsp;C/C++ -&amp;gt; 코드 생성 -&amp;gt; 런타임 라이브러리&quot; 설정을 아래와 같이 설정합니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Debug&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 다중 스레드 디버그 DLL(/MDd)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2.8.0 Static Debug&amp;nbsp;&amp;nbsp;&amp;nbsp; : 다중 스레드 디버그(/MTd)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Release&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; :&amp;nbsp;다중 스레드 DLL(/MD)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Static Release : 다중 스레드(/MT)&lt;/STRONG&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/133B8E0C4B979123488918&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;런타임라이브러리.PNG&quot; height=&quot;105&quot; width=&quot;683&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;④&amp;nbsp;&quot;프로젝트 속성 -&amp;gt; 구성 속성 -&amp;gt; 링커 -&amp;gt; 입력 -&amp;gt; 추가 종속성&quot; 에&amp;nbsp;다음 파일명을 입력합니다.&lt;br /&gt;
&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Debug&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : xerces-c_2D.lib&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2.8.0 Static Debug&amp;nbsp;&amp;nbsp;&amp;nbsp; : xerces-c_static_2D.lib&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Release&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : xerces-c_2.lib&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.8.0 Static Release : xerces-c_static_2.lib&lt;br /&gt;
&lt;/STRONG&gt;&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile5.uf.tistory.com/image/112E0B134B978E1DAF36EF&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;추가종속성.PNG&quot; height=&quot;226&quot; width=&quot;604&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&amp;nbsp; &lt;STRONG&gt;- 동적&amp;nbsp;라이브러리 &lt;/STRONG&gt;: 동적라이브러리는 lib파일을 링크시키고, 하나의 실행파일 또는&amp;nbsp;DLL로 사용하는 것은 같은데, xerces.dll과 같은 parser&amp;nbsp;DLL파일이 꼭 필요합니다.&lt;br /&gt;
&lt;br /&gt;동적 라이브러리는 위에서 설명한 설정에서 Static이 붙지 않은 부분의 설정을 해주면 됩니다.&lt;br /&gt;
다른 부분은 전처리기 정의에서 전처리 지시자를 삭제해주면 됩니다.&lt;br /&gt;
그리고, &lt;FONT color=#e31600&gt;&lt;STRONG&gt;실행파일이 만들어지는 폴더에 &lt;/STRONG&gt;&lt;/FONT&gt;다음 파일을 복사해주면 됩니다.&lt;br /&gt;
&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Debug&amp;nbsp;&amp;nbsp; : D:\Library\xerces-c-2.8.0\Build\Win32\VC8\Debug\xerces-c_2_8D.dll&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Release : D:\Library\xerces-c-2.8.0\Build\Win32\VC8\Release\xerces-c_2_8.dll&lt;br /&gt;
&lt;br /&gt;&lt;/STRONG&gt;만약 아무리 해봐도 빌드가 되지 않는다면 메일 주시면 제가 아는 범위 내에선 답변을 드리도록 하겠습니다.&lt;br /&gt;
&lt;br /&gt;다음엔 실제로 XML 파일을 콘솔화면과 파일로 출력하는 테스트코드를 작성해보도록 하겠습니다.&lt;br /&gt;
라이브러리를 정적으로 쓸것인지, 동적으로 쓸것인지는 여러분 마음대로 선택하시면 됩니다.&lt;br /&gt;
어차피 코드구현 부분에서는 다를게 없으니까요...^^&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-42-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-42-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-42-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=6119229&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>Xerces Parser (c++)</category>
			<category>xerces</category>
			<category>xerces c++</category>
			<category>xerces-c</category>
			<category>xercesc</category>
			<category>XML Parser</category>
			<author>태발이</author>
			<guid>http://funnism.com/42</guid>
			<comments>http://funnism.com/42#entry42comment</comments>
			<pubDate>Wed, 10 Mar 2010 21:54:00 +0900</pubDate>
		</item>
		<item>
			<title>Xerces-c 설치 및 다운로드</title>
			<link>http://funnism.com/41</link>
			<description>&lt;br /&gt;
먼저 Xerces를 다운로드 받습니다. &lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;다운로드&lt;br /&gt;
&lt;/STRONG&gt;&lt;br /&gt;
3.1.0 버전 : &lt;A href=&quot;http://mirror.korea.ac.kr/apache/xerces/c/3/sources/xerces-c-3.1.0.zip&quot;&gt;http://mirror.korea.ac.kr/apache/xerces/c/3/sources/xerces-c-3.1.0.zip&lt;/A&gt;&lt;br /&gt;
&lt;br /&gt;2.8.0 버전 : &lt;A href=&quot;http://mirror.korea.ac.kr/apache/xerces/c/2/sources/xerces-c-src_2_8_0.zip&quot;&gt;http://mirror.korea.ac.kr/apache/xerces/c/2/sources/xerces-c-src_2_8_0.zip&lt;/A&gt;&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;설치&lt;/STRONG&gt;&lt;br /&gt;
&lt;br /&gt;특정 디렉토리에 압축을 풀어놓습니다.&lt;br /&gt;
&lt;br /&gt;&lt;SPAN style=&quot;FONT-SIZE: 12pt&quot;&gt;&lt;STRONG&gt;1. 압축풀어 디렉토리에 복사&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;br /&gt;
저는 D:\Library 에 압축을 풀겠습니다.&lt;br /&gt;
&lt;STRONG&gt;2.8.0 경로 : &lt;FONT color=#3058d2&gt;D:\Library\xerces-c-2.8.0\&lt;/FONT&gt;&lt;br /&gt;
3.1.0 경로 : &lt;FONT color=#3058d2&gt;D:\Library\xerces-c-3.1.0\&lt;/FONT&gt;&lt;br /&gt;
&lt;/STRONG&gt;&lt;br /&gt;
&lt;STRONG&gt;&lt;SPAN style=&quot;FONT-SIZE: 12pt&quot;&gt;2. 라이브러리 빌드&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;br /&gt;
일단 라이브러리를 사용하기 위해서는 빌드를 해야합니다.&lt;br /&gt;
라이브러리는 동적라이브러리와 정적 라이브러리를 모두 사용할 수 있는데, &lt;br /&gt;
삽질의 수고를 덜어드리기 위해 두가지 방법을 모두 해볼 작정입니다.&lt;br /&gt;
&lt;br /&gt;라이브러리를 빌드하는 방법은 두버전 모두 같습니다. 일단 아래의 경로로 이동하여&lt;br /&gt;
xerces-all.sln 파일을 비쥬얼스튜디오로 오픈합니다.&lt;br /&gt;
다양한 버전의 솔루션파일을 지원하니, 용도에 맞게 사용하시면 되겠습니다.&lt;br /&gt;
&lt;br /&gt;2.8.0버전 VC8 솔루션파일 경로 : &lt;FONT color=#3058d2&gt;&lt;STRONG&gt;D:\Librarys\xerces-c-2.8.0\Projects\Win32\VC8\xerces-all\xerces-all.sln&lt;br /&gt;
&lt;/STRONG&gt;&lt;br /&gt;
&lt;/FONT&gt;3.1.0버전 VC9 솔루션파일 경로 : &lt;STRONG&gt;&lt;FONT color=#3058d2&gt;D:\Librarys\xerces-c-3.1.0\Projects\Win32\VC9\xerces-all\xerces-all.sln&lt;/FONT&gt;&lt;/STRONG&gt;&lt;br /&gt;
&lt;br /&gt;일단 라이브러리를 사용하기 위해서 빌드를 합니다.&lt;br /&gt;
&lt;br /&gt;Debug 모드로 빌드하면 .lib와 .dll 파일이 생성됩니다.&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile23.uf.tistory.com/image/133F51274B9664F230CCAE&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;디버그 빌드.PNG&quot; height=&quot;120&quot; width=&quot;342&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;Static Debug 모드로 빌드하면 .lib 파일이 생성됩니다.&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile26.uf.tistory.com/image/133F51274B9664F12FFFE1&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;Static디버그빌드.PNG&quot; height=&quot;118&quot; width=&quot;375&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/FONT&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-41-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-41-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-41-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=6105242&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>Xerces Parser (c++)</category>
			<category>apache xml parser</category>
			<category>parser</category>
			<category>xerces</category>
			<category>xerces c++</category>
			<category>xercesc</category>
			<category>XML Parser</category>
			<author>태발이</author>
			<guid>http://funnism.com/41</guid>
			<comments>http://funnism.com/41#entry41comment</comments>
			<pubDate>Tue, 09 Mar 2010 23:38:19 +0900</pubDate>
		</item>
		<item>
			<title>Xerces-c 소개</title>
			<link>http://funnism.com/40</link>
			<description>&lt;br /&gt;
Xerces는 아파치 프로젝트중 하나로 XML Parser라이브러리의 이름입니다.&lt;br /&gt;
&lt;br /&gt;자세한 정보는 &lt;A href=&quot;http://xerces.apache.org/&quot;&gt;http://xerces.apache.org/&lt;/A&gt;&amp;nbsp;에 가시면 확인하실 수 있습니다.&lt;br /&gt;
&lt;br /&gt;Xerces는 Java, C++, Perl 버젼을 제공하는데, Perl은 잘 모르겠고,&lt;br /&gt;
&lt;br /&gt;Java버젼은 사용하기도 쉽고, 많은 사람들이 사용하고 있기 때문에&lt;br /&gt;
&lt;br /&gt;저는 C++ 버전을 위주로 블로깅을 하도록 하겠습니다.&lt;br /&gt;
&lt;br /&gt;현재 Xerces-c는 2.8.0 과 3.0.1 버전을 제공하고 있는데,&lt;br /&gt;
&lt;br /&gt;DOM Level 3를 완벽지원하는 버전은 3.0.1입니다. 그래서 2.8.0과는 좀 다른&lt;br /&gt;
&lt;br /&gt;구조를 가지고 있습니다. &lt;br /&gt;
&lt;br /&gt;저는 2.8.0과 3.0.1을 번갈아가며 설명하려고 합니다. 아직은 2.8.0도 많이 쓰이기 때문입니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-40-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-40-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-40-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=6091086&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>Xerces Parser (c++)</category>
			<category>Apache</category>
			<category>apache xml</category>
			<category>apache xml parser</category>
			<category>parser</category>
			<category>xerces</category>
			<category>xerces c++</category>
			<category>xercesc</category>
			<category>XML</category>
			<category>XML Parser</category>
			<author>태발이</author>
			<guid>http://funnism.com/40</guid>
			<comments>http://funnism.com/40#entry40comment</comments>
			<pubDate>Tue, 09 Mar 2010 00:29:02 +0900</pubDate>
		</item>
		<item>
			<title>2010년 2월 5일 서울 상공에 운석이 떨어지다...</title>
			<link>http://funnism.com/39</link>
			<description>&lt;br /&gt;

&lt;P&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile24.uf.tistory.com/image/1939150B4B6E5D6860ED86&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;007.jpg&quot; height=&quot;512&quot; width=&quot;683&quot;/&gt;&lt;/div&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2010년 2월 5일 오후 6시 6분 봉천4동 상공에서 촬영했다.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;불꽃이 긴것으로 보아 운석같은데, 장관이었음...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;사진으로 보면 매우 작은데, 실제로는 엄청 잘보여서 많은 사람이 봤을듯... 
&lt;DIV class=autosourcing-stub&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-39-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-39-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-39-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=5741736&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>힘이 되는 글</category>
			<category>서울하늘</category>
			<category>운석</category>
			<category>추락</category>
			<author>태발이</author>
			<guid>http://funnism.com/39</guid>
			<comments>http://funnism.com/39#entry39comment</comments>
			<pubDate>Sun, 07 Feb 2010 15:29:12 +0900</pubDate>
		</item>
		<item>
			<title>Visual Studio 2008의 단축키</title>
			<link>http://funnism.com/37</link>
			<description>&lt;P&gt;MS에서 나눠주는 Key Binding Poster입니다.&lt;br /&gt;
&lt;br /&gt;필요하신분은 다운받아 쓰세요.&lt;br /&gt;
&lt;br /&gt;아래 단축키는 코드를 편집할때 가장 많이 쓰고 유용한 단축키입니다.&lt;br /&gt;
&lt;br /&gt;&lt;/P&gt;
&lt;UL style=&quot;LIST-STYLE-TYPE: disc&quot;&gt;
&lt;LI&gt;F12 : Edit.GoToDefinition&lt;/LI&gt;
&lt;LI&gt;Ctrl + NUM * : View.PopBrowseContext&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;br /&gt;
&lt;A title=&quot;[http://www.microsoft.com/downloads/details.aspx?familyid=4411bbfc-0e3c-42b3-bd05-af1d292c986f&amp;amp;displaylang=en]로 이동합니다.&quot; href=&quot;http://www.microsoft.com/downloads/details.aspx?familyid=4411bbfc-0e3c-42b3-bd05-af1d292c986f&amp;amp;displaylang=en&quot; target=_blank&gt;Visual C++ 2008 Keybinding Reference Poster&lt;/A&gt;&lt;br /&gt;
&lt;br /&gt;&lt;A title=&quot;[http://www.microsoft.com/downloads/details.aspx?familyid=e5f902a8-5bb5-4cc6-907e-472809749973&amp;amp;displaylang=en]로 이동합니다.&quot; href=&quot;http://www.microsoft.com/downloads/details.aspx?familyid=e5f902a8-5bb5-4cc6-907e-472809749973&amp;amp;displaylang=en&quot; target=_blank&gt;Visual C# 2008 Keybinding Reference Poster&lt;/A&gt;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-37-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-37-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-37-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=5585371&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>Programming Tips</category>
			<category>c#</category>
			<category>C++</category>
			<category>Hot Key</category>
			<category>key binding</category>
			<category>Visual C#</category>
			<category>Visual C++</category>
			<category>Visual Studio 2008</category>
			<category>단축키</category>
			<category>비주얼 스튜디오 2008</category>
			<category>비쥬얼 C++</category>
			<category>비쥬얼 스튜디오</category>
			<author>태발이</author>
			<guid>http://funnism.com/37</guid>
			<comments>http://funnism.com/37#entry37comment</comments>
			<pubDate>Tue, 26 Jan 2010 09:25:04 +0900</pubDate>
		</item>
		<item>
			<title>셀프넘버(self-number) 문제</title>
			<link>http://funnism.com/36</link>
			<description>&lt;P&gt;&lt;br /&gt;
어떤 자연수 n이 있을 때, d(n)을 n의 각 자릿수 숫자들과 자신을 더한 숫자라고 정의하자. 예를 들어 d(91) = 9 + 1 + 91 = 101&lt;br /&gt;
이때, n을 d(n)의 “제너레이터”(generator)라고 한다. 위의 예에서 91은 101의 제너레이터이다. 어떤 숫자들은 하나 이상의 제너레이터를 가지고 있는데, 101의 제너레이터는 91뿐만이 아니라 100도 있다. (1 + 0 + 0 + 100 = 101)&lt;br /&gt;
그런데 반대로, 제너레이터가 없는 숫자들도 있으며, 이런 숫자를 인도의 수학자 Kaprekar가 “셀프 넘버”(self – number)라 이름 붙였다.&lt;br /&gt;
예를 들어 1, 3, 5, 7, 9, 20, 31… 은 셀프 넘버들이다.&lt;/P&gt;
&lt;P&gt;문제.&amp;nbsp; 1 이상이고 5000보다 작은 모든 셀프넘버들의 합을 구하라.&lt;br /&gt;
&lt;br /&gt;&lt;/P&gt;
&lt;p id=&quot;more36_0&quot; class=&quot;moreless_fold&quot;&gt;&lt;span style=&quot;cursor: pointer;&quot; onclick=&quot;toggleMoreLess(this, &#039;36_0&#039;,&#039;소스보기&#039;,&#039;접기&#039;); return false;&quot;&gt;소스보기&lt;/span&gt;&lt;/p&gt;&lt;div id=&quot;content36_0&quot; class=&quot;moreless_content&quot; style=&quot;display: none;&quot;&gt;&lt;br /&gt;
&lt;PRE class=brush:cpp&gt;#include &lt;IOSTREAM&gt;
#include &lt;VECTOR&gt;
using namespace std;

int d(int num)
{
	int arr[100] = {0, };

	int i=0;

	arr[i++] = num;
	while(num != 0){
		arr[i] = num % 10;
		num = num / 10;
		i++;
	}
	
	int sum = 0;
	for(int j=0; j &amp;lt; i; j++){
		sum += arr[j];
	}

	return sum;
}

int main()
{
	int input = 0;
	cout &amp;lt;&amp;lt; &quot;셀프넘버의 합을 구하려는 숫자 : &quot;;
	cin &amp;gt;&amp;gt; input;
	vector&lt;INT&gt; vecNum;
	vecNum.reserve(input);
	vecNum.assign(input, 0);

	for(int i=0; i &amp;lt; input; ++i){
		vecNum[i] = i+1;
	}

	int offset = 0;
	offset = d(1)-1;
	for(int i=2; offset &amp;lt; input; i++){
		vecNum[offset] = -1;
		offset = d(i)-1;
	}

	int sum = 0;
	for(int j=0; j &amp;lt; input; j++){
		if(vecNum[j] != -1){
			sum += vecNum[j];
			cout &amp;lt;&amp;lt; vecNum[j] &amp;lt;&amp;lt; &quot; &quot;;
		}
	}
	cout &amp;lt;&amp;lt; endl;
	cout &amp;lt;&amp;lt; &quot;셀프넘버의 합 : &quot; &amp;lt;&amp;lt; sum &amp;lt;&amp;lt; endl;

	return 0;
}
&lt;/PRE&gt;&lt;/div&gt;
&lt;P&gt;&lt;br /&gt;
&amp;nbsp;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-36-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-36-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-36-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=4451293&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>자료구조&amp;알고리즘</category>
			<category>self number</category>
			<category>self-number</category>
			<category>셀프넘버</category>
			<category>알고리즘</category>
			<author>태발이</author>
			<guid>http://funnism.com/36</guid>
			<comments>http://funnism.com/36#entry36comment</comments>
			<pubDate>Wed, 14 Oct 2009 14:23:42 +0900</pubDate>
		</item>
		<item>
			<title>깊이우선 탐색, 너비우선 탐색</title>
			<link>http://funnism.com/35</link>
			<description>&lt;P&gt;깊이우선 탐색과 너비우선 탐색입니다. 구현해보면 재미있으니 소스코드 참조하시기전에 먼저 책보고 한번 구현해보세요...&lt;br /&gt;
내가 풀어보고 남의 것을 보았을때 배울점이나 문제점을 잘 파악할 수 있는것 같습니다.&lt;br /&gt;
&lt;br /&gt;&lt;/P&gt;
&lt;p id=&quot;more35_0&quot; class=&quot;moreless_fold&quot;&gt;&lt;span style=&quot;cursor: pointer;&quot; onclick=&quot;toggleMoreLess(this, &#039;35_0&#039;,&#039;더보기&#039;,&#039;접기&#039;); return false;&quot;&gt;더보기&lt;/span&gt;&lt;/p&gt;&lt;div id=&quot;content35_0&quot; class=&quot;moreless_content&quot; style=&quot;display: none;&quot;&gt;&lt;br /&gt;
&lt;pre class=brush:cpp&gt;
#include&lt;iostream&gt;
#include&lt;queue&gt;
#include&lt;list&gt;
#include&lt;stack&gt;

using namespace std;

void BreadthFirstSearch();
void DepthFirstSearch();
void PrintRoadMap(list&lt;int&gt; roadMap);

int arr[9][9] = {
	{0, 1, 1, 0, 0, 0, 0, 0, 0},
	{1, 0, 0, 1, 1, 0, 0, 0, 0},
	{1, 0, 0, 0, 1, 1, 0, 0, 0},
	{0, 1, 0, 0, 0, 0, 1, 0, 0},
	{0, 1, 1, 0, 0, 0, 1, 1, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1},
	{0, 0, 0, 1, 1, 0, 0, 0, 1},
	{0, 0, 0, 0, 1, 1, 0, 0, 1},
	{0, 0, 0, 0, 0, 0, 1, 1, 0}
};

int main()
{
	cout &lt;&lt; &quot;너비우선 탐색&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;=&gt; &quot;;
	BreadthFirstSearch();
	cout &lt;&lt; endl;

	cout &lt;&lt; &quot;깊이우선 탐색&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;=&gt; &quot;;
	DepthFirstSearch();
	cout &lt;&lt; endl;

	return 0;
}

void BreadthFirstSearch(){
	queue&lt;int&gt; dataQueue;

	dataQueue.push(0);
	list&lt;int&gt; roadMap;
	int chk[9] = {0};
	int i=0;
	chk[i] = 1;
	while(dataQueue.size()){
		i = dataQueue.front();
		dataQueue.pop();
		roadMap.push_back(i+1);
		chk[i] = 1;

		for(int j=0; j &lt; 9; j++){
			if(arr[i][j] == 1){
				if(chk[j] == 0){
					dataQueue.push(j);
					chk[j] = 1;
				}
			}
		}
	}

	PrintRoadMap(roadMap);
}

void DepthFirstSearch(){
	stack&lt;int&gt; dataStack;

	dataStack.push(0);
	list&lt;int&gt; roadMap;
	int chk[9] = {0};
	int i=0;
	chk[i] = 1;
	while(dataStack.size()){
		i = dataStack.top();
		dataStack.pop();
		roadMap.push_back(i+1);
		chk[i] = 1;

		for(int j=8; j &gt; 0; j--){
			if(arr[i][j] == 1){
				if(chk[j] == 0){
					dataStack.push(j);
					chk[j] = 1;
				}
			}
		}
	}

	PrintRoadMap(roadMap);
}

void PrintRoadMap(list&lt;int&gt; roadMap){
	
	list&lt;int&gt;::iterator iter;

	for(iter = roadMap.begin();iter != roadMap.end();iter++){
		cout &lt;&lt; *iter &lt;&lt; &quot; &quot;;
	}
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;P&gt;&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-35-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-35-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-35-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=4413305&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>자료구조&amp;알고리즘</category>
			<category>깊이우선탐색</category>
			<category>너비우선탐색</category>
			<category>알고리즘</category>
			<category>탐색</category>
			<author>태발이</author>
			<guid>http://funnism.com/35</guid>
			<comments>http://funnism.com/35#entry35comment</comments>
			<pubDate>Sat, 10 Oct 2009 15:55:17 +0900</pubDate>
		</item>
		<item>
			<title>큰 수(1000) 팩토리얼 소스</title>
			<link>http://funnism.com/34</link>
			<description>&lt;P&gt;제가 직접 짠 큰 수 팩토리얼을 구하는 소스코드입니다. 최적화나 어떤 알고리즘을 쓴것은 아니고 막코딩입니다.&lt;br /&gt;
10000팩토리얼의 자리수가 3만자리정도 되기때문에 결과값이 저장될 벡터의 크기는 40000으로 잡았습니다. &lt;br /&gt;
더 큰수의 팩토리얼을 구하려면 자리수를 늘려주면 됩니다.&lt;br /&gt;
&lt;br /&gt;하지만 초보자분들이나 안짜보신분들은 꼭 먼저 짜보시고, 성공하신 다음 소스코드를 참조하시기 바랍니다.&lt;br /&gt;
그것이 실력향상의 지름길이니까요...^^&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/P&gt;
&lt;p id=&quot;more34_0&quot; class=&quot;moreless_fold&quot;&gt;&lt;span style=&quot;cursor: pointer;&quot; onclick=&quot;toggleMoreLess(this, &#039;34_0&#039;,&#039;더보기&#039;,&#039;접기&#039;); return false;&quot;&gt;더보기&lt;/span&gt;&lt;/p&gt;&lt;div id=&quot;content34_0&quot; class=&quot;moreless_content&quot; style=&quot;display: none;&quot;&gt;&lt;br /&gt;
&lt;PRE class=brush:cpp&gt;#include &lt;IOSTREAM&gt;
#include &lt;VECTOR&gt;
using namespace std;

int main()
{
	vector&lt;INT&gt;* vecData = new vector&lt;INT&gt;;

	int length = 40000; // 결과값의 자리수

	vecData-&amp;gt;reserve(length);
	vecData-&amp;gt;assign(length, -1);
	int n = 1000;
	int carry = 0;

	(*vecData)[0] = 1;
	int offset = 1;
	for(int i=2;i &amp;lt;= n;i++){
		for(int j=0;j &amp;lt; offset;j++){
			(*vecData)[j] = (*vecData)[j] * i + carry;
			carry = 0;
			if((*vecData)[j] &amp;gt; 9){
				if((*vecData)[j+1] == -1){
					offset++;
					(*vecData)[j+1] = 0;
				}
				carry = (*vecData)[j] / 10;
				(*vecData)[j] = (*vecData)[j] % 10;
			}
		}
	}

	for(int i=0;i &amp;lt; offset;i++){
		cout &amp;lt;&amp;lt; (*vecData)[offset-i-1];
	}

	delete vecData;
	return 0;
}
&lt;/PRE&gt;&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-34-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-34-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-34-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=4412822&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>자료구조&amp;알고리즘</category>
			<category>factorial</category>
			<category>알고리즘</category>
			<category>팩토리얼</category>
			<category>펙토리얼</category>
			<category>프로그래밍</category>
			<author>태발이</author>
			<guid>http://funnism.com/34</guid>
			<comments>http://funnism.com/34#entry34comment</comments>
			<pubDate>Sat, 10 Oct 2009 14:10:24 +0900</pubDate>
		</item>
		<item>
			<title>[STL] Stack과 Queue 사용법</title>
			<link>http://funnism.com/33</link>
			<description>&lt;br /&gt;
제목 그대로 스택과 큐를 사용하는 간단한 소스코드입니다.&lt;br /&gt;
&lt;br /&gt;&lt;PRE class=brush:cpp&gt;#include &lt;IOSTREAM&gt;
#include &lt;STACK&gt;
#include &lt;QUEUE&gt;

using namespace std;

int main()
{
	cout &amp;lt;&amp;lt; &quot;-----------------Stack-----------------&quot; &amp;lt;&amp;lt; endl;

	cout &amp;lt;&amp;lt; endl;

	stack&lt;INT&gt; st;

	st.push(1);
	st.push(2);
	st.push(3);

	int count = st.size();
	for(int i=0; i &amp;lt; count; i++){
		cout &amp;lt;&amp;lt; st.top() &amp;lt;&amp;lt; endl;
		st.pop();
	}

	cout &amp;lt;&amp;lt; endl;
	cout &amp;lt;&amp;lt; endl;

	cout &amp;lt;&amp;lt; &quot;-----------------Queue-----------------&quot; &amp;lt;&amp;lt; endl;

	cout &amp;lt;&amp;lt; endl;

	queue&lt;INT&gt; qu;
	
	qu.push(1);
	qu.push(2);
	qu.push(3);

	count = qu.size();
	for(int i=0; i &amp;lt; count; i++){
		cout &amp;lt;&amp;lt; qu.front() &amp;lt;&amp;lt; endl;
		qu.pop();
	}

	return 0;
}
&lt;/PRE&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-33-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-33-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-33-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=4329428&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>Win32 API &amp; MFC &amp; C/C++</category>
			<category>Queue</category>
			<category>Stack</category>
			<category>STL</category>
			<category>스택</category>
			<category>큐</category>
			<author>태발이</author>
			<guid>http://funnism.com/33</guid>
			<comments>http://funnism.com/33#entry33comment</comments>
			<pubDate>Thu, 01 Oct 2009 00:43:14 +0900</pubDate>
		</item>
		<item>
			<title>이동식 디스크의 데이터를 몰래 가로채는 프로그램</title>
			<link>http://funnism.com/32</link>
			<description>&lt;DIV style=&quot;TEXT-ALIGN: center&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://funnism.tistory.com/attachment/cfile23.uf@185890204AB229436DFE17.zip&quot;&gt;&lt;img src=&quot;http://cfs.tistory.com/blog/image/extension/zip.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; MolaeCopy_Source.zip&lt;/a&gt;&lt;/div&gt;악의적인 사용을 원치 않으니 소스파일만 올리겠습니다.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile21.uf.tistory.com/image/130AA7204AB2274F0577FF&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;몰카.png&quot; height=&quot;419&quot; width=&quot;683&quot;/&gt;&lt;/div&gt;&lt;br /&gt;
&lt;STRONG&gt;&amp;lt; 서버프로그램 스크린샷 &amp;gt;&lt;br /&gt;
&lt;/STRONG&gt;&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/DIV&gt;
&lt;DIV style=&quot;TEXT-ALIGN: justify&quot;&gt;&lt;FONT color=#5c7fb0&gt;&lt;STRONG&gt;개발도구 : Microsoft Visual Studio 2008 SP1&lt;br /&gt;
개발 언어 및 프레임워크 : C/C++ (Win32API와 MFC9.0을 사용하였습니다.)&lt;/STRONG&gt;&lt;/FONT&gt;&lt;br /&gt;
&lt;br /&gt;이 프로그램은 2008년에 정보보호 프로젝트 시간에 제작했던 프로그램입니다. 프로그램의 목적은 교육 및 계몽용으로 정했으나... 일부 악용도 가능하기에 사용자의 양심에 맡기도록 하겠습니다.&lt;br /&gt;
그리고 몰래 카피하는거라지만 컴을 잘 아는사람은 눈치채기가 아주 쉬우니 진짜 악의적인 목적으로 사용하지는 마세요...&lt;br /&gt;
이 프로그램은 우리가 들고다니는 USB메모리가 얼마나 보안에 취약한지 알려주는 한가지 방법입니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;이제 동작방식에 대해서 설명해보겠습니다.&lt;br /&gt;
&lt;/STRONG&gt;1. 프로그램은 서버와 클라이언트로 나뉩니다. 클라이언트는 공격대상 PC에 설치하게 됩니다. 마치 어부가 포인트에 그물을 쳐놓는 심정으로 프로그램을 설치한뒤 먹이감(USB 메모리)이 나타나길 기다리게 됩니다.&lt;br /&gt;
&lt;br /&gt;2. 서버프로그램은 내가 데이터를 받을 컴에 설치해 놓습니다. 클라이언트와 서버는 1대 다 통신이 되겠지요... 이제 서버는 클라이언트로부터 먹이감을 기다리게 됩니다.&lt;br /&gt;
&lt;br /&gt;3. 드디어 클라이언트 PC에 먹이감(USB메모리)이 꽃혔습니다. 클라이언트(이하 클라라 칭하겠습니다.)는 몰래 데이터를 컴퓨터의 하드디스크로 복사합니다. 사용자가 중간에 메모리를 뽑더라도 얻은 자료는 다 전송을 하기 위함입니다. 그리고 복사가 다 되었으면 보내기 좋게 하나의 파일로 압축을 합니다.&lt;br /&gt;
&lt;br /&gt;4. 압축이 다 되었으면 서버에게 먹이감을 전송해줄 준비를 하고, 데이터를 전송합니다. 데이터가 전부 전송이 되면, 복사와 압축파일을 지움으로서 흔적을 없앱니다. 그리고, 다른 먹이감을 기다리게 됩니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;문제점...&lt;/STRONG&gt;&lt;br /&gt;
한번에 3~4개의 메모리를 동시에 꼽는다거나, 데이터가 엄청 많아버리면 CPU점유율이 올라가 금방알아차리게 됩니다. 어차피 악용으로 사용하려는 목적으로 제작된 프로그램은 아니기때문에 자원할당이라던지, 훨씬 비밀리에 복사하는 치밀함은 넣지 않았습니다.&lt;br /&gt;
&lt;br /&gt;&lt;STRONG&gt;시연 동영상&lt;/STRONG&gt;&lt;br /&gt;
&lt;/DIV&gt;
&lt;DIV style=&quot;TEXT-ALIGN: center&quot;&gt;&lt;object type=&quot;application/x-shockwave-flash&quot; classid=&quot;clsid:d27cdb6e-ae6d-11cf-96b8-444553540000&quot; codebase=&quot;http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0&quot; width=&quot;502&quot; height=&quot;399&quot;&gt;
	&lt;param name=&quot;movie&quot; value=&quot;http://flvs.daum.net/flvPlayer.swf?vid=qTyAHuF1pDU%24&amp;amp;pwidth=502&amp;amp;pheight=399&quot;/&gt;
	&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;
	&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;/&gt;
	&lt;param name=&quot;bgcolor&quot; value=&quot;#000000&quot;/&gt;
	&lt;embed src=&quot;http://flvs.daum.net/flvPlayer.swf?vid=qTyAHuF1pDU%24&amp;amp;pwidth=502&amp;amp;pheight=399&quot; width=&quot;502&quot; height=&quot;399&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; type=&quot;application/x-shockwave-flash&quot; bgcolor=&quot;#000000&quot;/&gt;
&lt;/object&gt;
&lt;/DIV&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-32-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-32-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-32-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://cfs.tistory.com/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-news-widget&quot; style=&quot;width: 100%; text-align: center&quot;&gt;
		  				&lt;embed src=&quot;http://api.v.daum.net/static/recombox1.swf?nid=4216340&quot; quality=&quot;high&quot; bgcolor=&quot;#ffffff&quot; width=&quot;400&quot; height=&quot;80&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style=&quot;margin: 10px 0; padding: 0&quot;&gt;&lt;table style=&quot;margin:auto; padding:0; border: none&quot;&gt;&lt;tr&gt;&lt;td align=&quot;center&quot;&gt;&lt;script type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[
var allbletID=&#039;45235&#039;;
var allbletLink=&#039;http://funnism.com/42&#039;;
var allbletTags=&#039;&#039;;
//]]&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://allblet2.allblog.net/allblet2.js&quot;&gt;&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
			<category>MFC</category>
			<category>USB 보안</category>
			<category>USB메모리</category>
			<category>가로채기</category>
			<category>보안</category>
			<category>정보보호</category>
			<category>해킹</category>
			<category>해킹프로그램</category>
			<author>태발이</author>
			<guid>http://funnism.com/32</guid>
			<comments>http://funnism.com/32#entry32comment</comments>
			<pubDate>Thu, 17 Sep 2009 21:37:53 +0900</pubDate>
		</item>
	</channel>
</rss>
