본문 바로가기

분류 전체보기192

[라즈베리 파이] 라즈베리파이3 모델B 특징 및 구매 방법 [살거] 1. 라즈베리 파이 3 세트 : 라즈베리파이3 + 공식 정품 엔클로져 + 방열판 세트 [사진 출처] 아이씨뱅큐 (https://www.icbanq.com/P007115238//?catg_code=120) [특징] - 블루투스, 와이파이 기능 추가됨. -> 무선 랜 카드 구입할 필요 x - 64bit CPU -> 라즈비안 OS는 64bits가 없음 (32bits 설치해서 사용 중) 2. 파이카메라 : 라즈베리파이 카메라모듈 V2, 8MP (RPI 8MP CAMERA BOARD) [사진 출처] 디바이스 마트 (http://www.devicemart.co.kr/1077951) [특징] - CSI 인터페이스 사용 [주의] - 라즈베리 파이는 충전기 연결 시 바로 부팅됨. - Micro SD 카드에 운영.. 2016. 8. 12.
[Windows] hosts 파일 바꾸기 (Win32API) 1. 개요 - hosts 파일 수정으로 특정 URL을 웹 브라우저에 입력 시 원하는 서버로 연결 가능. ex) www.daum.net 입력 -> 결과는 www.google.com 로 이동 - hosts 파일 경로 : C:\Windows\System32\drivers\etc\hosts - 리소스 드랍 활용 - 관리자 권한 필요 - hosts 파일 변경은 백신에서 탐지됨 2. 설정 3. 코드 #include #include "resource.h" // 수정된 hosts 파일을 리소스로 등록 : IDR_FILE1 LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); HINSTANCE g_Inst; LPCWSTR lpszClass = TEXT("WINDOW"); // .. 2016. 8. 10.
[MIPS] Hello World 1. 코드 # MIPS :: Hello World Example :: # File Name : "HelloWorld.asm" .data str: .asciiz "\nHello World\n" .text main: li $v0, 4 # 4 : print la $a0, str syscall li $v0, 10 # 10 : exit syscall 2. 실행 2015. 10. 3.
[MIPS] PCSpim 1. 개요 - PCSpim : MIPS 프로세서 시뮬레이터 (mips반대 -> spim) 2. UI 1) 레지스터 : 레지스터 값 확인 2) 코드 : 코드 확인 가능 3) 메모리 : 데이터, 스택 등의 메모리 확인 가능 4) Go (빨간 박스 안쪽의 왼쪽 버튼) : 시뮬레이션 시작, 누르면 Starting Address를 정할 수 있다. (기본은 0x00400000) 3. 다운로드 - http://pages.cs.wisc.edu/~larus/spim.html 2015. 10. 3.
[Windows] 리소스 드랍 (Win32API) 1. 코드 //리소스 변수 선언 HMODULE hDll; HRSRC hResource; HGLOBAL hData; DWORD filesize, numWritten; LPVOID pResource; HANDLE hFile; TCHAR Adr[] = L"C:\\File.exe"; // 파일 경로 // 아래는 코드 적용 부분, 필요한 부분에 적절히 사용 // 리소스 찾기, 에러 시 NULL hResource = FindResource(g_Inst, MAKEINTRESOURCE(IDR_EXE1), L"exe"); // 리소스 로드, 에러 시 NULL hData = LoadResource(g_Inst, hResource); // 락, 에러 시 NULL pResource = LockResource(hData); /.. 2015. 8. 31.
[Windows] 윈도우 버전 확인 (Win32API) 1. 개요 - OSVERSIONINFOEX 구조체로 윈도우의 버전을 알수있음. 2. 코드 OSVERSIONINFOEX osvi; ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX)); osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); // OSVERSIONINFOEX 구조체를 이용하여 버전 구분 switch(osvi.dwPlatformId){ // NT 기반 운영체제 case VER_PLATFORM_WIN32_NT: /* dwMajorVersion, dwMinorVersion 멤버로 운영체제 구분 ex) if(osvi.dwMajorVersion == 6 && osvi.dwMinorVersion == 0) version = "vista"; .. 2015. 8. 23.
[Windows] 프로세스/운영체제 비트 확인 (Win32API) 1. 코드 // 현재 프로세스 비트 구분 #if defined(_WIN64) return TRUE; #else return FALSE; #endif // 운영체제 = 64bit, 프로세스 = 32bit 일 경우 TRUE BOOL IsCurrentProcessWow64() { BOOL bIsWow64 = FALSE; typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS)(HANDLE, PBOOL); LPFN_ISWOW64PROCESS fnIsWow64Process; fnIsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress(GetModuleHandle(TEXT("kernel32")), "IsWow64Process"); if (!fnIsWow64P.. 2015. 8. 23.
[Windows] 프로세스 정보 확인하기 (Win32API) 1. 설명 - 현재 프로세스 정보 DWORD pid; HANDLE hdl; pid = GetCurrentProcessId(); hdl = OpenProcess(MAXIMUM_ALLOWED, FALSE, pid); - 다른 프로세스 정보 HWND hWnd; DWORD pid; HANDLE hdl; // 윈도우 이름으로 윈도우 핸들을 얻음. hWnd = FindWindow(NULL, L"Window Name"); // hWnd의 pid값 구하기 GetWindowThreadProcessId(hWnd, &pid); // 얻은 pid값으로 대상 프로세스의 핸들을 얻음. hdl = OpenProcess(MAXIMUM_ALLOWED, FALSE, pid); - 여러 프로세스 정보 #include "tlhelp32.h.. 2015. 8. 23.
[Windows] 파일열기 대화상자 (Win32API) 1. 코드 HANDLE hFile; OPENFILENAME OFN; TCHAR lpstrFile[MAX_PATH] = L""; // 필요한 부분에 아래 내용 사용 memset(&OFN, 0, sizeof(OPENFILENAME)); OFN.lStructSize = sizeof(OPENFILENAME); OFN.hwndOwner=hWnd; OFN.lpstrFilter=TEXT("ALL FILE(*.*)\0*.*\0"); OFN.lpstrFile=lpstrFile; OFN.nMaxFile=MAX_PATH; if(GetOpenFileName(&OFN) != 0) { hFile = CreateFile(OFN.lpstrFile, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTR.. 2015. 8. 22.
[Windows] 관리자 권한 요구하기 (Win32API) Property -> Linker -> Manifest File -> UAC Execution Level 2015. 8. 22.
[Windows] ATL90.dll, MSVCR90.dll 의존성 제거 (Win32API) ATL90.dll [Project] Property -> General -> Use of ATL -> Static Link to ATL MSVCR90.dll [Project] Property -> C/C++ -> Code Generation -> Runtime Library -> /MT 단, Debug로 컴파일 할 경우에는 /MTd 2015. 8. 21.
[Windows] 기본 윈도우 소스 (Win32API) 1. 코드 #include LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); HINSTANCE g_Inst; LPCWSTR lpszClass = TEXT("Window"); int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszClassParam, int nCmdShow) { HWND hWnd; MSG Message; WNDCLASS WndClass; g_Inst = hInstance; WndClass.cbClsExtra=0; WndClass.cbWndExtra=0; WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); W.. 2015. 8. 21.