일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- NDK
- RxAndroid
- mfc
- Android P
- C/C++
- 프로그래머스
- Python
- Django REST Android
- Flutter TextField
- flutter firestore
- android architecture component
- 코틀린
- 안드로이드 구글맵
- UWP
- Java
- 안드로이드
- Django REST
- RxJava
- Rxjava2
- Android
- kodility
- livedata
- C++
- android push
- dart
- Django REST framework
- Kotlin
- FLUTTER
- C
- Today
- Total
목록전체 글 (217)
개발하는 두더지
#서비스에서 UI 있는 프로그램을 실행시킬 수는 있지만 SYSTEM 권한으로 실행되어 UI가 나오지 않는 문제 발생윈도우는 User Interface, GDI, 커널 메인 객체를 제공한다.커널은 안전하지만, UI, GDI는 그렇지 않기때문에 추가적인 보안성을 제공하기 위해 윈도우는 stations와 desktops를 사용한다.Station은 클립보드, desktop등을 포함하는 프로세스와 관련이 있는 보안 객체이고, Desktop은 Station내에 존재하며 논리화면, 윈도우, 메뉴, 훅과 같은 User Interface를 포함하는 보안객체이다. 로그온 화면을 관리하는 winlogon desktop, 화면보호기를 담당하는 screen saver desktop, 평상시 윈도우 화면을 보여주는 interac..
unicode > multibytewchar_t strUnicode[256] = {0,};char strMultibyte[256] = {0,};wcscpy_s(strUnicode,256,L"유니코드");int len = WideCharToMultiByte( CP_ACP, 0, strUnicode, -1, NULL, 0, NULL, NULL ); WideCharToMultiByte( CP_ACP, 0, strUnicode, -1, strMultibyte, len, NULL, NULL ); multibyte > unicodewchar_t strUnicode[256] = {0,};char strMultibyte[256] = {0,};strcpy_s(strMultibyte,256,"멀티바이트");int nLen..
# 빌드환경 - Windows 7/10 64bit + VS2008 sp1 # 동작 플랫폼 - Windows xp / vista / 7 / 8 / 8.1 / 10 # 윈도우 서비스란?윈도우 서비스는 사용자에게 보이지 않지만 (UI X) , 윈도우를 부팅한 후 또는 사용자 로그인 후( Flag 설정으로 변경 가능 ) 부터 항상 실행되는 프로그램. # 서비스 생성 조건Main 진입점이 있는 콘솔 프로그램으로 주로 제작 ( C++ 의 경우 ) 속성일반 : 표준 Windows 라이브러리 사용C/C++ -> 코드 생성 -> 런타임 라이브러리 : 다중 스레드(/MT) or 다중 스레드 디버그(/MTD , 용량 더 커짐)정적 라이브러리에서 MFC 사용으로 설정했을 때와 같음 -> 재배포 패키지 없는 환경에서도 구동 가..
# 커널 오브젝트란?커널에서 관리하는 중요한 정보를 담아둔 데이터 블록 # 오브젝트 핸들이란?OS가 제공하는 API를 통해 커널 오브젝트를 간접 조작할 수 있도록커널 오브젝트를 가리키는 핸들 # Usage Count란?커널 오브젝트는 리소스와는 별도로 커널에 의해 관리되기 때문에 독립된 종료 시점을 지닌다. 이때 종료 시점을 판단하는 것이 Usage Count이다.커널 오브젝트 생성시 값은 1이고, 참조하는 프로세스가 증가할수록 함께 증가한다. CloseHandle() 함수로 핸들을 종료시키며 Usage Count 값을 1 감소한다. # 커널 오브젝트 핸들 테이블이란?핸들 정보를 저장하고 있는 테이블프로세스가 초기화되면 운영체제는 프로세스를 위해 커널 오브젝트 핸들을 할당.커널 오브젝트 핸들 테이블은 프..
# UTF-16 각 문자를 2바이트WCHAR / wchar_t Windows 계열에서는 utf-16 2byte로 표현되는데UNIX 계열에서는 utf-32 4byte로 표현됩니다. 윈도우에서 WCHAR를 안드로이드로 보내서 작업할 일이 생겼는데byte 크기때문에 그냥 전송하면 문제가 생깁니다.그리고 자바는 string을 유니코드로 저장합니다. 하지만 데이터를 직렬화를 하거나 네이티브 코드를 사용할 때는utf-8로 변경하여 전송합니다.즉 네이티브 코드를 사용할 때 Java의 string -> JNI jstring 로 넘겨서 사용할 때 잘 확인해야 합니다.jstring -> char 1byte (utf-8)jstring -> jchar 2byte (utf-16) 2byte라 C에서 사용한 2byte WCHAR..
# Active X 대체 기술HTML5 를 이용한 대체 기술도 있지만 C기반 보안 솔루션의 설치를 지원해아하므로 URL Scheme 기술을 사용 # Custom URL Schemes대부분의 OS에서 URL Scheme을 직접 등록하고 설정할 수 있음.Android, IOS, Windows 등 시스템에 따라 각각 다르게 등록 # In Windows OSHKEY_CLASSES_ROOT/ MY_PROTOCOL_NAME/ (Default) = "URL:MY_PROTOCOL_NAME" URL Protocol = "" DefaultIcon/ (Defualt) = "C:\Temp\Icon.ico,1" shell/ open/ command/ (Defalut) = "C:\Temp\ExecuteFile.exe" "%1" ..
# SSD 동작 방식 전압을 주어서 전자를 메모리 셀에다가 채우고 비우고를 하는 과정으로 데이터를 쓰기, 삭제, 읽기를 한다. 절연체인 산화막에 같혀있어서 전자가 빠져나가지 않고 그 안에 유지를 하고있다. 그래서 나중에 데이터 읽기가 가능 # SSD 동작 방식 상세 조금더 상세하게 보면 큰 전압을 주면 그에 따라 발생하는 강력한 자기장의 영향으로 전자의 일부가 산화막을 통과하여 플로팅 게이트로 주입됨. 이렇게 채우는 것을 터널 주입이라고 함. 같힌 전자는 전기가 공급되지 않아도 그대로 유지가 됨. 이 과정이 쓰기 과정. 이러한 특성으로 플래시 메모리 셀은 비휘발성 저장 매체로 사용되는 것임. 정리하자면 플래시 메모리의 셀은 강력한 자기장이 일어날 만큼의 높은 전압을 주어서 플로팅 게이트로 전자를 채우고 ..
ei.cfg 파일 생성하기 이 부분이 제품키입력을 건너뛸 수 있게 하는 부분입니다. 본 방법은 공식 마이크로소프트 웹페이지에서도 자세한 설명을 찾아 볼 수 있습니다. (링크) 이제 USB 혹은 iso 파일에 ei.cfg 파일을 생성시켜 주겠습니다. 1) \sources\ 에 ei.cfg 파일을 만들어 주세요. (쉬운 방법은 메모장을 열고 파일 이름을 ei.cfg 로 저장 해주시면 됩니다. 확장자가 .txt 로 끝나면 제대로 작동이 되지 않으므로 잘 확인해 줍니다.) 2) ei.cfg에는 다음과 같은 내용을 저장해 줍니다. [EditionID]Core / Professional / Enterprise / 공란 중 하나를 넣어주세요. [Channel]Retail / Volume 중 하나를 넣어주세요.[VL]..