<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>MOLOKINI</title>
    <link>https://wonjayk.tistory.com/</link>
    <description>자동차, Graphics, AR/VR, OS, Windows Driver, Programming</description>
    <language>ko</language>
    <pubDate>Thu, 28 May 2026 21:50:59 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>MOLOKINI</managingEditor>
    <image>
      <title>MOLOKINI</title>
      <url>https://t1.daumcdn.net/cfile/tistory/25759A385406F48929</url>
      <link>https://wonjayk.tistory.com</link>
    </image>
    <item>
      <title>스팅어 벤풍구 DIY - 순정 송풍구 탈거</title>
      <link>https://wonjayk.tistory.com/292</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;&amp;nbsp;스팅어의 송풍구에는 벤츠 차량의 송풍구가 딱 들어맞습니다.&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스팅어 차량을 가지신 분이라면 한번쯤?은 생각해봤을만한 벤풍구! 제가 직접 달아봤습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 스팅어 마이스터 차량을 대상으로 하고 순정과 송풍구 엠비언트의 색상을 연동하는 방식입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20241011_094137.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MVWgJ/btsLJLweenp/tc2WbxUdiEJOkBih9umIB1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MVWgJ/btsLJLweenp/tc2WbxUdiEJOkBih9umIB1/img.jpg&quot; data-alt=&quot;순정 송풍구&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MVWgJ/btsLJLweenp/tc2WbxUdiEJOkBih9umIB1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMVWgJ%2FbtsLJLweenp%2Ftc2WbxUdiEJOkBih9umIB1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;2252&quot; data-filename=&quot;20241011_094137.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;순정 송풍구&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20241023_022124.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;1868&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dcuzj6/btsLI5IVPOS/ytVq2CH7Cn2LXnlogncBk0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dcuzj6/btsLI5IVPOS/ytVq2CH7Cn2LXnlogncBk0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dcuzj6/btsLI5IVPOS/ytVq2CH7Cn2LXnlogncBk0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdcuzj6%2FbtsLI5IVPOS%2FytVq2CH7Cn2LXnlogncBk0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;1868&quot; data-filename=&quot;20241023_022124.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;1868&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20241023_092351.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;1868&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbA58R/btsLKLhPwRL/hx1XqDM73GcHTpy73dory0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbA58R/btsLKLhPwRL/hx1XqDM73GcHTpy73dory0/img.jpg&quot; data-alt=&quot;벤풍구&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbA58R/btsLKLhPwRL/hx1XqDM73GcHTpy73dory0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbA58R%2FbtsLKLhPwRL%2Fhx1XqDM73GcHTpy73dory0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;1868&quot; data-filename=&quot;20241023_092351.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;1868&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;벤풍구&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;작업 과정은 아래와 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. 순정 송풍구(이하 송풍구) 탈거&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 벤츠 송풍구(이하 벤풍구) 가공&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 엠비언트 전선 브릿지(연결) 작업&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 벤풍구 장착&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4개의 작업 중 &lt;b&gt;&quot;1. 순정 송풍구 탈거&quot;&lt;/b&gt; 과정에 대해서 포스팅 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot;&gt;&lt;/script&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;송풍구 구매&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;송풍구는 아래 링크의 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #ffffff; text-align: start;&quot;&gt;W205 EQS Front Vents,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; text-align: start;&quot;&gt;CN &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;background-color: #ffffff; text-align: start;&quot;&gt;을 구매했습니다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://ko.aliexpress.com/item/1005005393583771.html?spm=a2g0o.order_list.order_list_main.5.4364140fQCWUU0&amp;amp;gatewayAdapt=glo2kor&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://ko.aliexpress.com/item/1005005393583771.html?spm=a2g0o.order_list.order_list_main.5.4364140fQCWUU0&amp;amp;gatewayAdapt=glo2kor&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- W205 EQS 송풍구 말고 W176 벤풍구를 많이 하시는데 W176이 더 쉽다고 합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 혹시 링크가 안된다면, 알리익스프레스에서 W205 EQS 송풍구 구매하시면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;센터페시아 탈거&lt;/b&gt;&lt;/h3&gt;
&lt;pre id=&quot;code_1737620943786&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;1. 조수석 문을 열고 차체 쪽의 고무패킹(??)을 탈거 후 우측면의 플라스틱 커버 탈거
2. 사진의 동그라미 친 부분의 나사 풀기
3. 2.번의 나사를 풀어준 부분의 플라스틱을 조수석 쪽으로 잡아당겨서 센터페시아 하단의 긴 플라스틱 커버를 탈거
4. 엔진 시동 버튼 하단에 있는 커버를 분리하거나 걸개(?)만 분리
5. 센터페시아 하단의 나사 4개 풀기
6. 센터페시아를 잡아당겨 탈거
7. 우측의 엠비언트, 에어백 커넥터를 센터페시아에서 제거
8. 엔진 시동 버튼 커넥터 탈거 후 나사 풀기, 커넥터 다시 연결&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;1. 조수석 문을 열고 차체 쪽의 고무패킹(??)을 탈거 후 우측면의 플라스틱 커버 탈거&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1124&quot; data-origin-height=&quot;809&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SKu2P/btsMgH1HcN5/AxQR6rWVNVkfNrGefpjqQ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SKu2P/btsMgH1HcN5/AxQR6rWVNVkfNrGefpjqQ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SKu2P/btsMgH1HcN5/AxQR6rWVNVkfNrGefpjqQ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSKu2P%2FbtsMgH1HcN5%2FAxQR6rWVNVkfNrGefpjqQ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1124&quot; height=&quot;809&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1124&quot; data-origin-height=&quot;809&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;① 검정색 고무를 몸쪽으로 잡아당겨서 차체 프레임에서 떼어내기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;② 글로브박스를 열고, 플라스틱 커버를 헤라 혹은 일자드라이버 같은 도구로 분리하기&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2.&amp;nbsp;사진의&amp;nbsp;동그라미&amp;nbsp;친&amp;nbsp;부분의&amp;nbsp;나사&amp;nbsp;풀기&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;508&quot; data-origin-height=&quot;300&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BcCxq/btsMi0LO3fc/iOavlv6lCE1rA9wusKI740/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BcCxq/btsMi0LO3fc/iOavlv6lCE1rA9wusKI740/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BcCxq/btsMi0LO3fc/iOavlv6lCE1rA9wusKI740/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBcCxq%2FbtsMi0LO3fc%2FiOavlv6lCE1rA9wusKI740%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;508&quot; height=&quot;300&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;508&quot; data-origin-height=&quot;300&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3. 2.번의 나사를 풀어준 부분의 플라스틱을 조수석 쪽으로 잡아당겨서 센터페시아 하단의 긴 플라스틱 커버를 탈거&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;456&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kThWF/btsMipL1wXt/24Umdqm6cqkmEUhYntajtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kThWF/btsMipL1wXt/24Umdqm6cqkmEUhYntajtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kThWF/btsMipL1wXt/24Umdqm6cqkmEUhYntajtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkThWF%2FbtsMipL1wXt%2F24Umdqm6cqkmEUhYntajtK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1650&quot; height=&quot;456&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;456&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 하단의 길쭉한 플라스틱을 탈거한 모습 : 플라스틱 커버가 탈거되어 센터페시아 나사 체결부가 노출된 상태(빨간 동그라미) 참고&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;4. 엔진 시동 버튼 하단에 있는 커버를 분리하거나 걸개(?)만 분리&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;929&quot; data-origin-height=&quot;883&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cMkdIF/btsMhLPFoSf/GRAkC38L14DoUPFTsrkQ3K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cMkdIF/btsMhLPFoSf/GRAkC38L14DoUPFTsrkQ3K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cMkdIF/btsMhLPFoSf/GRAkC38L14DoUPFTsrkQ3K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcMkdIF%2FbtsMhLPFoSf%2FGRAkC38L14DoUPFTsrkQ3K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;929&quot; height=&quot;883&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;929&quot; data-origin-height=&quot;883&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 핸들 아래의 플라스틱 커버 전체를 탈거하거나, 저는 센터페시아 체결 부의 걸개 2개(사진의 동그라미)만 잡아당겨 탈거&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;5. 센터페시아 하단의 나사 4개 풀기&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;456&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bhyuDR/btsMiwdl0RN/Hqt9kVkRJt6h9PkIcZxAKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bhyuDR/btsMiwdl0RN/Hqt9kVkRJt6h9PkIcZxAKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bhyuDR/btsMiwdl0RN/Hqt9kVkRJt6h9PkIcZxAKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhyuDR%2FbtsMiwdl0RN%2FHqt9kVkRJt6h9PkIcZxAKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1650&quot; height=&quot;456&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;456&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 빨간색 동그라미 친 부분의 나사 4개를 모두 풀기&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;6. 센터페시아를 잡아당겨 탈거&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.jpg&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;730&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d1Zagz/btsMiabINki/b45EBKoM7YH9K9oVwqNRKk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d1Zagz/btsMiabINki/b45EBKoM7YH9K9oVwqNRKk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d1Zagz/btsMiabINki/b45EBKoM7YH9K9oVwqNRKk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd1Zagz%2FbtsMiabINki%2Fb45EBKoM7YH9K9oVwqNRKk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1650&quot; height=&quot;730&quot; data-filename=&quot;3.jpg&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;730&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;7. 우측의 엠비언트, 에어백 커넥터를 센터페시아에서 제거&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;516&quot; data-origin-height=&quot;320&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IXRoE/btsMiEDxn6o/EuDvbgXgxs4rYJEHBnzIik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IXRoE/btsMiEDxn6o/EuDvbgXgxs4rYJEHBnzIik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IXRoE/btsMiEDxn6o/EuDvbgXgxs4rYJEHBnzIik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIXRoE%2FbtsMiEDxn6o%2FEuDvbgXgxs4rYJEHBnzIik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;516&quot; height=&quot;320&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;516&quot; data-origin-height=&quot;320&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 센터페시아를 분리하면 엠비언트와 에어백 커넥터가 우측에 연결되어있는데, 이 두개를 모두 탈거&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;8. 엔진 시동 버튼 커넥터 탈거 후 나사 풀기, 커넥터 다시 연결&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;8.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;504&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eaBZuf/btsMjoNCh4A/fDYiby90jYk8KrQhL7rCB0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eaBZuf/btsMjoNCh4A/fDYiby90jYk8KrQhL7rCB0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eaBZuf/btsMjoNCh4A/fDYiby90jYk8KrQhL7rCB0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeaBZuf%2FbtsMjoNCh4A%2FfDYiby90jYk8KrQhL7rCB0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1650&quot; height=&quot;504&quot; data-filename=&quot;8.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;504&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 탈거한 센터페시아의 빨간색 동그라미 부분에 엔진 시동 버튼이 있는데, 나사 세개 풀고 커넥터도 탈거&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.jpg&quot; data-origin-width=&quot;580&quot; data-origin-height=&quot;613&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dBtZzm/btsMh86ao1e/lRmCKvpYrwxtCTDBnwUrfk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dBtZzm/btsMh86ao1e/lRmCKvpYrwxtCTDBnwUrfk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dBtZzm/btsMh86ao1e/lRmCKvpYrwxtCTDBnwUrfk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdBtZzm%2FbtsMh86ao1e%2FlRmCKvpYrwxtCTDBnwUrfk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;370&quot; height=&quot;391&quot; data-filename=&quot;4.jpg&quot; data-origin-width=&quot;580&quot; data-origin-height=&quot;613&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- (선택사항) 탈거한 엔진 시동 버튼을 커넥터에 연결&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_20241015_093306.jpg&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1689&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXMyKV/btsMjMm8pKc/JDcrqGtpxauxplkjUfUa5K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXMyKV/btsMjMm8pKc/JDcrqGtpxauxplkjUfUa5K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXMyKV/btsMjMm8pKc/JDcrqGtpxauxplkjUfUa5K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXMyKV%2FbtsMjMm8pKc%2FJDcrqGtpxauxplkjUfUa5K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;1689&quot; data-filename=&quot;edited_20241015_093306.jpg&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1689&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 엔진 시동 버튼을 연결해두었다면, 센터페시아 탈거한 상태로 주행 가능&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;송풍구 탈거&lt;/b&gt;&lt;/h3&gt;
&lt;pre id=&quot;code_1737621622220&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;1. 탈거한 센터페시아에서 송풍구 가이드의 나사 모두 풀어 적출
2. 일자 드라이버를 이용해 송풍구와 가이드를 분리&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;1. 탈거한 센터페시아에서 송풍구 가이드의 나사 모두 풀어 적출&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;9.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;504&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pX3Dg/btsMjKCSZFi/kGR8q4coalP77rcP5qwbK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pX3Dg/btsMjKCSZFi/kGR8q4coalP77rcP5qwbK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pX3Dg/btsMjKCSZFi/kGR8q4coalP77rcP5qwbK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpX3Dg%2FbtsMjKCSZFi%2FkGR8q4coalP77rcP5qwbK1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1650&quot; height=&quot;504&quot; data-filename=&quot;9.png&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;504&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 순정 송풍구를 연결하고 있는 8개의 나사를 모두 풀어주기&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.jpg&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;542&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/N31jv/btsMiFo3dyd/nAZ9SiKoonnVMjKM0WFO00/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/N31jv/btsMiFo3dyd/nAZ9SiKoonnVMjKM0WFO00/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/N31jv/btsMiFo3dyd/nAZ9SiKoonnVMjKM0WFO00/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FN31jv%2FbtsMiFo3dyd%2FnAZ9SiKoonnVMjKM0WFO00%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1650&quot; height=&quot;542&quot; data-filename=&quot;5.jpg&quot; data-origin-width=&quot;1650&quot; data-origin-height=&quot;542&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2. 일자 드라이버를 이용해 송풍구와 가이드를 분리&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1160&quot; data-origin-height=&quot;714&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dHeUGh/btsMihhIdYI/rduD2AWVFWbEj4YalpWTk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dHeUGh/btsMihhIdYI/rduD2AWVFWbEj4YalpWTk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dHeUGh/btsMihhIdYI/rduD2AWVFWbEj4YalpWTk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdHeUGh%2FbtsMihhIdYI%2FrduD2AWVFWbEj4YalpWTk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1160&quot; height=&quot;714&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1160&quot; data-origin-height=&quot;714&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;① 송풍구와 연결된 부분은 누르고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;② 송풍구 가이드와 연결된 부분은 바깥쪽으로 당기면서 송풍구와 송풍구 가이드를 분리&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게해서 송풍구 3개를 가이드와 분리하면 순정 송풍구 탈거 작업이 끝납니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이어서 송풍구를 가공하는 과정을 포스팅 하겠습니다.&lt;/p&gt;</description>
      <category>자동차/DIY</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/292</guid>
      <comments>https://wonjayk.tistory.com/292#entry292comment</comments>
      <pubDate>Fri, 14 Feb 2025 15:53:05 +0900</pubDate>
    </item>
    <item>
      <title>스팅어 HUD DIY</title>
      <link>https://wonjayk.tistory.com/291</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;차량을 출고 할 적에 HUD를 넣지 않고 출고했었는데요,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;달리다 문득 HUD가 있었으면 좋겠다는 생각에 HUD를 사서 장착해보기로 했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot;&gt;&lt;/script&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사제 HUD를 검색해 보시면 &lt;b&gt;GPS, OBD&lt;/b&gt; 2종류가 있습니다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 77px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;&lt;b&gt;특징&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;&lt;b&gt;GPS&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;&lt;b&gt;OBD&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;속도 측정 방식&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;GPS 신호 수신&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;차량으로부터 직접 수신&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;RPM 수신 여부&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;X&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 20px;&quot;&gt;O&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;터널, 지하 속도 표현&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;X&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;O&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;속도 표시의 정확도&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;비교적 낮음&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;비교적 높음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;연결선&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;전원&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;전원, OBD 단자&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 면에서 OBD 방식의 HUD가 더 좋지만, 저는 &lt;b&gt;GPS&lt;/b&gt; 방식을 구매해서 장착했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저는, 이전에 쉐보레 말리부 차량에 OBD 방식의 HUD를 사용했었는데, 차량 배터리가 방전되는 현상을 자주 겪고 탈거했던 경험이 있어서 GPS로 구매했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본인 상황에 맞게 선택하시면 되겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1. 퓨즈박스 확인, 전원 연결&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPS 버전이기 때문에 전원만 연결해주면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전원은 2개의 선으로 구성되어있는데, 전원선, 접지선입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전원선은 운전석 하단에 있는 퓨즈박스 뚜껑을 탈거해 IG2 예비전원에 연결하고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- IG2 예비전원은 시동을 끄면 전원이 끊어집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;접지선은 아래 그림의 붉은색 동그라미 쳐진 곳에 그라운드(접지)선을 연결합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 그라운드선은 육각 볼트 중 아무데나 연결하셔도 무방합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_20240528＿221117.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;1748&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbC91y/btsKDxyo5kA/08b7x4kjR1PlDDnbeA4W01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbC91y/btsKDxyo5kA/08b7x4kjR1PlDDnbeA4W01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbC91y/btsKDxyo5kA/08b7x4kjR1PlDDnbeA4W01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbC91y%2FbtsKDxyo5kA%2F08b7x4kjR1PlDDnbeA4W01%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;1748&quot; data-filename=&quot;edited_20240528＿221117.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;1748&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;2. 선 정리&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240603＿182126.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kUcXB/btsKDsjOaal/KYUR1hBjpCGj6rK3p3X7wk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kUcXB/btsKDsjOaal/KYUR1hBjpCGj6rK3p3X7wk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kUcXB/btsKDsjOaal/KYUR1hBjpCGj6rK3p3X7wk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkUcXB%2FbtsKDsjOaal%2FKYUR1hBjpCGj6rK3p3X7wk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;2274&quot; data-filename=&quot;20240603＿182126.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저의 경우엔 위의 사진처럼 커버를 살짝 뜯어서 A필러와 운전석 도어쪽 고무사이로 전원선을 뺐습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고, 이 전원선을 앞유리와 대시보드 사이의 공간으로 밀어넣어서 깔끔하게 정리했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데, 선 매립은 블랙박스 설치하듯 A필러 안으로 선을 매립해서 대시보드쪽으로 빼내셔도 무방합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;3. HUD 장착&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240529＿175808.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;721&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c23lG7/btsKDezrdqg/6K4DstbirKHCM8F2hMZh8k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c23lG7/btsKDezrdqg/6K4DstbirKHCM8F2hMZh8k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c23lG7/btsKDezrdqg/6K4DstbirKHCM8F2hMZh8k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc23lG7%2FbtsKDezrdqg%2F6K4DstbirKHCM8F2hMZh8k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;721&quot; data-filename=&quot;20240529＿175808.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;721&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전원선을 앞유리와 대시보드 사이의 공간으로 밀어넣은 덕분에 HUD와 전원선 끝부분만 노출되어 깔끔하게 정리된걸 확인하실 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞유리가 썬팅이 되어있다면 HUD 전용 반사판을 붙이지 않더라도 낮이고 밤이고 잘 보입니다!&lt;/p&gt;</description>
      <category>자동차/DIY</category>
      <category>DIY</category>
      <category>HUD</category>
      <category>스팅어</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/291</guid>
      <comments>https://wonjayk.tistory.com/291#entry291comment</comments>
      <pubDate>Sun, 10 Nov 2024 00:03:37 +0900</pubDate>
    </item>
    <item>
      <title>스팅어 콘솔 랩핑</title>
      <link>https://wonjayk.tistory.com/290</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;스팅어가 단종을 앞두고, 한정판 트리뷰트 차량이 나왔습니다.(23년 초)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단종된다기에 뭔가에 홀린듯 신차로 구매(23년 3월 출고) 를 했지만,, 트리뷰트는 총알이 부족한 관계로 출고하지 못했었는데요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 부족함을 달래보고자 콘솔을 손수 랩핑했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선, 트리뷰트 실내는 요렇습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6816462_1003163_4627.jpg&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;367&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o7n3W/btsKo8MiMLm/1DKf56SvdAAbWbbFxWEwm0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o7n3W/btsKo8MiMLm/1DKf56SvdAAbWbbFxWEwm0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o7n3W/btsKo8MiMLm/1DKf56SvdAAbWbbFxWEwm0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo7n3W%2FbtsKo8MiMLm%2F1DKf56SvdAAbWbbFxWEwm0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;367&quot; data-filename=&quot;6816462_1003163_4627.jpg&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;367&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 사진의 붉은색 동그라미 부분이 기본 알루미늄으로 되어있는데, 이걸 카본 랩핑지로 랩핑할겁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1. 콘솔 탈거&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240220＿174701.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bp1hL6/btsKoTPmC9S/5coNNC8gkLVhikBHLVznk1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bp1hL6/btsKoTPmC9S/5coNNC8gkLVhikBHLVznk1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bp1hL6/btsKoTPmC9S/5coNNC8gkLVhikBHLVznk1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbp1hL6%2FbtsKoTPmC9S%2F5coNNC8gkLVhikBHLVznk1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;706&quot; height=&quot;1254&quot; data-filename=&quot;20240220＿174701.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 콘솔을 탈거합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 사진의 &lt;b&gt;휴대폰 충전 커버를 연 상태&lt;/b&gt;에서, &lt;b&gt;붉은색 동그라미 쳐진 부분&lt;/b&gt;을 힘으로 들어내면 콘솔이 떨어져 나옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞부분이 떨어지면 옆부분까지 천천히 당기면 콘솔이 분리됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분리한 콘솔의 뒷면을 보면 사이드브레이크쪽에 커넥터가 하나 있는데 그것까지 당겨서 빼냅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240220＿182757.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nn8hY/btsKph97TKI/BJ3Pf0aKQsATUGYmGLLzqk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nn8hY/btsKph97TKI/BJ3Pf0aKQsATUGYmGLLzqk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nn8hY/btsKph97TKI/BJ3Pf0aKQsATUGYmGLLzqk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fnn8hY%2FbtsKph97TKI%2FBJ3Pf0aKQsATUGYmGLLzqk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;707&quot; height=&quot;1256&quot; data-filename=&quot;20240220＿182757.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요렇게 콘솔 상판을 들어낼 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;2. 분해&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1708780290234.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2023&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NJGlv/btsKpmp2L4b/ZfazRhAgIeMHzxkHPK85U1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NJGlv/btsKpmp2L4b/ZfazRhAgIeMHzxkHPK85U1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NJGlv/btsKpmp2L4b/ZfazRhAgIeMHzxkHPK85U1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNJGlv%2FbtsKpmp2L4b%2FZfazRhAgIeMHzxkHPK85U1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;707&quot; height=&quot;1117&quot; data-filename=&quot;1708780290234.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2023&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;컵홀더, 사이드브레이크 버튼, 엉뜨(??)버튼들을 모두 드라이버를 사용해 분리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 랩핑지를 &lt;b&gt;알루미늄 프레임&lt;/b&gt;과 &lt;b&gt;컵홀더 뚜껑&lt;/b&gt;에 발라줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랩핑지 작업은 &lt;b&gt;히팅건&lt;/b&gt;으로 열을 가해주면서 굴곡이 있는 부분들을 마무리 해주시면 되고, 없으시다면 &lt;b&gt;드라이기&lt;/b&gt; 혹은 &lt;b&gt;라이터&lt;/b&gt;를 사용하셔도 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제가 써본 랩핑지는 두 종류가 있는데, 아래 표로 특징을 정리했으니 잘 판단해서 사용하시면 되겠습니다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 134px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 14.1473%; text-align: center; height: 20px;&quot;&gt;&lt;b&gt;항목&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 40.5426%; text-align: center; height: 20px;&quot;&gt;&lt;b&gt;에이버리 슈프림 무광 카본&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 45.31%; text-align: center; height: 20px;&quot;&gt;&lt;b&gt;제트비 무광 카본&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 14.1473%; height: 17px; text-align: center;&quot;&gt;작업성&lt;/td&gt;
&lt;td style=&quot;width: 40.5426%; height: 17px; text-align: justify;&quot;&gt;매우 좋음&lt;br /&gt;- 라이터 없이도 작업 가능한 수준&lt;/td&gt;
&lt;td style=&quot;width: 45.31%; height: 17px; text-align: justify;&quot;&gt;매우 어려움&lt;br /&gt;- 랩핑지 자체가 뻣뻣해서 열처리 필수&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 40px;&quot;&gt;
&lt;td style=&quot;width: 14.1473%; text-align: center; height: 40px;&quot;&gt;유지력&lt;/td&gt;
&lt;td style=&quot;width: 40.5426%; text-align: justify; height: 40px;&quot;&gt;좋음&lt;br /&gt;- 랩핑지가 유연하고 잘 늘어나서 붙은 상태가 오래도록 유지 됨&lt;/td&gt;
&lt;td style=&quot;width: 45.31%; text-align: justify; height: 40px;&quot;&gt;비교적 나쁨&lt;br /&gt;- 뻣뻣해서 열처리를 충분히 하지 않으면 시공 후에도 랩핑지가 들뜸&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 14.1473%; height: 17px; text-align: center;&quot;&gt;내구성&lt;/td&gt;
&lt;td style=&quot;width: 40.5426%; height: 17px; text-align: justify;&quot;&gt;비교적 나쁨&lt;/td&gt;
&lt;td style=&quot;width: 45.31%; height: 17px; text-align: justify;&quot;&gt;좋음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 14.1473%; text-align: center; height: 20px;&quot;&gt;방오성&lt;/td&gt;
&lt;td style=&quot;width: 40.5426%; text-align: justify; height: 20px;&quot;&gt;손때가 잘 타는 편&lt;/td&gt;
&lt;td style=&quot;width: 45.31%; text-align: justify; height: 20px;&quot;&gt;손때가 안타는 편&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 14.1473%; text-align: center; height: 20px;&quot;&gt;가격&lt;/td&gt;
&lt;td style=&quot;width: 40.5426%; text-align: justify; height: 20px;&quot;&gt;약 6,000원(10cm * 152cm)&lt;/td&gt;
&lt;td style=&quot;width: 45.31%; text-align: justify; height: 20px;&quot;&gt;약 850원(10cm * 110cm)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초심자라면 &lt;b&gt;에이버리&lt;/b&gt;를 추천드리고 랩핑 잘하시는 분, 금손이시면 제트비를 추천드립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;3. 작업 결과&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240221＿020321.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/br4Bs8/btsKo6VeLaC/AjMV8r7F57qpEGMRsK7A90/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/br4Bs8/btsKo6VeLaC/AjMV8r7F57qpEGMRsK7A90/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/br4Bs8/btsKo6VeLaC/AjMV8r7F57qpEGMRsK7A90/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbr4Bs8%2FbtsKo6VeLaC%2FAjMV8r7F57qpEGMRsK7A90%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;707&quot; height=&quot;1256&quot; data-filename=&quot;20240221＿020321.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저의 경우엔 제트비 랩핑지로 작업했는데 자세히 보면 마감이 들뜬 부분들이 있기는 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제트비가 작업이 힘들고 결과물이 에이버리에 비해 좋지 않지만 가격이 저렴하고 손때가 잘 타지 않는 장점이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랩핑을 마친 후 분해했던 컵홀더, 사이드 브레이크 버튼 등등을 원래대로 조립합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;4. 조립(원상복구)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240221＿024028.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cu8Hym/btsKpsp23eK/S2XVQE55e5mgmJY2fBgK81/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cu8Hym/btsKpsp23eK/S2XVQE55e5mgmJY2fBgK81/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cu8Hym/btsKpsp23eK/S2XVQE55e5mgmJY2fBgK81/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcu8Hym%2FbtsKpsp23eK%2FS2XVQE55e5mgmJY2fBgK81%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;707&quot; height=&quot;1256&quot; data-filename=&quot;20240221＿024028.jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;2274&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조립은 분해의 역순!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;휴대폰 충전부 또한 분리가 가능한데, 저의 경우는 분리하지 않은 상태에서 랩핑지를 재단해서 붙였습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것으로 저렴하게 스팅어 한정판! 트리뷰트 분위기를 내봤습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot;&gt;&lt;/script&gt;</description>
      <category>자동차/DIY</category>
      <category>DIY</category>
      <category>랩핑</category>
      <category>스팅어</category>
      <category>콘솔</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/290</guid>
      <comments>https://wonjayk.tistory.com/290#entry290comment</comments>
      <pubDate>Wed, 30 Oct 2024 01:30:03 +0900</pubDate>
    </item>
    <item>
      <title>잡 (Job) - 프로세스 제약사항 설정 2</title>
      <link>https://wonjayk.tistory.com/289</link>
      <description>&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잡에 대한 프로세스 제약사항 설정 방법 중&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- JobObjectExtendedLimitInformation&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- JobObjectBasicUIRestrictions&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- JobObjectSecurityLimitInformation&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에 대해 알아보도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;JobObjectExtendedLimitInformation&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/27219E3B574915012B&quot; width=&quot;620&quot; height=&quot;163&quot; data-phocus-index=&quot;0&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;614&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;&amp;nbsp;멤버&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;기능&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;BasicLimitInformation&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;BasicLimitInformation 구조체&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- 이전 포스팅 참고&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;IoInfo&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;사용하지 않음&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;ProcessMemoryLimit&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;잡 내의 한 프로세스가 사용할 수 있는 최대 메모리 사용량을 결정&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- BasicLimitInformation 구조체의 LimitFlag에 JOB_OBJECT_LIMIT_PROCESS_MEMORY 플래그가 세팅되어 있어야 함&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JobMemoryLimit&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;잡 전체에서 커밋될 수 있는 최대 메모리 사용량을 결정&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- BasicLimitInformation 구조체의 LimitFlag에 JOB_OBJECT_LIMIT_JOB_MEMORY 플래그가 세팅되어 있어야 함&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;PeakProcessMemoryUsed&lt;/span&gt;&lt;/td&gt;
&lt;td rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;현재&amp;nbsp;잡 내의 한 프로세스가 사용할 수 있는 최대 메모리 사용량을 리턴&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;PeakJobMemoryUsed&lt;/span&gt;&lt;/td&gt;
&lt;td rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;현재 잡 전체가 사용할 수 있는 최대 메모리 사용량을 리턴&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;b&gt;JobObjectBasicUIRestrictions&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/23559D4157491A3212&quot; width=&quot;543&quot; height=&quot;69&quot; data-phocus-index=&quot;1&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;614&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;&amp;nbsp;멤버&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;기능&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;UIRestrictionClass&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;비트 플래그의 조합으로 아래 표 참고&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;614&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;&amp;nbsp;플래그&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;기능&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_EXITWINDOWS&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 ExitWindowsEx 함수를 이용해 로그오프, 셧다운, 리부팅, 시스템 전원 끄기를 할 수 없도록 설정&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_READCLIPBOARD&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 클립보드의 내용을 읽을 수 없도록 설정&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_WRITECLIPBOARD&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 클립보드의 내용을 삭제할 수 없도록 설정&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_SYSTEMPARAMTERS&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 SystemParametersInfo 함수를 이용해 시스템 매개변수들을 변경하지 못하도록 함&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_DISPLAYSETTINGS&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 ChangeDisplaySettings 함수를 이용해 디스플레이 설정을 변경하지 못하도록 함&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_GLOBALATOMS&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡이 자신만의 Global&amp;nbsp;Atom Table 을 가질 수 있도록 하고, 잡 내의 프로세스들이 이 Global Atom Table에 접근할 수 있도록 한다.&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_DESKTOP&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 CreateDesktop이나 SwitchDesktop 함수를 이용해 새로운 데스크탑을 생성하거나 다른 데스크탑으로 변경하지 못하도록 함&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_UILIMIT_HANDLES&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 잡 외부의 프로세스에 의해 생성된 유저 오브젝트를 사용할 수 없도록 설정&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;JobObjectSecurityLimitInformation&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/2276463B57491D8B15&quot; width=&quot;616&quot; height=&quot;145&quot; data-phocus-index=&quot;2&quot; /&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;- PTOKEN_GROUPS, PTOKEN_PRIVILEGES, PTOKEN_GROUPS 구조체 정보는 아래 MSDN을 참조&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;- &lt;a href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms684159(v=vs.85).aspx&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms684159(v=vs.85).aspx&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;614&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;멤버&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;기능&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;SecurityLimiFlags&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;관리자 권한으로 실행되는 것을 거부하거나, 필터되지 않은 토큰의 접근 거부, 특정 액세스 토큰을 강제로 요구하거나 특정 SID나 권한을 사용하지 못하도록 설정하는 플래그&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;JobToken&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 모든 프로세스가 사용할 수 있는 액세스 토큰 지정&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;SidsToDisable&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;액세스 확인을 수행하지 못하도록 하는 Security ID&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;PrivilegesToDelete&lt;/span&gt;&lt;/td&gt;
&lt;td rowspan=&quot;1&quot;&gt;&amp;nbsp;액세스 토큰으로 부터 어떤 권한을 제거할지 나타냄&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;1&quot;&gt;&amp;nbsp;RestrictedSids&lt;/td&gt;
&lt;td rowspan=&quot;1&quot;&gt;&amp;nbsp;액세스 토큰에 추가할 접근 거부 SID 목록을 지정&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;SecurityLimitFlags&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; width=&quot;614&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;플래그&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;기능&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;JOB_OBJECT_SECURITY_FILTER_TOKENS&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;필터되지 않은 토큰의 접근을 거부,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- SidsToDisable, PrivilegesToDelete, RestrictSids 셋 중 하나는 세팅되어있어야 함&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- 위 항목들에 명시된 Sid를 갖지 않으면 실행이 제한됨&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;JOB_OBJECT_SECURITY_NO_ADMIN&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 관리자 권한으로 실행되는 것을 막음&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;JOB_OBJECT_SECURITY_ONLY_TOKEN&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스들이 특정 액세스 토큰을 갖고 실행되도록 설정&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- 그 특정 액세스 토큰은&amp;nbsp;JobToken 멤버를 의미&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span&gt;JOB_OBJECT_SECURITY_RESTRICTED_TOKEN&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스들이 CreateRestrictedToken 함수로 생성되지 않은 액세스 토큰을 가지고 실행되지 못하도록 함&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;

&lt;ins class=&quot;kakao_ad_area&quot; style=&quot;display:none;&quot;
data-ad-unit = &quot;DAN-1Sf0ClaXutbtzbdT&quot;
data-ad-width = &quot;300&quot;
data-ad-height = &quot;250&quot;&gt;&lt;/ins&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot; async&gt;&lt;/script&gt;</description>
      <category>Windows/Windows Programming</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/289</guid>
      <comments>https://wonjayk.tistory.com/289#entry289comment</comments>
      <pubDate>Sat, 28 May 2016 13:48:37 +0900</pubDate>
    </item>
    <item>
      <title>잡 (Job) - 프로세스 제약사항 설정 1</title>
      <link>https://wonjayk.tistory.com/288</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;잡을 생성하고 나면 잡에서 수행할 프로세스들에 대한 제약사항을 설정할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설정 할 수 있는 제약사항으로는 아래와 같은 내용들이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 기본 제약사항과 확장 제약사항은 잡 내 프로세스가 시스템 리소스를 독점하지 못하게 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 기본 UI 제약사항은 잡 내의 프로세스가 사용자 인터페이스를 사용하지 못하도록 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 보안 제약사항은 잡 내의 프로세스가 보안 자원(파일, 레지스트리 등)에 접근하지 못하도록 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잡에 대한 내용은 아래 포스팅 참고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 잡 (Job) : &lt;a class=&quot;tx-link&quot; href=&quot;http://wonjayk.tistory.com/287&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;http://wonjayk.tistory.com/287&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 제약사항들은 아래 함수로 설정할 수 있습니다.&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;120&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/2619864E573FB20C17?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/2619864E573FB20C17?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/2619864E573FB20C17&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F2619864E573FB20C17&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;368&quot; height=&quot;120&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;120&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;- hJob : CreeateJobObject로 생성한 잡의 핸들로 제약사항을 설정할 잡의 핸들을 설정하면 됩니다.&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;- JobObjectInfoClass : 어떤 제약사항을 전달할 것인지 설정&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;- lpJobObjectInfo : 제약사항을 전달할 구조체의 주소&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;- cbJobObjectInfoLength : 제약사항 전달 구조체의 크기&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ins class=&quot;kakao_ad_area&quot; style=&quot;display:none;&quot;
data-ad-unit = &quot;DAN-1Sf0ClaXutbtzbdT&quot;
data-ad-width = &quot;300&quot;
data-ad-height = &quot;250&quot;&gt;&lt;/ins&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot; async&gt;&lt;/script&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제약사항의 형태는 아래 구조체 처럼 10가지로 구성되어있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;343&quot; data-origin-height=&quot;184&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/2211003B573FB7C623?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/2211003B573FB7C623?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/2211003B573FB7C623&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F2211003B573FB7C623&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;343&quot; height=&quot;184&quot; data-origin-width=&quot;343&quot; data-origin-height=&quot;184&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞으로의 포스팅에서는 총 4가지의 제약사항에 대해서 알아보도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 기본 제약사항 : JobObjectBasicLimitInformation = 2&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 확장 제약사항 : JobObjectExtendedLimitInformation = 9&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 기본 UI 제약사항 : JobObjectBasicUIRestrictions = 4&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 보안 제약사항 : JobObjectSecurityLimitInformation = 5&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 포스팅에서는 기본 제약사항인&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;JobObjectBasicLimitInformation&lt;/span&gt;&lt;/b&gt;에 대해서 알아보도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 확장, 기본 UI, 보안 제약사항은 다음 포스팅에서 설명하도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나머지 제약사항에 대한 상세한 내용은 아래 링크를 참고하시기 바랍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;nbsp;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms686216(v=vs.85).aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms686216(v=vs.85).aspx&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;JobObjectBasicLimitInformation&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;569&quot; data-origin-height=&quot;223&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/2540DE37573FB90B18?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/2540DE37573FB90B18?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/2540DE37573FB90B18&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F2540DE37573FB90B18&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;569&quot; height=&quot;223&quot; data-origin-width=&quot;569&quot; data-origin-height=&quot;223&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;nbsp;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms684147(v=vs.85).aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms684147(v=vs.85).aspx&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;txc-table&quot; style=&quot;border: none; border-collapse: collapse; ;font-family: '맑은 고딕', sans-serif; font-size: 13px;&quot; border=&quot;0&quot; width=&quot;614&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border: 1px solid #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;b&gt;멤버&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;기능&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;PerProcessUserTimeLimit&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;각 프로세스 별 사용 가능한 최대 유저모드 시간 지정 (100ns 단위)&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_PROCESS_TIME&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;PerJobUserTimeLimit&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스가 얼마나 많은 유저모드 시간을 사용할 수 있는지 지정 (100ns 단위)&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_JOB_TIME&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;LimitFlags&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;잡에 어떤 제약사항을 설정할 지 나타낼 비트 플래그&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;이 플래그를 설정해 주어야 멤버들을 사용할 수 있다.&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;MinimumWorkingSetSize&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;프로세스 별 최소 워킹셋 크기를 지정&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_WORKINGSET&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;MaximumWorkingSetSize&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;프로세스 별 최대 워킹셋 크기를 지정&lt;br /&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_WORKINGSET&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;ActiveProcessLimit&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;잡 내에서 동시에 수행할 수 있는 프로세스의 최대 수&lt;br /&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_ACTIVE_PROCESS&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;Affinity&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;잡 내의 프로세스들을 수행할 수 있는 CPU의 부분집합 설정&lt;br /&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_AFFINITY&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;PriorityClass&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;잡 내의 모든 프로세스들에 대한 우선순위 지정&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_PRIORITY_CLASS&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 104px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;SchedulingClass&lt;/td&gt;
&lt;td style=&quot;width: 509px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;잡 내의 스레드들에게 다른 스레드에 비해 상대적으로 다른 퀀텀 시간을 할당&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- LimitFlag : JOB_OBJECT_LIMIT_SCHEDULING_CLASS&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- 0 ~ 9까지, 기본값은 5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 제약사항을 잘 설정해두지 않으면 잡 내의 프로세스가 오류를 일으켜 종료되었다고 가정하면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로세스가 종료되지 않아 시스템 리소스를 계속 낭비하게 될 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;때문에, 잡을 사용할 때에는 이런 기본 제약사항을 잘 설정해주어야 합니다.&lt;/p&gt;</description>
      <category>Windows/Windows Programming</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/288</guid>
      <comments>https://wonjayk.tistory.com/288#entry288comment</comments>
      <pubDate>Sat, 21 May 2016 10:09:50 +0900</pubDate>
    </item>
    <item>
      <title>잡 (Job)</title>
      <link>https://wonjayk.tistory.com/287</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;잡(Job)&lt;/span&gt;&lt;/b&gt;은 간단하게 설명드리면 여러 개의 프로세스들을 하나로 묶은 그룹입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잡이 필요한 이유&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- Windows는 프로세스의 부모/자식 관계를 항상 유지하지는 않습니다. (실행되고 종료됨에 따라 프로세스 트리는 끊어질 수 있습니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 특정 프로세스가 수행되는데에 여러 개의 프로세스를 거쳐서 수행되었다고 가정했을 때, 앞서 수행된 특정 프로세스가 종료됨으로 인해 이전에 수행된 여러 개의 프로세스들이 모두 종료되어야 한다고 하면, 이 프로세스들을 모두 관리하기 위함입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 여러 개의 프로세스의 데이터들(클라이언트)을 종합해 수행되는 프로세스(서버)라고 가정한다면, 특정 프로세스(클라이언트)가 과도하게 리소스를 점유하지 못하도록 제어할 필요도 있습니다. (이럴 땐 잡을 이용해 최대 CPU 점유 시간 제한, 최대/최소 워킹셋 제한, 보안 제한 등의 방법이 있습니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 이유들 때문에 Windows는 잡 커널 오브젝트를 이용해 프로세스들을 하나의 그룹으로 묶어서 관리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;383&quot; data-origin-height=&quot;86&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/27303136572D2D6D10?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/27303136572D2D6D10?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/27303136572D2D6D10&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F27303136572D2D6D10&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;383&quot; height=&quot;86&quot; data-origin-width=&quot;383&quot; data-origin-height=&quot;86&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;HANDLE &lt;/span&gt;hProcJob = &lt;span style=&quot;color: #670000;&quot;&gt;CreateJobObject&lt;/span&gt;(&lt;span style=&quot;color: #6600ff;&quot;&gt;NULL&lt;/span&gt;, &lt;span style=&quot;color: #670000;&quot;&gt;TEXT&lt;/span&gt;(&quot;wonjaykJOB&quot;));&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;- 요런 식으로 잡 객체를 생성 할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- LPSECURITY_ATTRIBUTES lpJobAttributes : 새로 생성 할 잡 객체에 대한 Security Information을 전달&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- LPCTSTR lpName : 생성될 잡 객체의 이름&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 리턴으로는 잡 객체의 핸들을 전달합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 인자인 LPSECURITY_ATTRIBUTES를 위 예제처럼 NULL로 세팅한다면 기본 Security Information으로 설정된 잡 객체가 생성됩니다.&lt;/p&gt;
&lt;div&gt;잡 객체의 이름을 설정해두면 OpenJobObject 함수를 이용해 같은 잡 객체를 사용 할 수 있습니다.&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ins class=&quot;kakao_ad_area&quot; style=&quot;display:none;&quot;
data-ad-unit = &quot;DAN-1Sf0ClaXutbtzbdT&quot;
data-ad-width = &quot;300&quot;
data-ad-height = &quot;250&quot;&gt;&lt;/ins&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot; async&gt;&lt;/script&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;258&quot; data-origin-height=&quot;111&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/272E4A36572D2D5B11?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/272E4A36572D2D5B11?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/272E4A36572D2D5B11&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F272E4A36572D2D5B11&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;258&quot; height=&quot;111&quot; data-origin-width=&quot;258&quot; data-origin-height=&quot;111&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;BOOL &lt;/span&gt;bInJob = &lt;span style=&quot;color: #6600ff;&quot;&gt;FALSE&lt;/span&gt;;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #670000;&quot;&gt;IsProcessInJob&lt;/span&gt;(&lt;span style=&quot;color: #670000;&quot;&gt;GetCurrentProcess&lt;/span&gt;(), &lt;span style=&quot;color: #6600ff;&quot;&gt;NULL&lt;/span&gt;, &amp;amp;&lt;span style=&quot;color: #000000;&quot;&gt;bInJob&lt;/span&gt;);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 요런 식으로 현재 프로세스가 잡 객체에 속해있는지 확인 할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- HANDLE ProcessHandle : 잡 객체에 속해있는지 확인 해 볼 프로세스의 핸들&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- HANDLE JobHandle : 특정 잡 객체의 핸들&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- PBOOL Result : 첫 번째 인자로 받았던 프로세스가 잡에 속해있는지 여부를 TRUE or FALSE로 리턴&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 인자인 JobHandle을 NULL로 세팅한다면 첫 번째 인자로 받은 프로세스가 현재 생성된 전체 잡 객체 중 어디에라도 속해있다면 세 번째 인자인 BOOL에 TRUE를 리턴하게 됩니다. 반대라면 FALSE겠죠?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;243&quot; data-origin-height=&quot;103&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/2535D639572D33B626?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/2535D639572D33B626?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/2535D639572D33B626&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F2535D639572D33B626&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;243&quot; height=&quot;103&quot; data-origin-width=&quot;243&quot; data-origin-height=&quot;103&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;HANDLE &lt;/span&gt;hOpenJob = &lt;span style=&quot;color: #670000;&quot;&gt;OpenJobObject&lt;/span&gt;(&lt;span style=&quot;color: #0900ff;&quot;&gt;JOB_OBJECT_ALL_ACCESS&lt;/span&gt;, &lt;span style=&quot;color: #6600ff;&quot;&gt;TRUE&lt;/span&gt;, &lt;span style=&quot;color: #670000;&quot;&gt;TEXT&lt;/span&gt;(&quot;wonjaykJOB&quot;));&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;- 요런 식으로 이미 생성된 잡 객체를 사용할 수 있습니다.&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;- DWORD dwDesiredAccess : 잡 객체 접근 권한 (아래 표로 설명)&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;- BOOL bInheritHandles : 현재 프로세스로부터 생성된 새로운 프로세스들에게 Open할 잡의 핸들을 상속할 지 여부&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;- LPCTSTR lpName : 사용하고자 하는 잡 객체의 이름&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;잡 객체 접근 권한&lt;/b&gt;&lt;/p&gt;
&lt;table class=&quot;txc-table&quot; style=&quot;border: none; border-collapse: collapse; ;font-family: '맑은 고딕', sans-serif; font-size: 13px;&quot; border=&quot;0&quot; width=&quot;614&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border: 1px solid #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;&amp;nbsp;접근 권한&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;내용&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_ALL_ACCESS&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;잡 객체에 대한 모든 접근 권한 부여&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_ASSIGN_PROCESS&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;현재 프로세스에서 AssignProcessToJobObject 함수를 사용할 수 있도록 권한 부여&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- AssignProcessToJobObject : 잡 내에 프로세스 배치 함수&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_QUERY&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;현재 프로세스에서 잡 객체를 조회해 볼 수 있는 권한 부여 (어떤 프로세스가 속해있는지, IsProcessInJob 사용 가능....)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_SET_ATTRIBUTES&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;현재 프로세스에서 SetInformationJobObject 함수를 사용할 수 있도록 권한 부여&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- SetInformationJobObject : 잡 객체에 대한 제약사항 설정&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- 다음 포스팅에서 기록하도록 하겠습니다~&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_SET_SECURITY_ATTRIBUTES&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;Windows Vista 이후 운영체제에서는 삭제된 권한&lt;/span&gt;&lt;br /&gt;&lt;span&gt;Windows XP : 현재 프로세스에서 보안 정보 수정 권한 부여&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 249px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;JOB_OBJECT_TERMINATE&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 364px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;현재 프로세스에서 TerminateJobObject 함수를 사용할 수 있도록 권한 부여&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;- TerminateJobObject :&amp;nbsp;잡 객체와 연관된 모든 프로세스를 종료하는 함수&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Windows/Windows Programming</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/287</guid>
      <comments>https://wonjayk.tistory.com/287#entry287comment</comments>
      <pubDate>Sat, 7 May 2016 09:38:41 +0900</pubDate>
    </item>
    <item>
      <title>C++ 기본 자료형</title>
      <link>https://wonjayk.tistory.com/286</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;C++의 기본 자료형은 &lt;b&gt;정수, 부동 소수점, void&lt;/b&gt;의 세 가지 범위로 나누어집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- void : 비어있는 값으로 값을 리턴하지 않는 함수나 특정 형식이 정해지지 않은 데이터를 선언할 때 포인터로 활용됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;nbsp;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/cc953fe1.aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/cc953fe1.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자료형에 대한 크기를 잘 알아둬야 프로그래밍시 공간의 낭비가 없을 것입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 표의 내용들은 MS자료를 바탕으로 작성되었기 때문에 VC++외 gcc 계열이나 다른 c계열에서는&amp;nbsp;크기가 다를 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ins class=&quot;kakao_ad_area&quot; style=&quot;display:none;&quot;
data-ad-unit = &quot;DAN-1Sf0ClaXutbtzbdT&quot;
data-ad-width = &quot;300&quot;
data-ad-height = &quot;250&quot;&gt;&lt;/ins&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot; async&gt;&lt;/script&gt;
&lt;table class=&quot;txc-table&quot; style=&quot;border: none; border-collapse: collapse; ;font-family: '맑은 고딕', sans-serif; font-size: 13px;&quot; border=&quot;0&quot; width=&quot;614&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border: 1px solid #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;종류&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;자료형&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #fae0d4;&quot;&gt;&lt;span&gt;&lt;b&gt;크기&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #fae0d4;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;범위&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #fae0d4;&quot; colspan=&quot;1&quot;&gt;&lt;b&gt;내용&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;정수계열&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;Char&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;1BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;-128 ~ 127&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;문자열을 표현, ASCII&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;unsigned char&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;1BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;signed : -128 ~ 127&lt;/span&gt;&lt;br /&gt;&lt;span&gt;unsigned : 0 ~ 255&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;unsigned char는 부호 없는 char&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;bool&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;1BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;0 or 1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;TRUE or FALSE&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;short&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;2BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;-32,768&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 32,767&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;char보다 크거나 int보다 짧거나 같은 형식&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;unsigned short&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;2BYTE&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;0&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 65,535&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;부호 없는 short&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;int&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;4BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;-2,147,438,648&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 2,147,438,648&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot;&gt;&lt;span&gt;short보다 크고 long보다 작은 형식&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 52px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 52px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;int&lt;i&gt;&lt;b&gt;n&lt;/b&gt;&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;(8, 16, 32, 64, 128)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 52px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;n/8BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 52px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;n에 따라 다름&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 52px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;크기가 지정된 정수&lt;/span&gt;&lt;br /&gt;&lt;span&gt;n은 변수의 크기 (int&lt;i&gt;n&lt;/i&gt;은 MS 전용)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;long&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;b&gt;4BYTE&amp;nbsp;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;-2,147,438,648&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 2,147,438,647&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;int보다 크거나 int와 같은 형식&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;unsigned long&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;4BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;0&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 4,294,877,296&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;부호 없는 long&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;long long&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;8BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;-9,223,372,036,854,775,808&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 9,223,372,036,854,775,807&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;unsigned long보다 큰 형식&lt;/span&gt;&lt;br /&gt;&lt;span&gt;(int64)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;unsigned long long&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;8BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;0 ~&lt;/span&gt;&lt;br /&gt;&lt;span&gt;18,446,744,073,709,551,615&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 35px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;부호 없는 long long&lt;/span&gt;&lt;br /&gt;&lt;span&gt;(uint64)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;부동 소수점&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;float&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;4BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;3.4E +/- 38 (7 digit)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;가장 작은 부동소수점 형식&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;double&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;8BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;1.7E +/- 308 (15 digit)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;float보다 크고 long double과는 짧거나 같은 형식&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;long double&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;8BYTE&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;1.2E +/- 4932 (19 digit)&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;double과 같은 형식 (표현은 다름)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 92px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;와이드 문자열&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;_wchar_t&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 53px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;&lt;b&gt;2BYTE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 172px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;-32,768&lt;/span&gt;&lt;br /&gt;&lt;span&gt;~ 32,767 (char보다 큼)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 220px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; colspan=&quot;1&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;와이드나 멀티바이트 형식을 지정&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Programming Language/C, C++</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/286</guid>
      <comments>https://wonjayk.tistory.com/286#entry286comment</comments>
      <pubDate>Fri, 6 May 2016 12:09:35 +0900</pubDate>
    </item>
    <item>
      <title>네임드 파이프 예제</title>
      <link>https://wonjayk.tistory.com/285</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Pipe는 두 프로세스를 잇는 통로입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어, 두 개의 수조가 있고 그 사이를 파이프로 관통해 연결한다고 합시다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 하나의 수조에 물을 채운다면 그 물이 파이프를 따라 흘러 또 다른 수조로 들어가게 되겠죠?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이처럼, 프로세스 간에도 Pipe를 연결한다면 원하는 정보를 다른 프로세스로 전달할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Pipe에는 &lt;b&gt;Named Pipe&lt;/b&gt;와 &lt;b&gt;Anonymous Pipe&lt;/b&gt;, 두 종류가 존재하는데요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간략하게 설명하면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Anonymous Pipe : 이름없는 파이프, 한쪽 방향으로만 데이터 전송, 부모 =&amp;gt; 자식 프로세스&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Named Pipe : 이름있는 파이프, 양쪽 방향으로 데이터 전송, 프로세스 &amp;lt;=&amp;gt; 프로세스&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 Named Pipe를 이용해 프로세스간 통신을 하는 코드입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 출처 :&amp;nbsp;&lt;a class=&quot;tx-link&quot; href=&quot;http://ezbeat.tistory.com/300&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;http://ezbeat.tistory.com/300&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;서버 코드&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;#include&lt;/span&gt; &amp;lt;stdio.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;#include &lt;/span&gt;&amp;lt;Windows.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;#include&lt;/span&gt; &amp;lt;tchar.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#define &lt;span style=&quot;color: #6600ff;&quot;&gt;PIPE_NAME&lt;/span&gt;&lt;span style=&quot;white-space: pre; color: #6600ff;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&quot;\\\\.\\pipe\\test_pipe&quot; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #22741c;&quot;&gt;// 파이프 이름 설정, 이 파이프로 통신을 할 것임&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;int &lt;/span&gt;ConnectClient(&lt;span style=&quot;color: #0900ff;&quot;&gt;HANDLE &lt;/span&gt;hNamePipe)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;TCHAR recvMessage[100];&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;TCHAR sendMessage[100];&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;DWORD recvSize;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;DWORD sendSize;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;while(1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;Input Send Message : &quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tscanf&lt;/span&gt;(_T(&quot;%s&quot;),sendMessage);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #22741c;&quot;&gt;//sendSize -&amp;gt; NULL 포함한 바이트 수&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(!(&lt;span style=&quot;color: #0900ff;&quot;&gt;WriteFile&lt;/span&gt;(&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;hNamePipe,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;sendMessage,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;(&lt;span style=&quot;color: #662500;&quot;&gt;_tcslen&lt;/span&gt;(sendMessage)+1)*&lt;span style=&quot;color: #0900ff;&quot;&gt;sizeof&lt;/span&gt;(TCHAR),&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&amp;amp;sendSize,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;NULL&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;))) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;WriteFile error! \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return -1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;FlushFileBuffers&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #22741c;&quot;&gt;//recvSize -&amp;gt; NULL 포함한 바이트 수&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(!(&lt;span style=&quot;color: #0900ff;&quot;&gt;ReadFile&lt;/span&gt;(&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;hNamePipe,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;recvMessage,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;sizeof(recvMessage)-sizeof(TCHAR)*1,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&amp;amp;recvSize,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;NULL&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;)))&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;printf&lt;/span&gt;(&quot;ReadFile error! \n&quot;);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return -1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;recvMessage[recvSize/sizeof(TCHAR)-1] = _T('\x00');&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;Recv Message : %s \n&quot;),recvMessage);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return 1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;int _tmain(int argc,TCHAR* argv[])&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;HANDLE &lt;/span&gt;hNamePipe;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;TCHAR &lt;/span&gt;pipe_name[] = _T(&lt;span style=&quot;color: #0900ff;&quot;&gt;PIPE_NAME&lt;/span&gt;); &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #22741c;&quot;&gt; // #define 한 파이프 이름&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;_tprintf(_T(&quot;==== Server ==== \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #22741c;&quot;&gt;//NamedPipe 생성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;hNamePipe = &lt;span style=&quot;color: #0900ff;&quot;&gt;CreateNamedPipe&lt;/span&gt;(&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;pipe_name,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;PIPE_ACCESS_DUPLEX,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;PIPE_UNLIMITED_INSTANCES,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;0,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;0,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;20000, &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #22741c;&quot;&gt;// 대기 Timeout 시간&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;NULL&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(hNamePipe == &lt;span style=&quot;color: #0900ff;&quot;&gt;INVALID_HANDLE_VALUE&lt;/span&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;printf&lt;/span&gt;(&quot;CreateNamePipe error! \n&quot;);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;return &lt;/span&gt;-1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;while(1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #22741c;&quot;&gt;//생성한 Named Pipe의 핸들을 누군가 얻어갈 때까지 대기..&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(!(&lt;span style=&quot;color: #0900ff;&quot;&gt;ConnectNamedPipe&lt;/span&gt;(hNamePipe,NULL)))&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;CloseHandle&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;return &lt;/span&gt;-1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;else&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(&lt;span style=&quot;color: #0900ff;&quot;&gt;ConnectClient&lt;/span&gt;(hNamePipe) == -1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;break&lt;/span&gt;;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;DisconnectNamedPipe&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;CloseHandle&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;_tprintf(_T(&quot;Program exit! \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return 1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ins class=&quot;kakao_ad_area&quot; style=&quot;display:none;&quot;
data-ad-unit = &quot;DAN-1Sf0ClaXutbtzbdT&quot;
data-ad-width = &quot;300&quot;
data-ad-height = &quot;250&quot;&gt;&lt;/ins&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot; async&gt;&lt;/script&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;클라이언트 코드&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#include &amp;lt;stdlib.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#include &amp;lt;Windows.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#include &amp;lt;tchar.h&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#define &lt;span style=&quot;color: #6600ff;&quot;&gt;PIPE_NAME&lt;/span&gt;&lt;span style=&quot;white-space: pre; color: #6600ff;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&quot;\\\\.\\pipe\\test_pipe&quot; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #22741c;&quot;&gt; // 서버의 파이프 이름과 동일한 파이프 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;int &lt;/span&gt;&lt;span style=&quot;color: #6600ff;&quot;&gt;ConnectServer&lt;/span&gt;(HANDLE hNamePipe)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;TCHAR recvMessage[100];&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;TCHAR sendMessage[100];&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;DWORD recvSize;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;DWORD sendSize;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;while(1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(!(&lt;span style=&quot;color: #0900ff;&quot;&gt;ReadFile&lt;/span&gt;(&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;hNamePipe,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;recvMessage,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;sizeof&lt;/span&gt;(recvMessage)-&lt;span style=&quot;color: #0900ff;&quot;&gt;sizeof&lt;/span&gt;(TCHAR)*1,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&amp;amp;recvSize,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;NULL&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;)))&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;ReadFile error! \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return -1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;recvMessage[recvSize/sizeof(TCHAR)-1] = _T('\x00');&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;Recv Message : %s \n&quot;),recvMessage);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;Input Send Message : &quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tscanf&lt;/span&gt;(_T(&quot;%s&quot;),sendMessage);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(!(&lt;span style=&quot;color: #0900ff;&quot;&gt;WriteFile&lt;/span&gt;(&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;hNamePipe,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;sendMessage,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;(_tcslen(sendMessage)+1)*sizeof(TCHAR),&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&amp;amp;sendSize,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;NULL&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;)))&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;_tprintf(_T(&quot;WriteFile error! \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return -1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;FlushFileBuffers&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;return 1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;int _tmain(int argc, TCHAR* argv[])&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;TCHAR pipe_name[] = _T(PIPE_NAME);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;HANDLE hNamePipe;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;==== Client ==== \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;while(1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #22741c;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // 파이프 이름으로 핸들 열기&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;hNamePipe = &lt;span style=&quot;color: #0900ff;&quot;&gt;CreateFile&lt;/span&gt;(pipe_name,GENERIC_READ | GENERIC_WRITE, 0,NULL,OPEN_EXISTING,0,NULL);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(hNamePipe == INVALID_HANDLE_VALUE)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;CreateFile error! \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;return &lt;/span&gt;-1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;DWORD &lt;/span&gt;pipeMode = PIPE_READMODE_MESSAGE | PIPE_WAIT;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(!(&lt;span style=&quot;color: #0900ff;&quot;&gt;SetNamedPipeHandleState&lt;/span&gt;(hNamePipe,&amp;amp;pipeMode,NULL,NULL)))&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #670000;&quot;&gt;_tprintf&lt;/span&gt;(_T(&quot;SetNamedPipeHandleState error! \n&quot;));&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;CloseHandle&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;return &lt;/span&gt;-1;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;else&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;if(&lt;span style=&quot;color: #0900ff;&quot;&gt;ConnectServer&lt;/span&gt;(hNamePipe) == -1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;break&lt;/span&gt;;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;CloseHandle&lt;/span&gt;(hNamePipe);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;white-space: pre;&quot; class=&quot;Apple-tab-span&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;return &lt;/span&gt;0;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;}&lt;/p&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Programming Language/C, C++</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/285</guid>
      <comments>https://wonjayk.tistory.com/285#entry285comment</comments>
      <pubDate>Sat, 30 Apr 2016 13:13:55 +0900</pubDate>
    </item>
    <item>
      <title>XSD (XML Schema Definition) 정의</title>
      <link>https://wonjayk.tistory.com/284</link>
      <description>&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;XSD&lt;/span&gt;&lt;/b&gt;(XML Schema Definition)는 &lt;b&gt;XML의 유효성 검증&lt;/b&gt;을 위한 스키마입니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- XML에 대해선 언급하지는 않겠습니다. (다 아시잖아유~)&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;XML의 특징 중 하나를 예로 들어보면, 작성 규칙만 지켜진다면 입력이 자유롭다는 장점이 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- 이러한 장점이 오히려 단점이 되기도 합니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- 문자열이 위치해야 할 자리에 숫자가 들어온다거나, 아니면 반대의 상황&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- &amp;lt;아우디&amp;gt;K5&amp;lt;/아우디&amp;gt;, &amp;lt;동물&amp;gt;자동차&amp;lt;/동물&amp;gt; 과 같은 예로, Category에 속할 수 없는 값들이 들어갈 가능성이 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- XML을 수동으로(요즘은 툴도 많지만...) 작성하다보면 오타가 발생하기도 하죠&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;이런 XML의 단점들을 일부 해소해 줄 수 있는게 바로 &lt;b&gt;XSD&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;XSD는 기본적으로 아래와 같은 48가지의 데이터 형식을 사용합니다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;table class=&quot;MsoTableGrid&quot; border=&quot;1&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; width=&quot;552&quot; style=&quot;width:414.0pt;margin-left:23.4pt;border-collapse:collapse;border:none;
 mso-border-alt:solid windowtext .5pt;mso-yfti-tbllook:480;mso-padding-alt:
 0cm 5.4pt 0cm 5.4pt&quot;&gt;
 &lt;tbody&gt;&lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width: 121.6pt; border: 1pt solid windowtext; padding: 0cm 5.4pt; background-color: rgb(250, 224, 212);&quot;&gt;
  &lt;p&gt;&lt;span&gt;&lt;b&gt;simpleType&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width: 130.45pt; border-style: solid solid solid none; border-top-color: windowtext; border-right-color: windowtext; border-bottom-color: windowtext; border-top-width: 1pt; border-right-width: 1pt; border-bottom-width: 1pt; padding: 0cm 5.4pt; background-color: rgb(250, 224, 212);&quot;&gt;
  &lt;p&gt;&lt;b&gt;사용 예&lt;span&gt; (&lt;/span&gt;콤마로 구분&lt;/b&gt;&lt;span&gt;&lt;b&gt;)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width: 161.95pt; border-style: solid solid solid none; border-top-color: windowtext; border-right-color: windowtext; border-bottom-color: windowtext; border-top-width: 1pt; border-right-width: 1pt; border-bottom-width: 1pt; padding: 0cm 5.4pt; background-color: rgb(250, 224, 212);&quot;&gt;
  &lt;p&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;String&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;Confirm this is Electric&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;문자열&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;normalizedString&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;Confirm this is Electric&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;문자열&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;token&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;Confirm this is Electric&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;문자열&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;byte&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;-1, 126&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;바이트 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;unsignedByte&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;0, 126&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;부호화 되지 않은 바이트 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;base64Binary&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;GpM7&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;64 &lt;/span&gt;비트 바이너리&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;hexBinary&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;0FB7&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;16&lt;/span&gt;진수 바이너리&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;integer&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-126789, -1, 0, 1, 126789&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;16&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;positiveInteger&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;1, 126789&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;16&lt;/span&gt;비트 양의 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;negativeInteger&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-1, -126789&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;16&lt;/span&gt;비트 음의 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;nonNegativeInteger&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;0, 1, 126789&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;0&lt;/span&gt;을 포함하는 &lt;span&gt;16&lt;/span&gt;비트
  양의 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;nonPositiveInteger&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;0, -1, -126789&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;0&lt;/span&gt;을 포함하는 &lt;span&gt;16&lt;/span&gt;비트
  음의 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;Int&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-1, 126789675&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;32&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;unsignedInt&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;0, 1267896754&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;부호화 되지 않은&lt;span&gt; 32&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;long&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-1, 12678967543233&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;64&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;unsignedInt&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;0, 12678967543233&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;부호화 되지 않은&lt;span&gt; 64&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;short&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-1, 12678&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;8&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;unsignedShort&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;0, 12678&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;부호화 되지 않은&lt;span&gt; 8&lt;/span&gt;비트 정수형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;decimal&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-1.23, 0, 123.4, 1000.00&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;단정도 고정 소수점 형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;float&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-INF, -1E4, -0, 0, 12.78E-2, 12, INF,
  &lt;st1:place w:st=&quot;on&quot;&gt;NaN&lt;/st1:place&gt;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;32&lt;/span&gt;비트 단정도 부동 소수점 형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;double&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;-INF, -1E4, -0, 0, 12.78E-2, 12, INF,
  &lt;st1:place w:st=&quot;on&quot;&gt;NaN&lt;/st1:place&gt;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;64&lt;/span&gt;비트 배정도 부동 소수점 형&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;boolean&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;True, false, 0, 1&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;Boolean &lt;/span&gt;타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;time&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;13:20:00.000, 13:20:00.000-&lt;st1:time minute=&quot;0&quot; hour=&quot;17&quot; w:st=&quot;on&quot;&gt;05:00&lt;/st1:time&gt;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;시간&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;datetime&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;1999-05-31T13:20:00.000-&lt;st1:time minute=&quot;0&quot; hour=&quot;17&quot; w:st=&quot;on&quot;&gt;05:00&lt;/st1:time&gt;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;날짜와 시간&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;duration&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;P1Y2M3DT10H30M12.3S&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;예는&lt;span&gt; 1&lt;/span&gt;년&lt;span&gt; 2&lt;/span&gt;개월&lt;span&gt; 3&lt;/span&gt;일&lt;span&gt; 10&lt;/span&gt;시간&lt;span&gt; 30&lt;/span&gt;분&lt;span&gt; 12.3 &lt;/span&gt;초의 기간을 나타냄&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;date&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;1999-05-31&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;날짜&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;gMonth&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;__05__&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;월&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;gYear&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;2003&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;년&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;gYearMonth&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;2003-02&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;연 월&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;gDay&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;___31&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;일&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;gMonthDay&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;__05_31&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;월 일&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;Name&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;shipTo&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0&lt;/span&gt;의&lt;span&gt; Name &lt;/span&gt;타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;QName&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;po:USAddress&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML Namespace QName&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;NCName&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;USAddress&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML Namespace NCName&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;anyURI&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;http://www.example.com/&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;유효한&lt;span&gt; URI&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;language&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;en-GB, en-US, fr&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 &lt;/span&gt;에서 지정한 인코딩 규약&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;ID&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 ID &lt;/span&gt;속성 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;IDREF&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 IDREF &lt;/span&gt;속성 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;IDREFS&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 IDREFS &lt;/span&gt;속성 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;ENTITY&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 ENTITY &lt;/span&gt;속성 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;ENTITES&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 ENTITIES &lt;/span&gt;속성타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;NOTATION&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 NOTATION &lt;/span&gt;속성 타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;NMTOKENS&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;US, Brésil&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 NMTOKEN &lt;/span&gt;타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
  &lt;td width=&quot;162&quot; valign=&quot;top&quot; style=&quot;width:121.6pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;NMTOKENS&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;174&quot; valign=&quot;top&quot; style=&quot;width:130.45pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;st1:country-region w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;US&lt;/span&gt;&lt;/st1:place&gt;&lt;/st1:country-region&gt;&lt;span style=&quot;font-family: Arial, sans-serif;&quot;&gt;
  &lt;st1:country-region w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;UK&lt;/st1:place&gt;&lt;/st1:country-region&gt;,&lt;br /&gt;
  Brésil &lt;st1:country-region w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;Canada&lt;/st1:place&gt;&lt;/st1:country-region&gt;
  Mexique&lt;/span&gt;&lt;/p&gt;
  &lt;/td&gt;
  &lt;td width=&quot;216&quot; valign=&quot;top&quot; style=&quot;width:161.95pt;border-top:none;border-left:
  none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt&quot;&gt;
  &lt;p&gt;&lt;span&gt;XML 1.0 NMTOKES &lt;/span&gt;타입&lt;/p&gt;
  &lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;
&lt;/p&gt;
&lt;p style=&quot;margin-left:20.0pt&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;이 데이터 형식들을 이용해 요소의 자료형을 정의할 수 있습니다.&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div id=&quot;AdfitAD&quot;&gt;&lt;/div&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(9, 0, 255);&quot;&gt;XSD 정의 방법&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;그럼, XSD를 이제 어떻게 정의할 수 있는지 알아보도록 하겠습니다.&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;XSD에는 &lt;b&gt;&amp;lt;simpleType&amp;gt;&lt;/b&gt;과 &lt;b&gt;&amp;lt;complexType&amp;gt;&lt;/b&gt;이 존재하는데요&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;말 그대로,&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&amp;lt;simpleType&amp;gt;은 위에서 명시한 데이터 형식들을 이용해 새로운 형식을 만들어 낼 때&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&amp;nbsp;- 예를 들면, string 값을 이용해서 우편번호 형식을 지정하는 경우&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&amp;lt;complexType&amp;gt;은 여러 조건이 다중으로 붙어있는 형식이라고 보시면 됩니다.&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&amp;nbsp;- 아래 예제 XML, XSD들은 ms예제를 이용했습니다.&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&amp;nbsp;-&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/ko-kr/library/ms256129(v=vs.120).aspx&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://msdn.microsoft.com/ko-kr/library/ms256129(v=vs.120).aspx&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;&lt;b&gt;&amp;lt;simpleType&amp;gt;&lt;/b&gt;은..&lt;/p&gt;
&lt;p style=&quot;margin-left: 0.2em;&quot;&gt;아래의 xsd을 예로 들어보면..&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;table class=&quot;txc-table&quot; width=&quot;614&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; style=&quot;border: none; border-collapse: collapse; font-size: 13px;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;width: 614px; height: 24px; border: 1px solid rgb(204, 204, 204);&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:element name=&quot;quantity&quot;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; // 태그 이름&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; line-height: normal; margin-top: 0px; margin-bottom: 0px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xs:simpleType&amp;gt;&lt;/p&gt;
&lt;p style=&quot;color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; line-height: normal;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:restriction base=&quot;xs:positiveInteger&quot;&amp;gt; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt; &amp;nbsp;// 양의 정수&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; line-height: normal;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xs:maxExclusive value=&quot;100&quot;/&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;// 최대 숫자&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; line-height: normal;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/xs:restriction&amp;gt;&lt;/p&gt;
&lt;p style=&quot;color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; line-height: normal;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/xs:simpleType&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/xs:element&amp;gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;위의 정의 형식은&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&amp;lt;quantity&amp;gt;&amp;lt;/quantity&amp;gt; 는 정수형으로 최대 100까지 설정할 수 있다.&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;를 의미합니다.&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&lt;b&gt;&amp;lt;complexType&amp;gt;&lt;/b&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;은....&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;역시 아래의 xsd를 예로 들면..&lt;/p&gt;&lt;table class=&quot;txc-table&quot; width=&quot;614&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; style=&quot;border: none; border-collapse: collapse; font-size: 13px;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;width:614;height:24;border-bottom:1px solid #ccc;border-right:1px solid #ccc;border-top:1px solid #ccc;border-left:1px solid #ccc;;&quot;&gt;&lt;p&gt;&amp;nbsp;&amp;lt;xs:complexType name=&quot;Items&quot;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp;// complexType &amp;lt;items&amp;gt;&amp;lt;/items&amp;gt; 정의&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;xs:sequence&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;lt;xs:element name=&quot;item&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;&amp;gt; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp;// &amp;lt;items&amp;gt;의 하위 항목은 &amp;lt;item&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;lt;xs:complexType&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xs:sequence&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:element name=&quot;productName&quot; type=&quot;xs:string&quot;/&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; // &amp;lt;item&amp;gt;의 하위 항목은 &amp;lt;productName&amp;gt;으로 문자열&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:element name=&quot;quantity&quot;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; // &amp;lt;item&amp;gt;의 또 다른 하위 항목은 &amp;lt;&lt;/span&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;quantity&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xs:simpleType&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;lt;quantity&amp;gt;는 정수형으로 최대 100까지&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:restriction base=&quot;xs:positiveInteger&quot;&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xs:maxExclusive value=&quot;100&quot;/&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/xs:restriction&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/xs:simpleType&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/xs:element&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:element name=&quot;USPrice&quot; &amp;nbsp; &amp;nbsp;type=&quot;xs:decimal&quot;/&amp;gt; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; // &amp;lt;item&amp;gt;의 또 다른 하위 항목은 &amp;lt;USPrice&amp;gt;로 숫자형 (소수포함)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:element ref=&quot;comment&quot; &amp;nbsp; minOccurs=&quot;0&quot;/&amp;gt; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; // &amp;lt;item&amp;gt;의 하위 항목은 &amp;lt;comment&amp;gt;로 선택 가능합니다. (minOccurs=0) 최소 0개 등장해야 함.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xs:element name=&quot;shipDate&quot; type=&quot;xs:date&quot; minOccurs=&quot;0&quot;/&amp;gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; // &amp;lt;item&amp;gt;의 하위 항목은 &amp;lt;shipDate&lt;/span&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;gt;로 역시 넣던지 말던지 선택 가능&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/xs:sequence&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xs:attribute name=&quot;partNum&quot; type=&quot;SKU&quot; use=&quot;required&quot;/&amp;gt; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;lt;item&amp;gt;의 속성으로 partNum이 존재함, 형식은 SKU로 따로 정의했음&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/xs:complexType&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;lt;/xs:element&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;/xs:sequence&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;lt;/xs:complexType&amp;gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;lt;!-- Stock Keeping Unit, a code for identifying products --&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;lt;xs:simpleType name=&quot;SKU&quot;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;// &amp;lt;item&amp;gt; 속성 중 하나인 partNum의 형식&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;xs:restriction base=&quot;xs:string&quot;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;// 문자열&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;lt;xs:pattern value=&quot;\d{3}-[A-Z]{2}&quot;/&amp;gt; &amp;nbsp; &lt;span style=&quot;color: rgb(34, 116, 28);&quot;&gt;// 정수형 3자리-문자열 A~Z중 2자리&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;/xs:restriction&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;lt;/xs:simpleType&amp;gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;위 xsd를 지킨 xml 포맷은 바로 아래와 같습니다.&lt;/p&gt;&lt;table class=&quot;txc-table&quot; width=&quot;614&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; style=&quot;border: none; border-collapse: collapse; font-size: 13px;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;width:614;height:24;border-bottom:1px solid #ccc;border-right:1px solid #ccc;border-top:1px solid #ccc;border-left:1px solid #ccc;;&quot;&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;lt;items&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;item partNum=&quot;872-AA&quot;&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;productName&amp;gt;Lawnmower&amp;lt;/productName&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;quantity&amp;gt;1&amp;lt;/quantity&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;USPrice&amp;gt;148.95&amp;lt;/USPrice&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;comment&amp;gt;Confirm this is electric&amp;lt;/comment&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/item&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;item partNum=&quot;926-AA&quot;&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;productName&amp;gt;Baby Monitor&amp;lt;/productName&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;quantity&amp;gt;1&amp;lt;/quantity&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;USPrice&amp;gt;39.98&amp;lt;/USPrice&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;shipDate&amp;gt;1999-05-21&amp;lt;/shipDate&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/item&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/items&amp;gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; color: rgb(0, 0, 0); font-family: '맑은 고딕', sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;그럼 다음 포스팅에서는 이렇게 생성한 xsd를 이용해 xml의 유효성을 어떻게 검증하는지 알아보도록 하겠습니다.&lt;/p&gt;</description>
      <category>Basics/Definitions (xml, ini, csv..)</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/284</guid>
      <comments>https://wonjayk.tistory.com/284#entry284comment</comments>
      <pubDate>Sat, 23 Apr 2016 13:27:48 +0900</pubDate>
    </item>
    <item>
      <title>프로세스 권한 상승 - ShellExecuteEx()</title>
      <link>https://wonjayk.tistory.com/283</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;윈도우에는 사용자 권한 상승(&lt;b&gt;사용자 계정 컨트롤&lt;/b&gt; : UAC -&amp;nbsp;User Account Control)이라는 기능이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 기능은 윈도우 사용자에게 보다 높은 수준의 보안성을 제공하는 역할을 하는데요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;짧게 요약하자면, 관리자 권한과 일반 사용자 권한의 차등을 두어 &lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;관리자 권한을 갖지 않았다면 접근할 수 있는 리소스를 제한해 보안성을 높이는 방법&lt;/span&gt;&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;440&quot; data-origin-height=&quot;271&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/25652D455711A48D0D?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/25652D455711A48D0D?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/25652D455711A48D0D&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F25652D455711A48D0D&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;440&quot; height=&quot;271&quot; data-origin-width=&quot;440&quot; data-origin-height=&quot;271&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 요런거 많이 보셨을거에요~&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로세스가 수행되려면 때때로 관리자 권한이 필요한 경우도 있을텐데 앞서 포스팅한 CreateProcess 함수를 보면 권한 상승과 관련된 플래그나 인자는 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 어떻게 코드 레벨에서&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;권한 상승(관리자 권한)된 프로세스로 실행&lt;/span&gt;&lt;/b&gt;을 시킬 수 있을까요?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이럴 때에는 CreateProcess 대신 &lt;b&gt;ShellExecuteEx&lt;/b&gt; 함수를 사용해야합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;498&quot;&gt;&lt;span data-url=&quot;https://t1.daumcdn.net/cfile/tistory/255A2C455711A9CD26?original&quot; data-phocus=&quot;https://t1.daumcdn.net/cfile/tistory/255A2C455711A9CD26?original&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/255A2C455711A9CD26&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F255A2C455711A9CD26&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;320&quot; height=&quot;498&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;498&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb759784(v=vs.85).aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb759784(v=vs.85).aspx&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- R : Required, 필수인자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- O : Optional, 생략가능한 인자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- out : outparam, 리턴&amp;nbsp;출력 값&lt;/p&gt;
&lt;table class=&quot;txc-table&quot; style=&quot;border: none; border-collapse: collapse; font-family: '맑은 고딕', sans-serif; font-size: 12px; width: 649px;&quot; border=&quot;0&quot; width=&quot;649&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border: 1px solid #cccccc; background-color: #faecc5;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;b&gt;멤버&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-top-width: 1px; border-top-style: solid; border-top-color: #cccccc; background-color: #faecc5;&quot;&gt;&lt;span&gt;&lt;b&gt;설명&lt;/b&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;DWORD cbSize (R)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;구조체의 크기,&amp;nbsp;sizeof(SHELLEXECUTEINFO)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 33px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;ULONG fMask (R)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 33px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;구조체 플래그로 여러 속성을 OR연산으로 사용 가능...&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;자세한 내용은 생략하겠습니다.&amp;nbsp;(궁금하시면 위 msdn 링크로 이동해보세요~)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;HWND hwnd (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;부모 윈도우의 핸들&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 129px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;LPCTSTR lpVerb&lt;/b&gt;&amp;nbsp;(R)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 129px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;권한 상승과 관련된 필드&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- open : lpFile&amp;nbsp;인자로 파일 실행, (문서, PE, 폴더 등등)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- edit : lpFile 인자로 파일 수정 시도, (오로지 문서 파일만 가능!)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- explore : lpFile 인자로 설정된 폴더 오픈&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- find : 설정된 폴더부터 검색을 시작&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- print : lpFile 인자로 설정된 문서 파일 인쇄작업 (역시 문서 파일만 가능)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- properties : lpFile 인자로 설정된 파일의 속성 보기&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;b&gt;- runas : lpFile 인자로 설정된 파일을 관리자 권한으로 실행&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;LPCTSTR lpFile&lt;/b&gt;&amp;nbsp;(R)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;실행 할 파일의 경로 지정&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;&lt;b&gt;LPCTSTR lpParameter&lt;/b&gt; (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;실행 파일의 파라미터 지정, &lt;b&gt;cmdline&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;LPCTSTR lpDirectory (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;실행 될 디렉토리 지정, NULL이면 현재 프로세스가 실행되는 경로로 설정&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;int nShow (R)&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;실행한 프로세스가 어떻게 화면상에 표시될 것인지 결정&lt;/span&gt;&lt;br /&gt;&lt;span&gt;자세한 내용은 생략, 추가 정보는 아래 링크 확인&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb762153(v=vs.85).aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb762153(v=vs.85).aspx&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;- nShowCmd 인자 관련 내용&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot;&gt;&lt;span&gt;HINSTANCE hInstApp (out)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot;&gt;&lt;span&gt;실패시 에러코드 리턴&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;LPVOID lpIDList (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;파일 실행에 필요한 추가 플래그들 포함 (ITEMIDLIST 구조체)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;역시, 자세한 내용은 생략&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb773321(v=vs.85).aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb773321(v=vs.85).aspx&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;LPCTSTR lpClass (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;프로그램ID, URI, 파일 확장자, 레지스트리 등을 명시&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;HKEY hKeyClass (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;현재 파일의 레지스트리 키의 핸들&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;DWORD&amp;nbsp;dwHotKey (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;현재 프로세스에 대한 단축키 지정, WM_SETHOTKEY&lt;/span&gt;&lt;br /&gt;&lt;span&gt;자세한 내용은 생략&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;a class=&quot;tx-link&quot; href=&quot;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms646284(v=vs.85).aspx&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms646284(v=vs.85).aspx&amp;nbsp;&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;union DUMMYUNIONNAME (O)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;HANDLE hIcon : 파일의 아이콘 핸들로 비스타 이후로는 사용되지 않음&lt;/span&gt;&lt;br /&gt;&lt;span&gt;HANDLE hMonitor : 현재 보여지는 문서의 모니터 핸들(?)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 177px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc; border-left-width: 1px; border-left-style: solid; border-left-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;HANDLE hProcess (out)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 471px; height: 24px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cccccc; border-right-width: 1px; border-right-style: solid; border-right-color: #cccccc;&quot; rowspan=&quot;1&quot;&gt;&lt;span&gt;새로 시작되는 프로세스의 핸들로 때로는 NULL이 될 수도 있음&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;ins class=&quot;kakao_ad_area&quot; style=&quot;display: none;&quot; data-ad-unit=&quot;DAN-1Sf0ClaXutbtzbdT&quot; data-ad-width=&quot;300&quot; data-ad-height=&quot;250&quot;&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;//t1.daumcdn.net/kas/static/ba.min.js&quot;&gt;&lt;/script&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 이 ShellExecuteEx를 이용해 관리자 권한으로 프로세스를 실행시키려면 아래와 같이 코드를 짤 수 있습니다. (예)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0900ff;&quot;&gt;BOOL &lt;/span&gt;bShellExecute = &lt;span style=&quot;color: #6600ff;&quot;&gt;FALSE&lt;/span&gt;;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #670000;&quot;&gt;SHELLEXECUTEINFO &lt;/span&gt;stShellInfo = { &lt;span style=&quot;color: #0900ff;&quot;&gt;sizeof&lt;/span&gt;(SHELLEXECUTEINFO) };&lt;span style=&quot;color: #22741c;&quot;&gt; // 구조체 초기화&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;stShellInfo.lpVerb = &lt;span style=&quot;color: #670000;&quot;&gt;TEXT&lt;/span&gt;(&quot;runas&quot;); &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #22741c;&quot;&gt;// 관리자 권한 실행&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;stShellInfo.lpFile = &lt;span style=&quot;color: #670000;&quot;&gt;TEXT&lt;/span&gt;(&quot;C:\Windows\System32\cmd.exe&quot;); &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #22741c;&quot;&gt;// 권리자 권한으로 실행시킬 파일&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;stShellInfo.nShow = &lt;span style=&quot;color: #6600ff;&quot;&gt;SW_SHOWNORMAL&lt;/span&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #22741c;&quot;&gt;// 실행될 프로세스의&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #22741c;&quot;&gt;윈도우 보여주기&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;bShellExecute = &lt;span style=&quot;color: #670000;&quot;&gt;ShellExecuteEx&lt;/span&gt;(&amp;amp;stShellInfo);&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;if(!bShellExecute)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;{&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0900ff;&quot;&gt;DWORD &lt;/span&gt;dwStatus = &lt;span style=&quot;color: #670000;&quot;&gt;GetLastError&lt;/span&gt;();&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; if(dwStatus == &lt;span style=&quot;color: #6600ff;&quot;&gt;ERROR_CANCELED&lt;/span&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; {&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #22741c;&quot;&gt;&amp;nbsp;// 사용자의 권한 상승 거절&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; else if (dwStatus == &lt;span style=&quot;color: #6600ff;&quot;&gt;ERROR_FILE_NOT_FOUND&lt;/span&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; {&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #22741c;&quot;&gt; // lpFile로 지정한 파일이 존재하지 않음&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;}&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약, 부모 프로세스가 관리자 권한으로 실행되고 있고 자식 프로세스도 관리자 권한으로 실행되어야 할 때에는 굳이 ShellExecuteEx로 실행시킬 필요가 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 자식도 관리자 권한으로 실행되거든요&lt;/p&gt;</description>
      <category>Windows/Windows Programming</category>
      <category>ShellExecuteEx</category>
      <category>관리자 권한</category>
      <category>사용자 계정 컨트롤</category>
      <author>MOLOKINI</author>
      <guid isPermaLink="true">https://wonjayk.tistory.com/283</guid>
      <comments>https://wonjayk.tistory.com/283#entry283comment</comments>
      <pubDate>Sat, 16 Apr 2016 13:41:33 +0900</pubDate>
    </item>
  </channel>
</rss>