'분류 전체보기'에 해당되는 글 610건
- HW#02 : 연습문제 풀이 2011.05.15
- Java 언어에서 레지스트리 생성, 삽입, 삭제, 수정 방법 2011.05.13
- Java Native Access 2011.05.13
- HW#15 : The 0/1 Knapsack Problem을 DP으로 구현하고 동작 예제를 보이시오. 2011.05.12
- Android SDK를 복사하여 실행한 경우의 문제점 2011.05.09
- 제인 구달 박사님과 이미지화 기억 2011.05.08
- 사마의의 한 마디 2011.05.08
- 안드로이드 네트워크 프로그래밍 필수 사항 2011.05.07
- HW#03 : 안드로이드 플랫폼 기반의 메일 전송 프로그램 2011.05.07
- Fat Jar Eclipse Plug-In 2011.05.07
HW#02 : 연습문제 풀이HW#02 : 연습문제 풀이
Posted at 2011. 5. 15. 22:10 | Posted in Computer Science/정보보호이론Chapter 9.
17.
22.
27.
'Computer Science > 정보보호이론' 카테고리의 다른 글
HW#01 : 연습문제 풀이 (2) | 2011.04.04 |
---|---|
에바리스트 갈루아 (0) | 2011.03.31 |
Java 언어에서 레지스트리 생성, 삽입, 삭제, 수정 방법Java 언어에서 레지스트리 생성, 삽입, 삭제, 수정 방법
Posted at 2011. 5. 13. 17:19 | Posted in 카테고리 없음import com.sun.jna.platform.win32.Advapi32Util; import com.sun.jna.platform.win32.WinReg; public class Test { private static String regPath; private static String regName; private static String regValue; Test() { regPath = null; regName = null; regValue = null; } public static void main(String args[]) { // 경로, 이름, 데이터 변수 초기화 regPath = "Software\\Microsoft\\Windows\\CurrentVersion\\Run"; regName = "MyProgram"; regValue = "\"C:\\Program Files\\SetReg\\SetReg.jar\" /autorun"; // 시스템 사용자 이름 출력 System.out.println("Your Name is " + Advapi32Util.getUserName() + "."); // 레지스트리 키 생성 Advapi32Util.registryCreateKey(WinReg.HKEY_CURRENT_USER, regPath, regName); // 레지스트리 값 설정 Advapi32Util.registrySetStringValue(WinReg.HKEY_CURRENT_USER, regPath, regName, regValue); // 레지스트리 값 읽기 System.out.println(Advapi32Util.registryGetStringValue(WinReg.HKEY_CURRENT_USER, regPath, regName)); // 레지스트리 값 삭제 Advapi32Util.registryDeleteValue(WinReg.HKEY_CURRENT_USER, regPath, regName); // 레지스트리 키 삭제(값 삭제가 선행) Advapi32Util.registryDeleteKey(WinReg.HKEY_CURRENT_USER, regPath, regName); } }다음은 Java 언어에서 레지스트리를 생성, 삽입, 삭제 그리고 수정하는 방법이다. 구글 검색을 통해 다양한 방법을 찾아보았지만 각자 나름의 장단점이 있었다. 그 중에서 가장 마음에 드는 것은 JNA(Java Native Access)를 사용하여 레지스트리를 접근하는 방법이다. Advapi32Util 클래스를 사용하여 레지스트리를 조작할 수 있다. Java에서 기본적으로 레지스트리를 조작하기 위해 제공해주는 클래스가 있지만 이 클래스는 레지스트리 트리의 Root 접근이 불가능하다. 아마도 보안 문제이기 때문에 그러한 것이라 생각한다.
Java Native AccessJava Native Access
Posted at 2011. 5. 13. 16:57 | Posted in 카테고리 없음Java Native Access provides Java programs easy access to native shared libraries without using the Java Native Interface. JNA's design aims to provide native access in a natural way with a minimum of effort. No boilerplate or generated glue code is required.
현재 JNA 최신 버전은 3.2.7 인데 최근에 3.2.8로 업데이트 되었다. 이것이 필요하게 된 이유는 JAVA를 이용하여 윈도우 프로그래밍을 할 경우 한계점이 발생하기 때문이다. 예를 들어 레지스트리를 제어(생성, 삽입, 삭제, 수정)하기 위해서는 JNA가 필요하다.
import com.sun.jna.Library; import com.sun.jna.Native; import com.sun.jna.Platform; /** Simple example of native library declaration and usage. */ public class HelloWorld { public interface CLibrary extends Library { CLibrary INSTANCE = (CLibrary) Native.loadLibrary( (Platform.isWindows() ? "msvcrt" : "c"), CLibrary.class); void printf(String format, Object... args); } public static void main(String[] args) { CLibrary.INSTANCE.printf("Hello, World\n"); for (int i = 0; i < args.length; i++) { CLibrary.INSTANCE.printf("Argument %d: %s\n", i, args[i]); } } }
위의 예제는 위키디피아에서 Java에서 printf 함수를 사용하여 "Hello, World"를 출력하는 소스 코드이다. 이것을 실행하기 위해서는 jna.jar 파일과 platform.jar 파일을 외부 라이브러리로 등록해 주어야 한다.
HW#15 : The 0/1 Knapsack Problem을 DP으로 구현하고 동작 예제를 보이시오.HW#15 : The 0/1 Knapsack Problem을 DP으로 구현하고 동작 예제를 보이시오.
Posted at 2011. 5. 12. 03:57
보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
Android SDK를 복사하여 실행한 경우의 문제점Android SDK를 복사하여 실행한 경우의 문제점
Posted at 2011. 5. 9. 01:06 | Posted in 카테고리 없음문제의 원인은 환경 변수 중 PATH를 설정해 주지 않아서 발생하는 문제였다. PATH를 설정하고 나서 다시 실행을 해 보면 정상적으로 동작을 하고 Preferences - Android 들어가보면 사용가능한 Android 에뮬레이터 버전이 출력된다.
제인 구달 박사님과 이미지화 기억제인 구달 박사님과 이미지화 기억
Posted at 2011. 5. 8. 21:53 | Posted in 카테고리 없음이 능력만 있다면 나는 책을 문자 또는 문자열 단위로 처리하는 것이 아니라 화면 단위로 처리하여 공부하는데 유용할 수 있겠지만 만약 이러한 능력이 인간에게 있다면 그것은 큰 불행일 수도 있다는 생각을 하였다. 화면 자체를 저장한다면 얼마나 많은 시신경 세포들이 작용해야 할까? 아마도 미처버릴 수도 있을 것이다.
안드로이드 네트워크 프로그래밍 필수 사항안드로이드 네트워크 프로그래밍 필수 사항
Posted at 2011. 5. 7. 23:13 | Posted in Computer Science/네트워크응용설계혹시 네트워크 환경이 잘 못되었는가 의심이 들었다. 그러던 중 안드로이드와 네트워크 관련된 사항을 찾아보았다. 문제는 단 한 줄 이였다. 안드로이드는 접근 권한이 있었다. AndroidManifest.xml 파일에 저 위에 있는 한 줄을 추가시켜 주지 않으면 절대 Server Socket 이든 일반 Socket 이든 접속을 하지 않는다. ㅜㅜ
정말 오늘 많은 것을 배웠지만 그 만큼 많은 시간을 소비하였다. 책을 다 읽어 보기에는 분량이 있었기에 앞에 내용만 살짝 보고 프로그래밍한 결과이다. 결국 빠르게 갈 수 있는데 멀게 돌아왔다는 생각이 들었다.
'Computer Science > 네트워크응용설계' 카테고리의 다른 글
HW#03 : 안드로이드 플랫폼 기반의 메일 전송 프로그램 (0) | 2011.05.07 |
---|---|
SNMP 이야기 (0) | 2011.04.27 |
인터넷 멀티캐스트 라우팅 프로토콜 분석 (0) | 2011.04.10 |
Assignment 01. 단방향 Talk 프로그램 (0) | 2011.03.16 |
네트워크응용설계 Assignment 01 (0) | 2011.03.13 |
HW#03 : 안드로이드 플랫폼 기반의 메일 전송 프로그램HW#03 : 안드로이드 플랫폼 기반의 메일 전송 프로그램
Posted at 2011. 5. 7. 21:08 | Posted in Computer Science/네트워크응용설계네트워크응용설계 과목의 세 번째 숙제는 안드로이드 플랫폼 기반의 메일 전송 프로그램을 작성하는 것이다. 정말 평생 안드로이드 프로그래밍을 할 일이 없을 것이라 생각하였다. 난 영원한 C 프로그래머로 남고 싶었다. 특히 임베디드 C 프로그래머가 되고 싶었다. 한정된 자원에서 가장 효과적인 개발을 하기 위해서는 고도의 기술이 요구되고 난 그러한 기술을 배우고 싶다. 아무튼 이번 프로젝트는 재미있는 것 같다. 일단 스마트폰에서 개발 하기 위해 첫 번째 요소는 UI(User Interface)이다.
프로그램을 완성시키고 나머지 글을 완성해야 하겠다.
'Computer Science > 네트워크응용설계' 카테고리의 다른 글
안드로이드 네트워크 프로그래밍 필수 사항 (0) | 2011.05.07 |
---|---|
SNMP 이야기 (0) | 2011.04.27 |
인터넷 멀티캐스트 라우팅 프로토콜 분석 (0) | 2011.04.10 |
Assignment 01. 단방향 Talk 프로그램 (0) | 2011.03.16 |
네트워크응용설계 Assignment 01 (0) | 2011.03.13 |
Fat Jar Eclipse Plug-InFat Jar Eclipse Plug-In
Posted at 2011. 5. 7. 19:46 | Posted in Computer Science/DB시스템및프로그래밍참조하는 모든 라이브러리를 포함하여 프로젝트를 하나의 "덩치큰(fat)" 실행가능한 JAR 파일로 만들어 주는 이클립스 플러그인이다. 레퍼런스는 프로젝트 설정으로부터 획득되어지는데, 그래서 아무런 메뉴얼 설정이 필요하지 않다.
제작자의 홈페이지에 있는 문장을 그대로 해석하니 조금 이상할 수 있다. 제작자가 말하는 fat의 의미란 실행가능한 형태의 JAR 파일 내부에 참조되고 있는 외부 JAR 파일을 같이 묶어서 하나의 JAR 파일로 만들어 준다는 것이다. 또한 프로그램에서 사용되는 아이콘도 같이 묶어 주어 반드시 필요하다.
만약 실행에 필요한 JAR 파일이 포함되어 있지 않다면 그러니깐 단순히 실행가능한 JAR 파일로 추출(Export)한 경우 프로그램이 실행되지 않는다.
http://fjep.sourceforge.net/
'Computer Science > DB시스템및프로그래밍' 카테고리의 다른 글
DB프로그래밍의 교훈 (0) | 2011.05.07 |
---|---|
SQL Injector (2) | 2011.05.03 |
Mass SQL Injector (0) | 2011.05.03 |
DB시스템및프로그래밍 프로젝트 첫 모임 (2) | 2011.04.08 |
XML 관련 문제 풀이 정리 (0) | 2011.04.04 |