<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Joohyun's BLOG</title>
		<link>http://ppiazi.tistory.com/</link>
		<description>veni, vidi, vici</description>
		<language>ko</language>
		<pubDate>Sun, 18 Mar 2012 00:57:33 +0900</pubDate>
		<generator>Tistory 1.1 (http://www.tistory.com/)</generator>
		<managingEditor>ppiazi</managingEditor>
		<image>
			<title>Joohyun's BLOG</title>
			<url>http://cfile23.uf.tistory.com/image/2014D6194C46FF17D535F5</url>
			<link>http://ppiazi.tistory.com</link>
			<description>veni, vidi, vici</description>
		</image>
		<item>
			<title>VxWorks6.x 개발을 위한 Workbench IDE</title>
			<link>http://ppiazi.tistory.com/entry/VxWorks6x%EC%9A%A9-Workbench-%EA%B0%9C%EB%B0%9C%ED%99%98%EA%B2%BD</link>
			<description>&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;Creative Commons License&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-sa/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이선스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&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-sa/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-sa/&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;permits rdf:resource=&quot;http://web.resource.org/cc/DerivativeWorks&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/ShareAlike&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;/fieldset&gt;Workbench2.4는 Eclipse 3.2 기반으로 이루어져 있었다. 원하는 플러그인이 있다면, Eclipse 3.2용으로 설치하면 바로 사용할 수 있을 것이다.&lt;br /&gt;
(사실 VxWorks6.x가 나온지는 벌써 오래되었다. 기존 프로젝트를 VxWorks5.5와 Tornado로 개발하였고, 최근에 들어서야 비로서 VxWorks6.x대 Workbench교육을 받고 왔기 때문에, 지금에서야 차이점을 확인할 수가 있는 것이다.)&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile1.uf.tistory.com/original/15430C134AEC33D1BDA8D8&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile1.uf.tistory.com/image/15430C134AEC33D1BDA8D8&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;wb.jpg&quot; height=&quot;480&quot; width=&quot;600&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;
1. Project Navigator&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: square;&quot;&gt;
&lt;li&gt;Tornado의 프로젝트 윈도우와는 달리 관련있는 프로젝트를 서브 프로젝트로 등록할 수가 있다.&lt;/li&gt;
&lt;li&gt;Tornado는 Bootable 프로젝트와 Downloadable 프로젝트 두가지 밖에 없었지만, Workbench는 7가지의 프로젝트를 선택할 수 있다.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Bootable Project -&amp;gt; VxWorks Kernel Image Project (VIP Project라고도 한다.)&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Downloadable Project -&amp;gt; Downloadable Kernel Module Project (DKM Project라고도 한다.)&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Tornado의 Downloadable 프로젝트의 경우 프로젝트 선택 우클릭으로 해당 모듈을 타켓으로 다운로드가 가능했지만, Workbench에서는 해당 프로젝트를 펼친후 해당 DKM 결과물을 직접 클릭해야 Download 메뉴가 활성화 된다.&lt;/li&gt;
&lt;li&gt;Bootloader를 위한 프로젝트를 추가할 수 있다.&lt;/li&gt;
&lt;li&gt;RTP 지원으로 인한, Real-Time Process Project 와 해당 이미지를 저장하기 위한 ROM File System Project도 확인 할 수 있었다.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;
2. Source Editor&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: square;&quot;&gt;
&lt;li&gt;Tornado의 충격적인(!!) 소스 에디터에 비하면 완전 양반인 소스 에디터를 사용할 수 있다.&lt;/li&gt;
&lt;li&gt;Vi Editor Plugin과 Emacs Editor Plugin이 기본으로 설치되어 있다.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;
3. Outline&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: square;&quot;&gt;
&lt;li&gt;소스의 전체적인 구조를 확인할 수 있다.&lt;/li&gt;
&lt;li&gt;Windows &amp;gt;&amp;gt; Show View로 원하는 View를 추가하여 개발 Perspective를 꾸밀수도 있다.&lt;/li&gt;
&lt;li&gt;Tornado는 왜그런지 모르지만, 종료하기 전에 꾸며놓은 레이아웃이 초기화되는 오류가 있어서 사용할 때마자 재배치해야하는 고생스러움이 있었다.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;
4. Target Manager&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: square;&quot;&gt;
&lt;li&gt;타켓 서버를 View 하나로 볼수 있다. Tornado에서는 Drop-down메뉴로 구성되어 있어, 타켓 서버 현황을 한눈에 보기가 쉽지가 않았다.&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;타켓 서버와의 Connect와 Disconnect를 할 수 있다. 타켓 서버를 추가하거나 설정하고 싶다면 Target Manager View에서 작업하면 된다.&lt;/li&gt;
&lt;li&gt;Tornado의 Broswer과 같은 별도의 윈도우없이도, Target Manager에서 구동 중인 task들과 RTP등을 확인 할 수가 있다.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;
5. Terminal 0&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: square;&quot;&gt;
&lt;li&gt;개인적으로 좋아하는 터미널 프로그램이 있다면, 사용하지 않아도되는 기능이다.&lt;/li&gt;
&lt;li&gt;Tornado가 설치되어 있음에도 불구하고, 터미널 연결을 위해 다른 프로그램을 구하는 노력을 했던 기억이 있던 개발자들은 환영할 만하다.&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;모든 개발은 툴하나로 할 수 있다는 측면에서 상당히 매력적인 터미널 기능이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;기타&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: square;&quot;&gt;
&lt;li&gt;Eclipse의 다양한 플러그인의 사용가능 -&amp;gt; svn으로 프로젝트를 관리하고 있다면, subversion plugin을 설치하여 사용할 수 있을 것이다.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
이상, 겉핧기식의 Tornado와 Workbench의 차이점을 알아보았다.&lt;br /&gt;
&lt;br /&gt;
개인적으로는 Tornado의 경우 Tcl 스크립트로 원하는 GUI나 타켓의 상황을 볼 수 있는 윈도우를 꾸밀수 있었으나, Workbench는 이런 기능을 구현하기 위해서는 Eclipse Plugin 프로그래밍을 해야하는 어려움이 있어 아쉽다. 파이썬 스크립트(또는 Tcl)로 확장가능한 기능이 있다면 좋을텐데...&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://i1.daumcdn.net/cfs.tistory/v/0/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://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-42-2&quot; class=&quot;entry-ccl-sa&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black04.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-sa/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-sa/&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 style=&quot;text-align:left; padding-top:10px;&quot;&gt;
&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=ppiazi.tistory.com/42&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=310&amp;amp;action=like&amp;amp;font=tahoma&amp;amp;colorscheme=light&amp;amp;height=65&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:310px; height:65px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
</description>
			<category>vxworks</category>
			<category>Tornado</category>
			<category>VxWorks</category>
			<category>workbench</category>
			<category>워크벤치</category>
			<category>토네이도</category>
			<author>ppiazi</author>
			<guid>http://ppiazi.tistory.com/42</guid>
			<comments>http://ppiazi.tistory.com/entry/VxWorks6x%EC%9A%A9-Workbench-%EA%B0%9C%EB%B0%9C%ED%99%98%EA%B2%BD#entry42comment</comments>
			<pubDate>Sat, 31 Oct 2009 12:26:55 +0900</pubDate>
		</item>
		<item>
			<title>pywinauto를 사용하여 윈도우 어플리케이션 제어하기</title>
			<link>http://ppiazi.tistory.com/entry/pywinauto%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EC%9C%88%EB%8F%84%EC%9A%B0-%EC%96%B4%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98-%EC%A0%9C%EC%96%B4%ED%95%98%EA%B8%B0</link>
			<description>&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;Creative Commons License&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-sa/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이선스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&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-sa/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-sa/&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;permits rdf:resource=&quot;http://web.resource.org/cc/DerivativeWorks&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/ShareAlike&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;/fieldset&gt;&lt;br /&gt;
제품 수락검사를 수행하다보면, 자동화 테스팅 툴의 필요함이 절실하다.&lt;br /&gt;
하나만 테스트 하면 모르겠지만 동일 제품을 수십개를 동일한 테스트를 수행해야 할 경우는 더욱더 그렇다!!&lt;br /&gt;
&lt;br /&gt;
이렇게 고민하다 발견한 모듈이 pywinauto 이다. 파이썬 모듈이며, 만든이도 테스팅을 전문으로 하시는 분이다.&lt;br /&gt;
&lt;br /&gt;
사용법은 매우 직관적이고 간단하다.&lt;br /&gt;
&lt;br /&gt;
기존에 떠있는 윈도우에 attach 시키기 위해서는 connect_ 를 사용하면 되고,&lt;br /&gt;
새롭게 실행하려면, start_를 사용하면된다.&lt;br /&gt;
&lt;br /&gt;
&lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://pywinauto.seleniumhq.org/howto.html&quot;&gt;howto문서&lt;/a&gt;가 잘되있어서, 보고 따라하면 금새 사용방법을 알 수 있다.&lt;br /&gt;
&lt;br /&gt;
모든 &lt;a style=&quot;color: rgb(48, 88, 210);&quot; target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://pywinauto.seleniumhq.org/controls_overview.html&quot;&gt;윈도우 컨트롤에 대한 API&lt;/a&gt; 또한 준비되어 있다.&lt;br /&gt;
&lt;br style=&quot;color: rgb(48, 88, 210);&quot;&gt;&lt;a style=&quot;color: rgb(48, 88, 210);&quot; target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://showmedo.com/videos/video?name=UsingpyWinAutoToControlAWindowsApplication&amp;amp;fromSeriesID=7&quot;&gt;이 링크는 동영상으로 Notepad를 pywinauto로 컨트롤하는 과정&lt;/a&gt;을 동영상으로 확인할 수 있다.&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-6-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-6-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.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-fr/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-fr/&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 style=&quot;text-align:left; padding-top:10px;&quot;&gt;
&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=ppiazi.tistory.com/6&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=310&amp;amp;action=like&amp;amp;font=tahoma&amp;amp;colorscheme=light&amp;amp;height=65&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:310px; height:65px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
</description>
			<category>python</category>
			<author>ppiazi</author>
			<guid>http://ppiazi.tistory.com/6</guid>
			<comments>http://ppiazi.tistory.com/entry/pywinauto%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EC%9C%88%EB%8F%84%EC%9A%B0-%EC%96%B4%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98-%EC%A0%9C%EC%96%B4%ED%95%98%EA%B8%B0#entry6comment</comments>
			<pubDate>Thu, 12 Feb 2009 22:52:47 +0900</pubDate>
		</item>
		<item>
			<title>sysctl.conf를 수정하여 스왑 사용빈도 조정하기</title>
			<link>http://ppiazi.tistory.com/entry/sysctlconf%EB%A5%BC-%EC%88%98%EC%A0%95%ED%95%98%EC%97%AC-%EC%8A%A4%EC%99%91-%EC%82%AC%EC%9A%A9%EB%B9%88%EB%8F%84-%EC%A1%B0%EC%A0%95%ED%95%98%EA%B8%B0</link>
			<description>&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;Creative Commons License&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-sa/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이선스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&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-sa/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-sa/&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;permits rdf:resource=&quot;http://web.resource.org/cc/DerivativeWorks&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/ShareAlike&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;/fieldset&gt;&lt;br /&gt;
&lt;p style=&quot;font-weight: bold;&quot;&gt;sudo sysctl -a | grep &quot;vm.swappines&quot;&lt;/p&gt;
&lt;br /&gt;
명령을 사용하여, 현재 리눅스 시스템에서의 스왑 메모리 사용 정책을 알 수 있다.&lt;br /&gt;
&lt;br /&gt;
만약 sysctl 명령이 없는 시스템이라면&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;cat /proc/sys/vm/swappiness&lt;/span&gt;&lt;br /&gt;
로 확인할 수 있다.&lt;br /&gt;
&lt;br /&gt;
0에 가까울수록 스왑 메모리를 덜 사용한다고하고, 100에 가까울수록 스왑 메모리를 사용할 빈도가 높다는 뜻이란다.&lt;br /&gt;
&lt;br /&gt;
런타임에 해당 수치를 바꾸려면 아래와 같이 수정할 수 있다.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;sudo sysctl vm.swappiness=xx&lt;/span&gt;&lt;br /&gt;
(xx는 0 ~ 100 의 숫자)&lt;br /&gt;
&lt;br /&gt;
마찬가지로 sysctl 명령이 없는 시스템이라면&lt;span style=&quot;font-family: monospace; font-weight: bold;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;tt style=&quot;font-weight: bold;&quot;&gt;echo 25 &amp;gt; /proc/sys/vm/swappiness&lt;/tt&gt;&lt;br /&gt;
로 적용할 수 있다.&lt;br /&gt;
&lt;br /&gt;
영구적으로 적용을 하려면 &lt;span style=&quot;font-weight: bold;&quot;&gt;/etc/sysctl.conf&lt;/span&gt; 파일에 vm.swappiness=xx 를 추가하면 된다.&lt;br /&gt;
&lt;br /&gt;
참고로 2 Gb 메모리를 사용하고 있어서, 5로 맞추어서 사용하고 있다.&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-5-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-5-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.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-fr/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-fr/&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 style=&quot;text-align:left; padding-top:10px;&quot;&gt;
&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=ppiazi.tistory.com/5&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=310&amp;amp;action=like&amp;amp;font=tahoma&amp;amp;colorscheme=light&amp;amp;height=65&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:310px; height:65px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
</description>
			<category>linux</category>
			<author>ppiazi</author>
			<guid>http://ppiazi.tistory.com/5</guid>
			<comments>http://ppiazi.tistory.com/entry/sysctlconf%EB%A5%BC-%EC%88%98%EC%A0%95%ED%95%98%EC%97%AC-%EC%8A%A4%EC%99%91-%EC%82%AC%EC%9A%A9%EB%B9%88%EB%8F%84-%EC%A1%B0%EC%A0%95%ED%95%98%EA%B8%B0#entry5comment</comments>
			<pubDate>Thu, 12 Feb 2009 22:50:21 +0900</pubDate>
		</item>
		<item>
			<title>USB에 설치하는 리눅스 - slax</title>
			<link>http://ppiazi.tistory.com/entry/USB%EC%97%90-%EC%84%A4%EC%B9%98%ED%95%98%EB%8A%94-%EB%A6%AC%EB%88%85%EC%8A%A4-slax</link>
			<description>&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;Creative Commons License&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-sa/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이선스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&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-sa/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-sa/&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;permits rdf:resource=&quot;http://web.resource.org/cc/DerivativeWorks&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/ShareAlike&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;/fieldset&gt;&lt;br /&gt;
USB 메모리에 리눅스를 설치하여, 부팅을 할 수 있다.&lt;br /&gt;
&lt;br /&gt;라이브 씨디를 대용하여, 급하게 시스템을 복구한다 거나, PC방과 같은 믿을 수 없는(??) 환경에서 작업을 할 때 사용할 수 있다.&lt;br /&gt;
또한 요즘 보고 있는, &quot;블러디 먼데이&quot; 라는 드라마에서 FALCON 해커처럼,&amp;nbsp; 윈도우 암호를 몰라, 접근을 못 할때 USB 로 리눅스 부팅을 하여 원하는 파일을 빼낼 수도 있다. ^^&lt;br /&gt;
&lt;br /&gt;대체로 속도는 USB 2.0 을 지원한다면, CD보다 빠르다. 그리고 CD와는 달리 write도 가능하다.&lt;br /&gt;
&lt;br /&gt;각설하고, 설치방법은 아래와 같이 매우 간단하다.&lt;br /&gt;
&lt;br /&gt;&lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://www.slax.org/get_slax.php&quot;&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;http://www.slax.org/get_slax.php&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;위의 홈페이에서 USB 용을 다운로드 받아&lt;br /&gt;
&lt;br /&gt;USB 메모리에 압축을 푼다.(tar로 아카이브 되어있다.)&lt;br /&gt;
&lt;br /&gt;압축을 풀면 루트에 /boot 폴더와 /slax 폴더가 생성된다.&lt;br /&gt;
&lt;br /&gt;리눅스에서 작업을 하는 것이라면, 루트 권한으로&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;/boot/bootinst.sh&lt;/span&gt; 를 실행하여 USB 메모리에 부트로더를 설치하면 된다.&lt;br /&gt;
&lt;br /&gt;윈도우에서 작업하는 것이라면&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;/boot/bootinst.bat&lt;/span&gt; 를 실행하면 된다.&lt;br /&gt;
&lt;br /&gt;또한, 자신이 원하는 패키지를 추가할 수도 있다.&lt;br /&gt;
&lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://www.slax.org/build.php&quot;&gt;http://www.slax.org/build.php&lt;/a&gt; &lt;br /&gt;
에서 모듈을 추가하여 사용자가 패키지 구성을 하여, 다운로드 할 수 있다.&lt;br /&gt;
&lt;br /&gt;참고로 난 다음의 패키지를 추가하였다.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;python 2.5.2&lt;/li&gt;
&lt;li&gt;ettercap 0.7.3&lt;/li&gt;
&lt;li&gt;nmap 4.60&lt;br /&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;USB 메모리를 사용하는 것이므로 다음의 사항을 주의해야 한다고 한다.&lt;br /&gt;
(&lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://www.slax.org/documentation_usb_troubleshoot.php&quot;&gt;http://www.slax.org/documentation_usb_troubleshoot.php&lt;/a&gt;)&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;USB 2.0 이상을 지원하는 장치를 사용할 것&lt;/li&gt;
&lt;li&gt;FAT 포맷은 복구가 불가능하고 잘 깨지므로, 저널링이 지원되는 파일 시스템을 사용할 것&lt;/li&gt;
&lt;li&gt;시스템은 반드시 안전하게 종료하면서 사용할 것&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
추가!!&lt;br /&gt;
USB
메모리장치를 ext3로 포맷하고, 리눅스를 설치하였을때는 liloinst.sh 를 사용하여 mbr에 lilo를 설치해야 지만
부팅을 할 수가 있었다. bootinst.sh 를 사용하였을 때는 FAT 에서만 사용가능한 syslinux가 설치되지만, FAT
포맷이 아닌 곳에서는 lilo를 설치해야 한다고 한다. 아직까지(6.0.9)의 lilo 부트로더는 syslinux와 같이
멋있는(??) 부트 메뉴 환경을 지원하지 않는다.&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-4-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-4-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.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-fr/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-fr/&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 style=&quot;text-align:left; padding-top:10px;&quot;&gt;
&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=ppiazi.tistory.com/4&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=310&amp;amp;action=like&amp;amp;font=tahoma&amp;amp;colorscheme=light&amp;amp;height=65&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:310px; height:65px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
</description>
			<category>linux</category>
			<author>ppiazi</author>
			<guid>http://ppiazi.tistory.com/4</guid>
			<comments>http://ppiazi.tistory.com/entry/USB%EC%97%90-%EC%84%A4%EC%B9%98%ED%95%98%EB%8A%94-%EB%A6%AC%EB%88%85%EC%8A%A4-slax#entry4comment</comments>
			<pubDate>Thu, 12 Feb 2009 22:49:27 +0900</pubDate>
		</item>
		<item>
			<title>win32file - Windows에서 파일 속성 확인 및 수정 하는 방법</title>
			<link>http://ppiazi.tistory.com/entry/win32file-Windows%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EC%86%8D%EC%84%B1-%ED%99%95%EC%9D%B8-%EB%B0%8F-%EC%88%98%EC%A0%95-%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95</link>
			<description>&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;Creative Commons License&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-sa/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/kr/&quot; target=&quot;_blank&quot;&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이선스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&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-sa/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-sa/&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;permits rdf:resource=&quot;http://web.resource.org/cc/DerivativeWorks&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/ShareAlike&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;/fieldset&gt;회사 보안 감사 때문에, 암호화되지 않은 문서들 일괄 처리 스크립트를 작성중에 Read-Only 속성 걸린 파일 때문에 골치를 썩었다. (이럴때마다, 난 파이썬의 도움을 받곤한다. ㄳㄳ)
&lt;br /&gt;
간단한 구글링을 통해 아래의 방법으로 Read-Only 속성을 포함한 윈도우 파일 속성을 처리하는 방법을 아래와 같이 정리한다.&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot;&gt;
&lt;li&gt;Win32 Extension for Python을 설치한다.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://starship.python.net/%7Eskippy/win32/Downloads.html&quot;&gt;http://starship.python.net/~skippy/win32/Downloads.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;사용되는 API는 다음과 같다.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;win32file.GetFileAttributes(file_name)&lt;/li&gt;
&lt;li&gt;win32file.SetFileAttributes(file_name, new_fattr)&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;사용되는 속성들은 다음과 같다.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_ARCHIVE&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_OFFLINE&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_COMPRESSED&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_READONLY&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_DIRECTORY&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_SYSTEM&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_HIDDEN&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_TEMPORARY&lt;/li&gt;
&lt;li&gt;win32file.FILE_ATTRIBUTE_NORMAL&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Read-Only 속성을 가지고 있는지 확인하는 예제&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;margin-left: 4em;&quot;&gt;
&lt;div style=&quot;border: 3px double rgb(203, 203, 203); padding: 10px; background-color: rgb(255, 255, 255);&quot; class=&quot;txc-textbox&quot;&gt;def isReadOnly(file):&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; fattr = win32file.GetFileAttributes(file)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ret = fattr &amp;amp; win32file.FILE_ATTRIBUTE_READONLY&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if ret == win32file.FILE_ATTRIBUTE_READONLY:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return True&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return False&lt;/div&gt;
&lt;/div&gt;&lt;ul style=&quot;list-style-type: disc;&quot;&gt;
&lt;li&gt;Read-Only를 설정하는 예제&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;margin-left: 4em;&quot;&gt;&lt;div style=&quot;border: 3px double rgb(203, 203, 203); padding: 10px; background-color: rgb(255, 255, 255);&quot; class=&quot;txc-textbox&quot;&gt;
def setReadOnly(file):&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; fattr = win32file.GetFileAttributes(file)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; new_fattr = fattr | win32file.FILE_ATTRIBUTE_READONLY&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; win32file.SetFileAttributes(file, new_fattr)&lt;/div&gt;
&lt;/div&gt;&lt;ul style=&quot;list-style-type: disc;&quot;&gt;
&lt;li&gt;Read-Only를 해제하는 예제&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;margin-left: 4em;&quot;&gt;&lt;div style=&quot;border: 3px double rgb(203, 203, 203); padding: 10px; background-color: rgb(255, 255, 255);&quot; class=&quot;txc-textbox&quot;&gt;
def unsetReadOnly(file):&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; fattr = win32file.GetFileAttributes(file)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; mask = 0xFFFF^win32file.FILE_ATTRIBUTE_READONLY&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; new_fattr = fattr &amp;amp; mask&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; win32file.SetFileAttributes(file, new_fattr)&lt;/div&gt;
&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;다른 파일 속성들도 위의 방법과 같이 적용하면 된다.&lt;br /&gt;
&lt;br /&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-3-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-3-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.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-fr/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-fr/&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 style=&quot;text-align:left; padding-top:10px;&quot;&gt;
&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=ppiazi.tistory.com/3&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=310&amp;amp;action=like&amp;amp;font=tahoma&amp;amp;colorscheme=light&amp;amp;height=65&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:310px; height:65px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
</description>
			<category>python</category>
			<category>Python</category>
			<category>win32file</category>
			<author>ppiazi</author>
			<guid>http://ppiazi.tistory.com/3</guid>
			<comments>http://ppiazi.tistory.com/entry/win32file-Windows%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EC%86%8D%EC%84%B1-%ED%99%95%EC%9D%B8-%EB%B0%8F-%EC%88%98%EC%A0%95-%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95#entry3comment</comments>
			<pubDate>Thu, 12 Feb 2009 22:47:42 +0900</pubDate>
		</item>
	</channel>
</rss>
