[기초] Excel Automation with Ruby

Posted by 미루 공부합시다!/Ruby : 2008/02/25 12:49

요즘들어 회사에서 계속 엑셀 잡무가 떨어지게 돼서 좀 더 간단히 해결할 수 있지 않을까 하는 방법을 찾다가 엑셀 오토메이션 쪽을 찾게 됐습니다. -0-

생각보다 간단하더군요~ 바로 예제소스를 보시죠~



주석을 열심히(?) 달아 놓았으니 이해하는데 결코 어렵지 않으리라 생각한답니다~ ㅎㅎ

결과는 아래와 같구요~


사용자 삽입 이미지

---------- Ruby Run EUC-KR ----------
[["핫"], ["둘"], ["셋"], ["넷"]]

출력 완료 (1초 경과)

어때요.. 여러분도 잘 나오시나요?..

그럼 엑셀작업 편히 하세용~

히히~

'공부합시다! > Ruby' 카테고리의 다른 글

[기초] Excel Automation with Ruby  (8) 2008/02/25
Ruby CGI 환경 구축하기  (6) 2008/02/21
새 카테고리 Ruby  (15) 2008/02/18

Ruby CGI 환경 구축하기

Posted by 미루 공부합시다!/Ruby : 2008/02/21 14:30
0. 사설

Ruby를 공부하다보니 자연스레 눈에 띄는게 바로 Rails더군요.. Ruby on Rails 줄여서 ROR이라고 불리우는 이것은 루비 웹 프로그래밍 환경을 제공하지요.

괜스레 계속 눈길이 가길래 용감(무식을 동반한)하게 도전을 하였지만 사용자가 뭔가 별로 만진 것도 없는데 자동으로(?) 블로그를 만들어버리는 이해못할 예제를 보고서는 기겁을 하는 미루군입니다. ㅜ.ㅜ;

ROR의 거대한 덩치에 놀란 가슴을 다독여 주며 살짝 눈을 돌리기 시작했습니다. "PHP처럼 간단히 루비 코드를 Html 페이지에 삽입 할 방법은 없을까?" 하며 말이지요.. 역시나 하늘은 스스로 돕는자를 돕는다고 eRuby라는 것을 발견하기에 이릅니다.

구글링을 열심히 해 보니 이 eruby 라는 녀석이 PHP등의 CGI와 같은 역할을 해 준다는 것이었습니다.

자.. 그럼 이제 설치를 해 보고 테스트 해 봅시다. +ㅅ+



1. 자료모으기

이제 삽질을 시작해야 하니 제일 먼저 삽을 구해야겠습니다. (삽은 어디꺼가 좋드라...?)

가장 메인이 되는것은 바로 Ruby입니다 ;ㅁ; 당연히 루비가 설치되어 있을 것이라고 생각하기 때무네!

루비 설치에 관한 것은 넘어가도록 하겠습니다. -_-;

다음으로 필요한 것은 바로 웹서버가 되겠습니다. ;ㅁ;

일단 웹 서버로는 여러가지(Apache, Mongrel, Webrick, Lighttpd 등)가 있는데요 설정도 쉽고 이래저래 편리한 Lighttpd를 이용하는 방법만 알아보도록 합시다.

리눅스등을 쓰시는 분들이라면 lighttpd를 바로
http://www.lighttpd.net/ 에서 받아서 설치하시면 아주 간단하겠지만 저처럼 윈도우즈를 이용하는 분들은 일단 설치가 힘들죠;; 그래~서! 찾아보니 참 친절하게도 APM 과 같이 자동으로 설치를 해주는 프로젝트를 찾았습니다. 바로 WLMP Project lol WLMP 라 하면 Windows Lighttpd Mysql PHP의 약자가 아닐까 싶은데요 어쨌든 필요한 것은 바로 Lighttpd 이니 저는 그것만 설치하도록 하겠습니다.

사용자 삽입 이미지

자.. 이제 웹서버가 준비 됐으니 사설에서 얘기한 eRuby를 구해보도록 합시다. 이것은
http://www.modruby.net/en/ 이곳에서 받을 수 있는데요 역시나 윈도우즈용 바이너리는 준비되어 있지 않으므로! 구해놓은 것을 다운받으시는게 편하실 겁니다.;;

자.. 이것으로 자료는 모두 모인 것 같습니다만.. 확인 해 보고 다음으로 넘어갑시다..^^

1. Ruby
2. Lighttpd
3. eRuby

위 3가지가 모두 준비되신 분은 다음으로 고고싱~


2. 설치

주의:: 아래 설치 과정 및 방법은 모두 Windows기반으로 설명합니다. -0-; 다른 OS는 죄송;;

Ruby는 기본으로 인스톨을 완료하셨을 것이라 생각하므로 패스합니다.;;

그럼 다음으로 Lighttpd .. 다운로드 받은 파일을 실행하여 설치 해 줍니다.

설치가 다 되었으면 한번 실행해 봅시다~

프로그램이 설치 된 디렉토리 내의 TestMode.bat를 실행하여 서버를 돌려봅니다.

ex ) C:\Program Files\LightTPD\TestMode.bat

사용자 삽입 이미지

위와 같이 실행이 된다면
http://127.0.0.1 이 링크로 접속하여 아래와 같은 화면이 나오는지 확인합니다.

사용자 삽입 이미지


서비스로 설치하기.

프로그램이 설치 된 디렉토리 안의 bin 디렉토리 내에 있는 Service_Install.exe 를 실행하여 서비스를 시작합니다.

ex ) C:\Program Files\LightTPD\bin\Service-Install.exe

이렇게 서비스로 인스톨 하고 나면 서비스 형태로 동작하여 재부팅 시에 자동으로 시작된답니다.
위 화면이 나오면 lightTPD가 잘 설치된 것입니다. -0-!!

이제 다음 eRuby로 넘어가도록 하죠.

eRuby는 딱히 설명할 것도 없습니다.

압축을 풀면 아래와 같은 디렉토리 4개가 나옵니다.

사용자 삽입 이미지

요 디렉토리들을 그대로 루비가 설치된 곳에 덮어 씌워 주시면 되겠습니다.

잘 설치가 되셨다면 이제 설치가 끝난겁니다.

사용자 삽입 이미지



3. 설정


이제 lighttpd와 eruby를 연결하도록 해 봅시다.

먼저 lighttpd가 설치된 디렉토리 내의 conf폴더에 가보면 lighttpd-inc.conf 라는 설정 파일이 있습니다.

텍스트 에디터로 열어봅시다.



원래의 document-root의 경로가 상대경로로 지정되어 있는데 이것을 절대경로로 바꾸어 줍니다. ( 이렇게 해주지 않으면 eruby에서 저 경로를 찾지 못해요 -0-)

다음 조금 올라가서 cgi 모듈을 사용할 수 있도록 주석을 풀어줍니다.

사용자 삽입 이미지
그 후 쭈우욱 밑으로 내려가 보시면

CGI module 이라는 것을 찾을 수 있으실 겁니다.
사용자 삽입 이미지

위 주석처리 된 곳 부근에




요렇게 한 줄 넣어줍니다.

뒤쪽의 d:/ruby/bin/eruby.exeeruby가 설치된 경로명입니다. 자신의 설치 경로를 잘 확인하시고 설정하도록 합시다.

벌써~!! 설정이 끝났습니다. lol~~

이제 다시 lighttpd가 설치된 곳의 TestMode.bat를 실행하여 오류가 없이 잘 실행되는지 확인합니다.

맨 처음 TestMode.bat를 실행했을 때와 똑같이 나온다면 잘 적용된 것일 겁니다.


4. 테스트


이제 실제 잘 적용이 되고 동작을 하는지 살펴 볼 차례입니다.

eruby에서 ruby 스크립트를 삽입하는 방법은 3가지가 있습니다.



그럼 이제 lighttpd가 설치된 디렉토리 내의 htdocs 폴더에 test.rhtml 파일을 하나 만들어 넣어봅시다.

파일의 내용은 생각나는대로 작성 해 보시고.. 저는 아래와 같이 했습니다.



이제 접속해서 잘 동작하는지 봅시다. http://127.0.0.1/test.rhtml

어떤가요? 이런 화면이 나오시나요?..

사용자 삽입 이미지


5. 마무리


이제 루비스크립트를 웹서버에서 사용할 수 있게 되었습니다. +ㅅ+

이것을 이용해서 무엇을 할 지는 만드는 사람 맘이지요 하하핫;;

뭔가 잘 안되시거나 질문이 있으시다면.. 리플로 남겨주시고요 (하지만 답변을 기대하진 마셔요.. 저도 이제 막 공부 시작했는걸요 :-) )

다음에 RoR를 더 자세히 살펴보도록 합시다. ㅎㅎ

'공부합시다! > Ruby' 카테고리의 다른 글

[기초] Excel Automation with Ruby  (8) 2008/02/25
Ruby CGI 환경 구축하기  (6) 2008/02/21
새 카테고리 Ruby  (15) 2008/02/18

새 카테고리 Ruby

Posted by 미루 공부합시다!/Ruby : 2008/02/18 11:14
Ruby Logo

얼마전부터 루비를 공부하기 시작했답니다. lol

오랜만에 접해보는 스크립트 언어의 매력에 빠져 요리조리 건드려보니.. 배우기도 쉽고 재밌네요. .^^

일단 가장 큰 장점이 쉽고 재밌다는 것 같습니다..

이제부터 열심히 공부해 보려 하니.. 심심하신 분들 같이 놀아요~ ㅎㅎ

'공부합시다! > Ruby' 카테고리의 다른 글

[기초] Excel Automation with Ruby  (8) 2008/02/25
Ruby CGI 환경 구축하기  (6) 2008/02/21
새 카테고리 Ruby  (15) 2008/02/18
태그 : ruby

요즘 블로그들을 돌아다니다보면(여기도 그렇지만) 글에 줄공책과 같이 줄을 그어놓은 스킨을 쓰시는 분들이 많이 계신 것 같더군요. 그런 블로그들을 보면 이미지나 기타 테그들을 넣으면서 줄간격이 어그러지는데 그것을 보면.. 괜히 글 전체가 지저분하게 보이고... 여튼.. 별로 보기 안좋더군요.

줄간격 어그러지는 블로그. ㅜㅜ
제 블로그에도 이번에 스킨을 새로 바꾸면서 글에 줄간격을 넣었는데... 혹시나 했는데 역시나 줄간격이 깨지는 것이 아니겠습니까?..

스프링노트를 쓰고 있는데 그곳에도 그림을 넣으면 줄간격이 깨져서 이미지를 잘 넣지 않고 있는데 이미지를 집어넣고 줄간격이 깨져있는 제 블로그를 보니 고치고 싶은 마음이 자라가 고개를 내밀듯 불쑥 나타나더군요~

그래~서! 만들었습니다..^^: 하지만.. 완벽한 것이 절대로 아니라는 거~ (제가 자바스크립트를 잘 모르다보니 여기저기 자문을 얻어서 뚝딱뚝딱 만들어 넣었기에;;;)

그냥 이런 팁이 있다는 것 정도로만 알아주시면 고맙겠습니다.... (이 방법을 개량해서 좀 더 포괄적이고 멋지게 적용시켜 주실 수 있는 분 있으시면 저한테 꼭 트랙백이나 리플로 알려주시면 감사하겠습니다~)



먼저 원리를 설명드리자면 간단합니다.

줄간격을 22px로 설정했다고 합시다. 이미지의 크기는 제각각일 것이고요. 이미지의 height를 22px의 배수로 만들면 줄간격이 흐트러지지 않고 깔끔하게 나올 수 있을 것 같더군요. 하지만 height만 22px의 배수로 만들자니 이미지의 width가 문제생길 수 있고 원본 사이즈 그대로 출력하고 싶었던 것이 줄간격 크기 대로 리사이즈 되는 것도 별로 보기 안좋고 해서. 이미지의 여백을 이용하기로 했습니다. 22의 배수에서 부족한 만큼을 여백의 위와 아래 분배해서 넣도록 하는 것이었습니다.

결국 그 방법으로 이미지에 관해서는 성공을 해서 이미지만 들어있는 글은 줄간격이 잘 맞는 것을 확인하였는데 문제는 이 줄간격을 깨뜨리는 것이 이미지만 있는 것이 아니더군요!!! 털썩...  일단 여기까지 하고 blockquote나 embed , 글자 크기가 다른 것들에 관해서는 천천히 고민해서 해결해야 할 것 같습니다.. ㅜㅜ

위에서도 얘기했지만.. 자바스크립트를 잘 몰라 소스가 굉장히 지저분하니 용서하세요..^^

Giveaway of the day

Posted by 미루 공부합시다!/Datas : 2007/01/18 01:45

매일 매일 무료로 정품 소프트웨어를 받을 수 있게 해주는 사이트가 있는 것을 발견했다.

맘에 드는것이 있으면 써보고 후에 정말 마음에 든다면 구매하면 된다! 라는 것;

1. No free technical support

2. No free upgrades to future versions

3. Strictly non-commercial usage

이라고 하지만..

공짜로 유료 소프트웨어를 이용할 수 있다는건 큰 매력이 있지 않은가?..

이제 매일매일 이곳을 들려보자!

http://www.giveawayoftheday.com

localtime() 함수에 대해...

Posted by 미루 공부합시다!/Tip n Tech : 2006/10/26 20:07

시간에 관련된 함수를 사용하다보면 localtime함수를 쓰게 될 때가 있다.

time_t t = time(NULL);
tm * pTm = localtime(&t);

요렇게 하면 pTm에는 오늘의 날짜 및 시간이 저장되는데..

이 localtime에서 리턴되는 포인터는 static area의 주소를 리턴하는 것이다.

따라서.. 메모리를 해체하면 안된다는 것!..

제대로 피봤다 ㅜㅜ..

태그 : localtime, time.h

Direct3D를 사용하는 도중에 커다란 문제가 생기기 시작했습니다.;

부동소숫점을 사용하는 것들이 정상적으로 동작하지 않는 것이 아니겠습니까?..

가장 첫번째로 눈에 들어온 것은 TDateTimePicker의 오동작 문제였습니다..

이러한 문제가 벌어진 것이지요..

게다가 연산을 하는데 또다른 문제가 발생하기 시작했습니다.

double a = 4122008.1234;

이렇게 넣어주는데 까지는 전혀 문제가 없지만..

a += 0.1234;
요 문장이 들어가고 난 이후에는..

a의 값이 4122008.2468 이 되는 것이 아니라 4122008.25 가 되어버리더군요...

소숫점 하나하나가 중요한 연산이 되고 있는 상황에서 이 정도의 오차율에 기겁을 하고 말았습니다. -0-;;

이 문제를 해결하기 위해 a += 0.1234; 라는 코드를 한줄 한줄 넣어 찾아본 결과 CreateDevice 를 한 뒤부터 저렇게 동작을 하고 말더군요!

( DX8, DX81, DX9 모두 똑같은 문제점이 있었습니다. ;ㅁ; )

어디가 문제인지 인식하였으므로.. 이제 남은 방법은 해결하는 것 뿐이죠..

구글링을 해보니 비슷한 문제를 갖고있던 분들이 계셨나봅니다. +ㅅ+

D3DCREATE_FPU_PRESERVE 요것에 대해 나오더군요!

CreateDevice 함수의 인자중 하나인 BehaviorFlags 에 넣어주면 된다는 것이지요!

ex)

CreateDevice( D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL,G_HANDLE,
       D3DCREATE_SOFTWARE_VERTEXPROCESSING | D3DCREATE_FPU_PRESERVE,
       &d3dpp,&g_pd3dDevice) ) )

휘유~ 이제 부동소숫점 연산을 무사히 할 수 있겠군요 -0-;;

이전에 한번 소개한 적이 있던 HighSlide를 플러그인화 하였습니다.

워낙에 대충 대충 여기저기서 훔쳐와서 만든거라...

제 블로그 에서만 공개합니다. -0-;

Plugin의 기본 소스는 Chiri님의 Lightbox 플러그인을 참조하였습니다.




사용방법은 간단히 플러그인을 받아서 _miru_highslide 폴더 안에 파일을 넣어주시면 됩니다.

아니면 압축된 파일 자체를 서버에 올려서...

[miru@server plugins]$ tar xvzf _miru_highslide.tar.gz

를 해주시면 되겠네요~ 플러그인 폴더에서 압축을 푸시면 자동으로 폴더가 생성됩니다.

만약 다른 폴더에 올리셨다면....

압축푸신폴더/highslide/highslide_white_rounded_outline.css

이 파일안의 경로를 조금 수정해 주셔야겠습니다.

파일의 설치를 마치셨으면.. 버전별로 2가지 적용 방법이 있습니다.

- 테터툴즈 버전 1.06 이상의 경우

환경설정 - 플러그인 관리 - 플러그인을 사용함 으로 변경

이 작업으로 바로 활성화가 된답니다.

- 테터툴즈 버전 1.06 미만의 경우.

스킨관리 - 현재 스킨을 편집합니다. 에서..

<head> </head> 테그 안에 [##_HIGHSLIDE_HEADER_##] 요녀석을 넣어주시고요.

<body> 테그 바로 밑에 [##_HIGHSLIDE_DIV_##] 요녀석을 넣어주시면 됩니다.

그리고 위에 1.06 버전과 같이 플러그인을 사용함으로 변경해 주시면 플러그인이 적용됩니다.

-0-

그리고 HighSlide에는 여러가지 스킨들이 있는데요..

그것은 여러분이 직접 변경해 보세요 -0-~ 냥냥...

----------------------------------
HighSlide 원 제작자 : http://vikjavev.no/highslide/


-----------------------------------------------------------------------

추가. [ 06-10-23 ]
사용자의 PATH를 무시하는 버그가 있었네요 -0-;;
무한 로딩의 세계를 보실 수 있답니다.;;;; 아하핫 -0-;
다시 다운로드 받아주시면 감사하겠습니다.~;

언젠가부터 도메인 가격이 매우 저렴해지기 시작했지요..

그래서 도메인을 하나 둘 씩 사다보니.. 벌써 4개가 되어버렸네요 -0-;;

결국 사용하게 된 도메인은 miru.pe.kr 이지만 여기저기 알리질 않다보니 주로 접속 or 링크되어있는 도메인은 qnpfr.com 인 것이 아니겠습니까?..

이것참 큰일이 아닐 수 없습니다.;;

다른 블로그나 홈페이지등에서 제 글을 링크할 때 이용된 도메인은 대부분 qnpfr.com ... 버릴수도 없고.. 그닥 사용하고싶진 않은.. 그런 애물딴지가 되어버렸습니다.;;

"이를 어찌하면 좋을까?.." 하고 생각하다가..  "아!. 이 도메인으로 접속하면 도메인을 포워딩해서 miru.pe.kr로 바꾸면 되겠다!"

그래서 슥삭 슥삭 만들어 보았습니다.;

:: index.php :: 파일.
<?
  if($HTTP_HOST != "miru.pe.kr")
// 접속한 도메인이 miru.pe.kr인지 확인해서.. 아니면..
   header("location:http://miru.pe.kr");
// miru.pe.kr로 이동한다.
?>
요렇게 만들어 놓고 보니.. 대충 2가지 정도 큰 문제점이 눈에 띄더군요..

첫째.
http://qnpfr.com/130 , http://qnpfr.com/entry/재밌는-퍼즐놀이 이런식의 URL로 접근하게 되면.. 그냥 이전의 URL 로 접속이 되어버리지요.. qnpfr.com 으로 접속해야만 miru.pe.kr로 접속이 되는 것입니다.;;

둘째. 테터툴즈를 이용하고 있는데.. 저 index.php를 놓을만한 곳이 없습니다. -_-;;

대~충 봤을때 저정도 문제가 있더군요..

이 문제를 어떻게 타개해야 하는가?..

방법을 이리저리 알아보다가 테터툴즈가 Rewrite 모듈을 이용한다는 사실을 알아냈습니다.

Rewrite 모듈이 뭔가요?..

자세한 설명은 구글링해보시고요, 간단히 말하자면 사용자가 홈페이지에 접속하게 되면 서버에 설정한 방법대로 맘대로 URL을 변경해 버리는 역할을 한답니다.

예를들어
http://miru.pe.kr/130 으로 접속을 하면.
http://miru.pe.kr/blog/item.php?id=130 이런식으로 변경하여 접속하게 만드는 겁니다. ( 이 예는 그냥 예 일뿐 실제는 다른 URL로 변경됩니다. )
이걸 이용하면.. 문제를 해결할 수 있겠군요!..

이 Rewrite모듈을 이용하려면 아파치에 rewrite모듈이 설치되어 있어야 합니다.. (서버관리자에게 물어보세요~)

이제 적용을 하려면 먼저 홈 디렉토리로 이동합니다.

파일을 하나 만들어야 하는데요.. (이미 만들어져 있을 수 있습니다.) 한번 만들어 봅시다.

$ vi .htaccess  ( htaccess 앞에 "." 빼먹으시면 안됩니다. (리눅스에서 파일명 앞에 . 이 붙은건 숨은 파일이죠..), 테터툴즈가 설치된 폴더일 경우 이미 생성돼 있답니다.)

이제 그 안에 들어갈 내용을 넣어봅시다.

# <-- 이표시는 주석이라는 뜻입니다. 넣어도.. 안넣어도 상관없지요~

RewriteEngine On
# RewriteEngine을 켭니다. 테터툴즈의 경우 자동 생성된 것이 있으니 거기에 아래것들만 넣으시면 되겠습니다.

RewriteCond %{HTTP_HOST} !^miru\.pe\.kr$
# 먼저 Rewrite될 조건을 찾습니다.; %{HTTP_HOST}라는 변수에 도메인 주소가 들어오게 되는데요.. miru.pe.kr 이 아닐 경우 Rewrite 되도록 정합니다.

RewriteRule !^(miru\.pe\.kr)$ /home/miru/public_html/redirecturl.php
# 위 RewriteCond의 조건에 맞을 경우 바로 아래에 있는 RewriteRule 이 실행되는데요.. 마찬가지로 miru.pe.kr이 아닐 경우 홈디렉토리에 있는 redirecturl.php로 이동합니다.

자세한 설명은 인터넷을 뒤져보시면.. 가득합니다. -0-;;

그런데 왜 저기에 URL을 바로 변경하지 않았나요?...

.. Rewrite모듈은 접속된 URL을 변경하는게 아니라 URI만 변경이 가능하다고 합니다. 따라서 URL자체를 변경시키기 위해 한가지를 통과하는 것이지요..

:: redirecturl.php ::

<?
  $que = getenv("REQUEST_URI");
  // http://qnpfr.com/blahblah  이 URL 중 /blahblah 부분을 가져옵니다.
  header("location:http://miru.pe.kr$que");
   // http://miru.pe.kr/blahblah 로 주소를 바꿉니다.
?>
자.. 이걸로 모두 끝났습니다.

이제 어떤 도메인으로 접속을 하든

miru.pe.kr  로 접속이 되는 것이지요~

테스트 )
http://mirustyle.com/120
http://mirustyle.com/entry/재밌는-퍼즐놀이
http://qnpfr.com/130
http://qnpfr.com/tag/
http://miru.be/guestbook
등.. 이제 어느 주소로 접속해도..

원하는 url인 miru.pe.kr 로 연결되는걸 알 수가 있답니다.;;

저 redirecturl.php 를 조금 바꿔서 접속하신 도메인이 올바른 도메인이 아니니 올바른 주소로 접속해 주시면 감사하겠습니다.~ 등의 안내문구를 넣어도 좋을 것 같네요..

많이 부실한 설명이지만.. 그리 어렵지 않게 적용하실 수 있으리라 생각합니다.;;

이제.. 다른곳에 링크된 도메인때문에 걱정 안해도 되겠군요 +ㅅ+;


ps.
아무래도.. 잠깐동안 인터넷 검색하고 적용해서 바로 글을 쓴 것이므로.. 내용중 틀린부분이 있을 수 있답니다.;;
혹 그런부분이 있다면 다른분들이 잘못된 정보를 가져가시기 전에 잽싸게 알려주시면 감사하겠습니다.^^

winnt.h 에서의 오류.

Posted by 미루 공부합시다!/Tip n Tech : 2006/08/01 10:25
어느날 갑자기 winnt.h의 아래부분에서 에러가 나는 것이 아닌가?
//
// Void
//

typedef void *PVOID;
typedef void * POINTER_64 PVOID64;

위의 것을 요렇게 바꾸면 해결이 된다고 하는데..
typedef void* PVOID;
typedef void* POINTER_64;
typedef POINTER_64 PVOID64;


이런.. 왜 나는 해결이 안되지? (BDS 2006 사용 중)

그래서 여러가지 방법을 강구하던 바.. 다른 컴파일러의 winnt.h 와 비교하니 아래부분이 내가 갖고있는 것에는 없는것이 아닌가?.. 그래서 그부분을 복사해서 에러나는 부분 위에 넣으니 컴파일 오케이~!

이 아래 부분을 에러가 나는 부분 위에 붙여 넣어주면 되겠다.


more..

태그 : error, winnt.h
 «이전 1 2 3 4  다음»