블로그 이미지
게임개발자 그건일

카테고리

분류 전체보기 (236)
개발 (139)
취미생활 (75)
기타 (20)
Total108,041
Today0
Yesterday251
curl 은 웹서버와 통신하기 위한 라이브러리 입니다.
(다운로드: http://curl.haxx.se/download.html)
현재 퍼플리셔가 빌링을 웹서버와 통신하도록 지원했기때문에 어쩔수 없이 이걸 사용해야합니다.

비쥬얼 스튜디오에서 curl 빌드방법은 쉽습니다.  프로젝트 파일이 있기 때문이죠.
문제는 사용할때 LDAP 라는게 없다고 링크에러를 밷습니다.

그래서 ldap 를 찾으니 구글에서 OpenLDAP 를  보여줬습니다.
막상 윈도우즈에서 돌려보려고 하니 "이건 아니다" 라는 생각이 들정도로 윈도우즈랑은 안맞았습니다.
(왜 open 을 붙이냐고!!)

그렇다면 curl 은 어떻게 빌드된거지...

하면서 이런걸 찾았습니다.

#include <windap.h> 

그렇습니다. windows 에서 기본제공 합니다..
링크는 
Wldap32.lib 이걸 해주시면 됩니다. 

curl 은 c 언어인데 이것을 c++ 로 레핑해주는 게 있다는군요
일단 저는 무식하게 c 로 짰습니다.
curl 말고도 expat 이라는 xml 읽는 툴도 c++ 로 레핑한 버전이 있는데 c 로 그냥 짜서 씁니다.
(c++ 만 6년이 다되가는 경력을 가졌는데 이런짓 하고 있습니다.)

다음에 시간나면 좀더 자세히 적어 보겠습니다.
(제가 오늘 삽질한 내용은 한국엔 거의 내용이 없거나 php 용이 많아서 써봤습니다.)


#include <curl/curl.h> 하실때
static lib 로 빌드하셨다면 (저는 static lib 를 사랑합니다.)

#define CURL_STATICLIB   //include 보다 위에 있어야합니다.
#include <curl/curl.h>


 
저작자 표시
신고
Posted by 그건일
최근 개발중인 xxxx 어플이 아이팟을 이용하고 윈도우즈 프로그램과 통신을 해야하는데
방화벽이 문제다.

tcp 1001 번을 사용하는데 프로그램을 사용할때 등록 시켜주지 않으면 일반유저들은 사용하기 힘들것이다.
아는 사람 정보에 의하면 배포할 경우 99%는 방화벽 설정을 혼자 해결할 수 없는 유저라고 한다.

고로 이걸 자동으로 등록시켜주어야하는데... gpgstudy 에서 실마리를 얻었다. 하지만...
[http://www.gpgstudy.com/forum/viewtopic.php?topic=10474] <-문제의 쓰레드

질문자분도 엄청 찾으셨지만 결론은 gpg가 불친절하다는거.

링크는 이미 망가져있었고 해당 레지스트리에는 윈도우즈 방화벽을 끌지 켤지를 설정할 수 있는 변수가 있다.

[내가 원하는건 방화벽을 끄는게 아니고 tcp 1001 번을 여는건데....]


해봤는데 안된다.
현재 등록되어있는 정보들은 해당 레지스트리에 있는게 확실하나
직접 입력하는것은 열리지 않았다. (아마 리부팅하면 되려나?)

유저들중 50% 는 리부팅을 해야 한다고 하면 프로그램을 사용하지 않는다고 한다.
된다 하더라도 이방법이 답은 아닌거 같았다. 그래서 좀더 찾아봤지..


예제가 있다/없다/등등의 말이 오간후에 codeproject 의 링크하나가 올라왔다.
[http://www.codeproject.com/KB/winsdk/Antifirewall.aspx]
들어가 봤더니 방화벽 자체를 on /off 하는 코드였다.

이건 아니다 싶어 codeproject 에서 [Windows firewall] 라는
 검색어 를 사용해서 찾았더니 뭔가 나왔다.

[http://www.codeproject.com/KB/IP/enable_disable_firewall.aspx] <- 이것은
특정 라이브러리를 이용해 방화벽을 on/off 시키는 방법이다. 라이브러리 명은

NetFwTypeLib
흠. 뭔가 찾아지는거 같다. 하지만 visual basic 소스 거기다 on/off 시키는 것이지
app 를 추가 하는건 아니다.

google 에서 다시 검색을 해보니 MSDN 이 나왔다.
[http://msdn.microsoft.com/en-us/library/aa364726(VS.85).aspx]

INetFWTypeLib 라는 것을 이용해 정식으로 application 을 등록시키는 소스다.
사용해보진 않았지만 비슷한 링크가 gpg 의 글에서도 나왔다.
결국 답은 gpg 에 있었지만 영어라 제대로 안본게 문제..

기능이 많아서 그런지 소스자 조낸 길다... -_-;


(class 로 된 소스 추가)

저작자 표시
신고
Posted by 그건일

최근에 달린 댓글

글 보관함