본문 바로가기

About Programing

Android에서 ImageButton .xml 더보기
Android Activity 추가하기 1. 메니페스트 파일에 액티비티 등록하기 안드로이드에서 액티비티를 호출하기 위해서는 먼저 메니페스트 파일에 액티비티가 등록되어 있어야 합니다. 메니페스트 파일에 액티비티를 등록해주기 위해, 먼저 메니페스트 파일(AndroidManifest.xml) 파일을 연 후, Application 탭을 클릭합니다. 여러가지 속성을 설정할 수 있는 화면들과 함께 어플리케이션의 여러 구성요소들을 등록할 수 있는 Application Nodes 화면이 화면 좌측 하단에 있습니다. 이곳에서 액티비티 뿐만 아니라 다른 액티비티 구성요소 (서비스, 컨텐트 프로바이더 등)도 추가해줄 수 있습니다. 액티비티를 추가하기 위해 Application Nodes 부분의 Add... 버튼을 클릭합니다. Add.. 화면을 클릭하면 다음과 같.. 더보기
Android Error : Invalid file name: must contain only [a-z0-9_.] 해석 : 인식불가능한 파일명 : 반드시 [a-z0-9_.] 만 포함 할수있다. [a-z0-9_.] 이란 소리는 알파벳 소문자, 숫자 0에서 9까지, 그리고 언더바(_) , 콤마(.)만 xml파일명으로 올수 있다는 소리였다. 해당 오류가 난 XML파일의 이름을, 알파벳 소문자, 숫자 0에서 9까지, 그리고 언더바(_) , 콤마(.)만으로 이루어지게 수정하면 정상 동작 될 것이다. 더보기
Kyuseo's C++ 프로그래밍 스타일 가이드라인 :: 코딩/프로그래밍 규칙C++ 팁, 강좌 Kyuseo's C++ 프로그래밍 스타일 가이드라인 ::코딩/프로그래밍 규칙 Kyuse's C++ Programming style guideline (Coding / Programming rule) 버전 : 2.2 작성자 : 채경석 Kyuseo의 게임 프로그래밍 이야기 :: http://a.TK.co.kr 저작권 : 출처 및 링크를 표시하여 자유롭게 사용합니다. 업데이트 : 날짜 장소 내용 1997 Skyteam 기본 개념 작성 2000~2004 Sky Soft 전반적 이론 및 규칙 확립 2005- 4- 13 Freechal 체계화된 정리 2006-09-12 Fungrep 1차 개정 2008-01-24 Fungrep 2차개정 2008-01-31 띄어쓰기 및 보기 좋게 편집 변경 개요.. 본 가이드는 절대.. 더보기
Failed to create the Java Virtual Machine 해결법 "자, 이제 시작해볼까?" 라며 기새 등등하게 Eclipse를 실행시켰는데...! 당황했다;; Java 설정이 잘못된건가 싶어서 cmd에서 javac와 java를 쳐 봤는데 정상 작동된다;; 대체 뭐가 잘못된걸까! 정답은 Eclipse 폴더 안에 있는 eclipse.ini 파일 설정 문제다. 파일을 열어서 수정해주자! -startup plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503 -product org.eclipse.epp.package.jee.product --launcher.defaultAc.. 더보기
ZwCreateFile 함수 ZwCreateFile( __out PHANDLE FileHandle, //파일을 가리키는 핸들 CreateFile의 리턴값 __in ACCESS_MASK DesiredAccess, //객체에 접근하기 위한 권한 __in POBJECT_ATTRIBUTES ObjectAttributes, // __out PIO_STATUS_BLOCK IoStatusBlock, //요청 처리된 결과값 __in_opt PLARGE_INTEGER AllocationSize, //초기 할당 크기를 포함하고 있는 라지 인티저의 포인터 __in ULONG FileAttributes, //dwFlagsAndAttributes __in ULONG ShareAccess, //dwShareMode __in ULONG CreateDispos.. 더보기
OBJECT_ATTRIBUTES 구조체 typedef struct _OBJECT_ATTRIBUTES { ULONG Length; //sizeof HANDLE RootDirectory; PUNICODE_STRING ObjectName; //열 핸들의 유니크 객체 이름 ULONG Attributes; //속성 PVOID SecurityDescriptor; //보안 서술자의 포인터 PVOID SecurityQualityOfService; } OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES; ※InitializeObjectAttributes() 매크로를 통해 초기화 할수 있다. 더보기
SDT 수정을 이용한 Native API Hooking OS : Windows XP SP3 Tool : Microsoft Visual Studio 2008 SP1 / Windows Driver Kit (WDK) Version 7.1.0 Native API Hooking은 SDT를 수정하는 방법을 통해서 이루어 집니다. SDT에 대하여 이야기 하기 전에 User Application Programming을 할때 우리는 WinXX API를 많은 DLL들, 예를들면 KERNEL32,GDI32,USER32같은 것들이 Export해주는 API들을 호출하여 씁니다. 이런 DLL들이 Export해주는 API들을 Disassemble하여 보면, 예를들어서 KERNEL32가 Export해주는 API인 WriteFile()를 Disassemble하여 보면, 내부적으로는 NTD.. 더보기
WinDbg 명령어 정리 WinDbg Command option usage Desc 종료 q 디버깅 종료 qd 디버깅 종료;연결해제 디버깅 환경정보 vertarget 타겟 컴퓨터 정보 표시 version 디버그 환경 정보 표시 .lastevent 마지막 디버그 이벤트 정보 표시 || 디버깅 세션 정보 표시 sumble & sorurce .symfix MS 심볼경로 설정 .sympath 심볼경로 확인/설정 .sym noisy 심볼파일 검색 과정을 출력 .srcpath 소스경로 설정 .srcnoisy .srcnoisy 1 소스경로 검색 과정을 출력 모듈 lm l 로드된 모듈만 표시 m [pattern] 패턴과 일치되는 모듈만 표시 v 모듈 상세정보 표시 !lmi !lmi ntdll.dll 모듈 상세정보 표시 .reload /f [m.. 더보기
RegQueryValueEx 함수 레지스트리 키를 이용하여 데이터를 얻을 때 사용한다. LONG RegQueryValueEx( HKEY hKey, LPCWSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData ); HKEY hKey : RegOpenKey 함수로 얻은 key 값 LPCWSTR lpValueName : 아래 그림의 [이름]에 해당하는 값 LPDWORD lpReserved : NULL LPDWORD lpType : 얻고자 하는 데이터의 자료형을 얻고자 할때 (모를때 : NULL / 알고 있을 때 : DWORD) LPBYTE lpData : lpValueName 의 데이터를 얻고 싶을 때 (LPTYPE)형으로 데이터를 얻는다. LP.. 더보기