일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 코로나
- 개인사업자
- Bootstrap
- cartalyst
- 전자소송
- reactnative
- Sentinel
- blockchain
- Java
- 소액임금체불
- 이더리움
- Laravel
- Python
- as후기
- php
- 보정명령
- 인민공원
- 홈택스
- 코로나19
- javascript
- win32
- Eclipse
- auth
- vue
- Tutorial
- 당사자표시정정신청서
- 사업자계좌
- 체당금
- elasticSearch
- Blade
- Today
- Total
목록Development (103)
그냥 사는 이야기
Log4J 설정 에러 log4j 설정 파일로 xml로 사용하다 보니 이런 에러가 났다. The content of element type "log4j:configuration" must match "(renderer*,appender*,(category|logger)*,root?,categoryFactory?)" 무시하고 써도 상관없는 듯 하지만 구글링을 해보니 log4j:WARN The content of element type "log4j:configuration" must match .... 란 글을 보았다. 해법 문제는 위의 dtd 문서에 정의된 대로 순서를 지켜줘야 된다는 의미였다. 스키마 파일들은 어렵군. 이런 순서를 지켜서 xml 설정파일을 작성하면 된다.
Team Foundation Server 2010 이번 프로젝트에서 TFS 2010을 소스형상관리로 사용해보려고 설치해보았다. Visual Studio 2010 공식 팀 블로그의 글을 참조하여 설치하였다. (링크) TFS 2010 을 사용하기에는 Visual Studio 2010 이 좋다. 별 다른 패치 없이 Team Explorer를 사용하면 될 뿐이다. Visual Studio 2008 에서는 그런데 Visual Studio 2008은 몇가지 손을 좀 추가하여야 한다. 그것을 기술하려고 한다. 먼저, 내가 했던 것은 Visual Studio Team Explorer 2008 설치 (링크) Visual Studio 2008 Service Pack 1 설치 (링크) Visual Studio Team Sy..
OSGi Bundle-NativeCode로 dll 로드 System.LoadLibrary()를 사용하여 native code를 JNI로 연결하여 사용하려고 할 경우 OSGI 경우에서는 약간의 문제가 있다. dll을 jvm에서 load 하여 사용할 경우 jvm이 restart 되지 않는 이상 dll을 unload 못시킨다고 한다. 구글링을 해보니 만약, unload 시키려고 할 경우는 편법적인 방법을 사용하여 unload 시키네 마네 하지만 보장할 수 있는 방법은 아닌것 같다. OSGi는 번들을 동적으로 load/unload 하여 deploy 시킬 수 있는 플랫폼이다. 이런 OSGi의 dynamic 함이 jvm의 dll load와 같이 설치는 가능하나 삭제는 극히 힘든 타입의 방식을 만나면 어떻게 처리될까..
Win32 API를 통해서 시스템이 32bit인지 64bit 운영체제 인지 알아 보려면 아래와 같은 식으로 하면 된다. GetSystemInfo vs GetNativeSystemInfo SYSTEM_INFO siSysInfo; GetNativeSystemInfo(&siSysInfo); printf(" Processor Architecture %d\n", siSysInfo.wProcessorArchitecture); GetSystemInfo() 대신 GetNativeSystemInfo()를 사용해야 한다. Windows Server 2003 x64에서 해보니 GetSystemInfo()는 0 값을 return 한다. x86으로 리턴한 것이다. MSDN에 설명이 나와 있지만 GetSystemInfo()는 과..
Sys 파일 로딩 실패 우리 제품 중 Windows Server 2003 x64에서 driver파일 로딩에서 에러가 발생하였다. ::LoadLibraryEx("C:\\WINDOWS\\System32\\drivers\\acpi.sys", 0, LOAD_LIBRARY_AS_DATAFILE); 실패한 함수는 LoadLibraryEx()였고 GetLastError()에서 파일이 존재하지 않는다고 알려준다. 하지만 저 경로에 acpi.sys 파일은 분명 있다. Wow64 지원을 위해 저 경로를 SysWow64 경로로 돌려버리는 redirection 때문에 발생하였다. 간단히 이 코드로 테스트 해보면 알 수 있다. if( 0 == _waccess_s(_T("C:\\WINDOWS\\System32\\drivers\\..
devcon util devcon(device control)은 ddk 샘플소스를 구하여 build 해서 사용해야 한다. 하지만 x86 용으로는 down 받을 수 있게 되어 있다. hwid devcon의 disable기능을 사용하면 해당 device를 사용할 수 없게 끔 할 수 있는데 device를 지정해주기 위해서는 하드웨어 id 값을 알아야 한다. 그래서 먼저 hwid를 구하려면 테스트 머신에 SAN으로 할당한 shared disk 2개를 붙여 놓은 상태이다. STORAGE 장치의 hwid를 구하고 싶었다. "STORAGE\VOLUME" 으로 시작된 부분이 hwid 이다. disable/enable 시키기 이를 가지고 disk를 disable/enable 시키기 위해서는 아래처럼 하자. devcon ..
LoadLibrary/FreeLibrary memory leak 실행 환경 Windows Server 2008 x64 MS Visual-Studio 2008 Test Code 먼저 메모리릭이 나는 코드를 간단하게 보면 while (1) { HMODULE hModule = LoadLibrary ( "C:\\Windows\\servicing\\cbsmsg.dll" ); if ( hModule ) { FreeLibrary( hModule ); } else { cout
핸들을 하나 생성하면 제거 해줘야 하는데 이상하게 MSDN 의 예제나 다른 사람들의 블로그에 잘못된 예가 올라와 있어 글을 남긴다. ICMP를 통해 ping test 하는 부분에서 메모리 leak이 많이 발생했다. 처음 봤을 때는 별 문제 없는 것 같아보였다. ICMP API는 처음 다뤄 보는 것이지만 메모리릭만 찾으면 되니깐, HANDLE hIcmpFile = IcmpCreateFile(); : dwRetVal = IcmpSendEcho(hIcmpFile,ulDestAddr,SendData,nSendSize,NULL,ReplyBuffer,nRecvSize,dwTimeout); : CloseHandle(hIcmpFile); CloseHandle()이 아니다 그런데, 그걸 MSDN의 예제에서는 handle..