일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 홈택스
- Laravel
- elasticSearch
- 사업자계좌
- Sentinel
- vue
- Blade
- 당사자표시정정신청서
- Bootstrap
- 체당금
- 전자소송
- php
- Eclipse
- reactnative
- 보정명령
- 소액임금체불
- cartalyst
- Tutorial
- blockchain
- auth
- 코로나19
- 개인사업자
- 코로나
- 이더리움
- javascript
- win32
- 인민공원
- Java
- as후기
- Python
- Today
- Total
목록win32 (4)
그냥 사는 이야기
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\\..
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..