본문 바로가기

개발 및 운영/프로그래밍30

DebugActiveProcess, WaitForDebugEvent, ContinueDebugEvent 삽질기 DebugActiveProcess(pid); while(WaitForDebugEvent(&dbgEventInfo, INFINITE)){if (dbgEventInfo.dwDebugEventCode == EXCEPTION_DEBUG_EVENT){dwdbgContinueStatus = DBG_EXCEPTION_NOT_HANDLED; // 중요!}ContinueDebugEvent(dbgEventInfo.dwProcessId, dbgEventInfo.dwThreadId, dwdbgContinueStatus);} 디버거에서 Exception가 발생했을 때 DBG_EXCEPTION_NOT_HANDLED 을 설정해주지 않으면클라이언트 프로세스가 죽는다...이거때문에 오늘 4시간넘게 암걸리는줄,,,,ㅠㅠㅠㅠ 안전한 예외.. 2017. 10. 19.
[JsServerSocket] Linux용 다중클라이언트 서버 라이브러리 JsServerSocket은 Linux에서 다중클라이언트 서버 프로그램 개발시 사용할 수 있는 라이브러리입니다. Server : i5-6100Client : i5-2390에서 CGCII Network TCP Test Client으로 테스트한 결과로 Connections : 4000 100ms마다 2번 1KBytes의 데이터를 송수신(ECHO)-> client에서 send/recv => 7.85MB/s / 7.85MB/s 100ms마다 10번 4Kbytes의 데이터를 송수신(ECHO)-> client에서 send/recv => 51.99MB/s / 51.89MB/s interval(10 ms) / range(3800~4000) 안에서 계속 연결과 연결해제를 반복하는 작업도 잘 작동하였습니다.수십만번 해도 .. 2017. 4. 12.
라이브러리 없이 mktime등 time함수 구현 AVR에서 필요해서 구현했습니다. 그래서 좀 type같은게 더럽(the love)습니다..하하... tm을 epoch time 으로 변환하는건 만들었는데... 반대 상황은 또 언제 만들지...하하..ㅠㅠ 10분만에 만들었네요...ㅎ 최신 버전은 https://github.com/jic5760/jstime 을 확인해 주세요~ 구현소스 /* * jstime.c * * Created: 2016-02-20 PM 11:54:05 (GMT+09:00) * Author: jichan (jic5760@naver.com) */ #include "jstime.h" /* MSVC(Visual Studio)에서는 inline가 작동하지 않기 때문 */ #ifdef _MSC_VER #define _JSTIME_INLINE st.. 2016. 2. 21.
프록시 환경 libwebsockets 에서 실제 클라이언트 IP 헤더 패치 2015.07.04. 01:48 클라이언트가 Proxy서버를 통해서 WebSocket서버로 접근을 해야 하는 상황(베스천 호스트)에서libwebsockets 라이브러리를 이용하면 실제 클라이언트의 IP을 받아오지 못하고 프록시 서버의 IP만 알 수 있습니다.( libwebsockets_get_peer_addresses 이용 )그래서... 방법이 없나... 하다가... 없더라 구요...ㅎ...왜 프록시 환경은 고려하지 않은건지...ㅠㅠlibwebsockets 에서 X-Forwarded-For 헤더를 읽어올 수 없었습니다.결국 소스를 수정하는 방법밖에 없어서 수정했습니다.다행이 lws_hdr_copy 관련된 부분을 쉽게 찾아 수정하기 많이 어렵진 않았습니다...뭐... 보시면 아시겠지만 lws_token_i.. 2015. 7. 31.
C로 DES 구현! 2015.06.19. 09:54 학교에서 정보보호 시간에 DES에 대해 배웠는데 한번 직접 짜 봤습니다.약 2시간 정도 걸렸네요~ 선생님이 만드신 PPT자료를 보고 만들었는데 자료에는 비트순서가 잘 나와있지 않아...실제 사용되는 DES알고리즘과는 차이가 있습니다.(2016-03-21 수정 - Standard에 맞게 수정함) 이건 그냥 DES알고리즘 자체만 구현한 것이니 그냥 참고용으로만 보세요~절대! 이 소스를 실제상황에서 사용하면 안됩니다!솔직히 효율성도 떨어지는 소스구요...ㅠ비트 순서 바꾸는 방법이 잘 생각이 안나 미리 지정된 테이블을 통해 막무가네로 바꿔버립니다.ㅎ #include #include #include unsigned char DES_IP_TABLE[64] = { 57,49,41,33.. 2015. 7. 31.
FreeType 라이브러리의 출력 문제..ㅠㅠ 2015.05.06. 21:47 Alpha형식의 도트형(?) 폰트 제작기를 만드는데... freetype라이브러리에 예상치 못한 문제들이 많네요...ㅠㅠ 우선... freetype예제 소스를 보면 y좌표를 이렇게 계산합니다.pen_y - face->glyph->bitmap_top + y이렇게 되면... pen_y 를 baseline으로 잡고 출력을 합니다. (그림출처 : http://cafe.naver.com/carroty/243850)저는 pen_y을 상단왼쪽으로 잡고 출력을 하고 싶어서... (그래야 폰트 생성기를 만들죠~)pen_y - face->glyph->bitmap_top + y + font_size 이렇게 바꾸었습니다.하.지.만.특정 글자들은 bitmap_top < char_height 인 .. 2015. 7. 31.
반응형