전체 글 120

ODP.net 4 설치하기!!

Visual Studio 2010 에서 만든 web project 를 IIS + Oracle Server 서버에 배포할때마다 odp.net 4.0 관련 문제 때문에 골치가 아팠는데, ODAC (Oracle Data Access Component) 를 설치하는 방법에 비밀이 있었다! 원래, Oracle Server 또는 Oracle Client 설치 후에는 odp.net 2.0 (.net 2.0 용) 만 설치되어 있는데.. 별도로 배포되는 ODAC 에 .net 4.0 용 버전이 들어있는 것이었다!! 허나, 한 PC 에 오라클 두군데 설치해야하나? 해서 매번 odac 파일들을 복사해서 사용했는데.. ODAC 설치할때 Oracle HOME 을 바꿀 수 있었던 것이다!!! 바꿀 수 있는데 왜왜왜!! 회색으로 돼..

.NET 2013.08.13

ffmpeg 에서 pipe 출력(stdout) 으로 데이터 받기

1) FILE 등의 C runtime 을 사용해서 ffmpeg 출력을 읽기하려면 result = _setmode( _fileno( stdin ), _O_BINARY ); 등으로 입력을 꼭 binary 모드로 변경해야 한다 2) 출력의 wav 포맷 등 헤더에 크기가 포함되는 경우 정상적인 경우 값이 채워져 있겠지만, pipe 출력의 경우 미결정된 상황에서 데이터가 내보내지기 때문에 해당 값 체크에 유의 가령 WAV 파일의 경우 RIFF, DATA 다음에 파일 크기와 실제 데이터 길이가 오게 되지만 pipe 로 출력되는경우 해당 값이 0 으로 들어가 있다.

Build Note 2013.07.26

실행 파일의 버전 정보 확인하기

resource 에 기록된 파일의 정보를 읽는 함수 GetFileVersionInfoSize 두번째 파라미터가 아닌 return 되는 값을 확인해야 한다는 거에 유의! // filename : 조회하려는 파일 전체 경로 (NULL 전달시 현재 실행 파일을 조회) // FileVersion :: VER 리소스의 파일 버전 // ProductVersion :: VER 리소스의 PRODUCT_VERSION void GetModuleVersion(LPCTSTR filename, CString& FileVersion, CString& ProductVersion ) { LPCTSTR filepath = filename; TCHAR module[1024]; if(filepath == nullptr) { GetModu..

Win32 , C++ 2013.07.05

HTML Agility Pack 사용시 문제

HTML 을 불러와 xml 또는 xhtml 로 저장하려할때 1) form 태그가 하위 요소를 포함하지 않고 혼자서 태그가 닫히는 문제가 있었다 을 변환하고 나면 이렇게 되었다. 관련 게시글 : http://htmlagilitypack.codeplex.com/discussions/7121 해결책은 링크에 있는것처럼 소스 코드를 받아 리빌드 하는것이다. 소스 파일 중에 HtmlNode.cs 가 있는데 ElementsFlags.Add("form", HtmlElementFlag.CanOverlap | HtmlElementFlag.Empty); 위와 같이 되어 있을것이다. 저 코드의 htmlelementFlag.Empty 를 지워버리면 된다. 2) form 하위 노드가 검색이 안되는 문제 xpath 로 검색하는데..

.NET/Clawler 2013.05.08

.net 에 적합한 html parser

java 용은 충분히 많으나 .net 에서 쓰기에 적합한건 제한적이다 다행히 open source 중 완성도가 높은게 있는데 1) HTML Agility Pack ( http://htmlagilitypack.codeplex.com/ ) 2) HTML Tidy Managed ( https://github.com/markbeaton/TidyManaged ) 추가로 WebKit 을 기반으로 한 HTML Browser Control 로는 WebKit.net ( http://webkitdotnet.sourceforge.net/ ) 이 있다. 참고로 이 컨트롤을 사용할때 빌드된 webkit binary 를 같은 폴더에 복사해서 사용해야 한다 (컨트롤 초기화 시점에 발생하는 문제라면 이게 99%)

.NET/Clawler 2013.05.06