본문 바로가기

전체 글

프로세스별 핸들 목록 리스팅 Process Explorer 에서 프로세스를 선택하면 출력되는 핸들 리스트 구현하려 한다. NtQuerySystemInformation 함수에 enumerate 된 SystemExtendedHandleInformation 인자를 패스define 값은 64 시스템 동작 환경에 따라 NtQuerySystemInformation 에서 요구하는 버퍼 크기가 동적으로 변경된다 크게 두 개의 구조체를 사용하며,- SYSTEM_EXTENDED_HANDLE_INFORMATION / PSYSTEM_HANDLE_TABLE_ENTRY_INFO_EX - Process Explorer 에서 나오는 인자들의 종류는 크게 Key, Directory, File, WindowStation, Section, Mutant 등이 있다.일.. 더보기
LPTHREAD_START_ROUTINE 은 stdcall 이어야만 하는가 beginthread 의 파라미터는 __cdecl 이어야 하고beginthreadex 의 파라미터는 __stdcall 이어야 하고CreateThread 의 파라미터는 __stdcall 이어야 하고.__cdecl 로 작성된 함수를 스레드로 사용하려 하는데 파라미터정리를 어떻게 처리해주지 ? 갑자기; 함수 선언/정의 시에 기입하는 콜링 컨벤션의 값의 목적을 정확히 알고 싶었다.생 뻘짓 int __cdecl funcB(int a, int b){ return a+b };typedef int (__cdecl *pfB)(int, int); int __stdcall funcA(){pfB fp_B = funcB;fp_B();} funcA 에 써둔 __stdcall 이 영향을 미치는 범위가 어디까지인가 하는 착각에 빠졌.. 더보기
스크랩 - C++상에서 발생하는 name mangling에 관한 내용 보호되어 있는 글입니다. 더보기
NTSTATUS 망할 NTSTATUS STATUS_SUCCESS 때문에 삽질을 삽질을-_-좋은글 있길래 갖고 왔다블로그 내용도 아주 멋짐. http://kirkshoop.blogspot.kr/2011/09/ntstatus.html NTSTATUSNTSTATUS was defined for code native to the Windows NT operating system. It was a part of the very clean separations built between the core OS and the various subsystems where user code was expected to run (POSIX, WIN32, WIN16/DOS, OS/2). Over time it has begun to leak .. 더보기
[만들어보기] 가비지코드 크리에이터 원하는 코드abcdefg가 있으면 쌍 안에 적절히 배치되어야 함 push x pop ysub x, y add y, xshift 연산은 원하는 코드 내의 레지스터를 제외해야 한다 더보기
towelroot 보호되어 있는 글입니다. 더보기
[작성중] 디버거에서의 멀티스레드 디버깅 으아예아 더보기
윈도우 네임스페이스 / 디바이스 심볼릭 링크 http://msdn.microsoft.com/en-us/library/aa365247(v=vs.85).aspx Namespaces 윈도우 API 에서 사용되는 네임스페이스 규칙에는 NT namespaces 와 Win32 네임스페이스, 두 가지 카테고리가 있다. NT 네임스페이스는 Win32 네임스페이스를 넘어서, Win32 서브시스템을 포함한 다른 서브시스템과 네임스페이스에서도 존재할 수 있도록 더 low 레벨에서 디자인되었다. POSIX 는 다른 서브시스템의 다른 예인데, POSIX 는 NT 네임스페이스의 꼭대기에서 빌드되었다(?). 초기의 윈도우에서도 커뮤니케이션 포트나 디스플레이 콘솔과 같은 특정 디바이스들의 이름들에 대해 이미 다양한 정의들을 해 두었다. Win32 Device Namespace.. 더보기