팀에서 개발한 프로젝트 중 CEF를 사용하는 윈도우 기반 프로젝트가 하나 있다. 이 프로젝트는 프론트엔드로 다양한 정보를 다양한 방식으로 제공하는데, 그 중 V8 Extension을 이용하기도 한다. 개발 도중 이곳에서 제공한 정보 중 한글이 깨진다는 제보를 받았다.애플리케이션에서는 CefRegisterExtension 함수를 호출해서 커스텀 데이터를 등록하는데, 여기까지는 CefString 타입으로 넘기는게 다라 뭐 할 것도 없다. 그렇다면 CEF 이후의 단계에서 메롱한게 아닌가 싶어 CEF 심볼파일과 각종 소스코드를 받아 스텝 바이 스텝으로 비교해봤다.증상위에서도 말했지만 V8 Extension에 등록하는 글자가 깨지는 증상이다. 가령, 아래와 같이 등록했다고 하면, 실제 개발자 도구에서는 아래와 같..
오랜만에 기분이나 낼 겸 윈도우 7을 VirtualBox에 설치하려 했다. 한동안 사용하지 않아서 그런지 VirtualBox는 6.x 버전이었고, 이참에 업데이트도 하자 해서 최신 버전(7.0.12 r159484)으로 업데이트를 먼저 진행했다. 좋다, 설치도 끝냈고, 간만에 윈도우 7 미디어를 넣고 설치와 정품인증까지 끝냈다. 그리고 2016년 경 MS에서 한번에 패키징해준 간편 롤업까지 모두 설치하고 Guest Additions(GA)를 설치하려고 미디어를 넣었다. 그러자.. 응 이게 뭐지? 디지털 서명을 검증하지 못했다고? 이제껏 GA를 설치하면서 이런 오류는 본 적이 없었다. 하지만 이전 버전에서도 가끔 autorun으로 실행되는 프로그램은 잘 동작하지 않았던 기억이 있어서 직접 미디어로 들어가 6..
시작하면서 대부분의 현대 프로그래밍 언어에서 제공하는 자료형 중 진위형(boolean)이 있다. 이 자료형의 도메인은 참(true)과 거짓(false)이 있으며, 진위형으로 선언된 변수는 두 값 중 하나를 갖는다. 또한 if나 while등 조건을 나타내는 표현식에서 평가될 수 있는 자료형이며, 자바나 C#같은 언어에서는 진위형으로 평가되지 않는 표현식은 조건식에 위치할 수 없다. 다만 과거 K&R C에서는 진위형 자료형은 존재하지 않았고, C와 비슷한, 혹은 오래된 역사를 갖는 다른 언어에서는 진위형이 없는 경우도 충분히 많다. 대신, 이러한 언어도 어떤 표현식이 참인지(=유효한지, 조건에 맞는지) 또는 거짓인지(=유효하지 않은지, 조건에 맞지 않는지)에 대한 여부는 존재한다. 가령, K&R C에서는 C..
시작하면서 윈도우 개발을 하다보면 자주 사용하는 함수가 있기 마련이다. 다행이도 API에서 제공해준다면 사용하면 그만이지만, 그렇지 않다면 직접 정의하면서 사용해야 한다. 특히, 유틸리티 함수들이 이런 경우가 많은 것 같다. 그리고 이런 부류의 함수들은 짧은 경험을 비추어 봤을 때, 함수 각각의 규모가 작은 탓에 필요할 때 마다 그때 그때 정의하여 사용한다. (물론 귀찮은 감도 없지않아 있어서 별도의 라이브러리 따위로 분리하여 관리하지도 않는 탓도 있다.) 문득 업무를 보는 도중 이런 함수들을 틈틈히 정리 해 놓으면 좋겠다는 생각에 오랜만에 블로그 포스트를 작성해본다. 목록 다음은 정리 해 놓은 유틸리티 함수 목록이다. 앞으로 추가될 가능성이 있으나, 본인의 능력을 고려했을 때 크게 기대하지 않는 편이 ..