블로그 이미지
blueye

카테고리

내블로그 (52)
창작활동 (10)
저장활동 (16)
관심 (0)
Total156,039
Today0
Yesterday11
출처 : http://funtrip.tistory.com/
_________________________________________________________________________________________________________________
자바에서는 C언어와 같이 unsigned 타입의 데이터형이 존재하지 않는다. C언어로 코딩되어 있는 모듈과 통신시 자바측에서 이러한 unsigned 타입을 처리해야한다.

다음은 이러한 unsigned 타입의 데이터형을 보정하는 클래스 소스이다. 문제가 있거나 더 나은 방안이 있으면 공유 바람.

  1. public class UnsignedUtil {   
  2.     public static int byte2uchar(byte b) {   
  3.         return (int) (b & 0xff);   
  4.     }   
  5.   
  6.     public static byte uchar2byte(int c) {   
  7.         return (byte) (c & 0xff);   
  8.     }   
  9.   
  10.     public static int short2ushort(short s) {   
  11.         return (int) (s & 0xffff);   
  12.     }   
  13.   
  14.     public static short ushort2short(int s) {   
  15.         return (short) (s & 0xffff);   
  16.     }   
  17.   
  18.     public static long int2uint(int i) {   
  19.         return (long) (i & 0xffffffffL);   
  20.     }   
  21.   
  22.     public static int uint2int(long i) {   
  23.         return (int) (i & 0xffffffffL);   
  24.     }   
  25. }  

 

Posted by blueye

[출처] Windows Server 2008 시스템환경설정과 Aero기능활성에 대해...|작성자 진상앙마

=================================================================================================
Windows Server 2008이 서버용 운영체제이다 보니 계정정책과 보안관련사항이 일반 가정용 운영체제와는 사못 다를것입니다. 일반DesktopPC환경에 사용하기에는 까탈스러운(?) 부분이 많지만 일반운영체제와는 달리 서버용 운영체제의 보안성과 안정성은 예전 Windows NT때 부터 입증된 운영체제죠. 그러나... 약간의 보안상 취약을 감수하며 사용자환경설정을 약간 손봐(?)주시면 탁월한 안정성의 운영체제를 사용하실수 있을것입니다. Windows Server 2008 시스템보안환경설정과 Aero기능활성에 대해...^^

 

 

1. 부팅시 대화형 로그온 (Ctrl+Alt+Del) 사용없이 서버로그온

가) 시작 -> 실행 : gpedit.msc 입력후 엔터

나) 로컬 컴퓨터 정책 -> 컴퓨터 구성 -> Windows 설정 -> 보안 설정 -> 로컬 정책 -> 보안 옵션

다) 대화형 로그온 : (Ctrl+Alt+Del)을 사용할 필요 없음 -> 사용으로 변경

라) 시작 -> 실행 -> control userpasswords2 -> 확인 -> 사용자 계정 -> 사용자이름과 암호를 입력해야 이 컴퓨터를 사용할 수 있음 -> 체크해제 -> 확인 -> 새로운 창이 열리면 여기에 설치시 입력하셨던 암호를 입력 -> 확인

 

 

2. 암호 복잡성 만족 (암호설정시 영문+숫자+기호 혼합사용) - 사용안함

가) 시작 -> 실행 : gpedit.msc 입력후 엔터

나) 로컬 컴퓨터 정책 -> 컴퓨터 구성 -> Windows 설정 -> 보안 설정 -> 계정 정책 -> 암호 정책

다) 암호 복잡성 만족해야 함 -> 사용 안함으로 수정

 

 

3.  Internet Explorer 보안 설정

가) 시작 -> 실행 -> CompMgmtLauncher -> 서버관리자 실행 (작업표시줄 - 빠른실행 - 서버관리자클릭하셔도 됩니다)

나) 서버 요약 -> 보안 정보 -> IE ESC 구성 (보안 강화 구성)

다) 관리자/사용자 -> 모두 사용 안함 선택

 

 

4. 바탕화면에 IE아이콘 생성(등록)

레지스트리 실행 및 병합.

첨부파일 실행 병합 후 바탕화면에서 마우스 우클릭 -> 부메뉴에서 새로 고침(E) 클릭.

 

5. 무선 인터넷(무선랜) 사용

가) 시작 -> 실행 -> CompMgmtLauncher -> 서버관리자 실행 (작업표시줄 - 빠른실행 - 서버관리자클릭하셔도 됩니다)

나) 기능 요약 -> 기능 추가 -> 무선 LAN 서비스 선택 -> 다음으로 기능추가설치 진행

 

다) 시작-> 실행 -> Services.msc 입력후 엔터 -> 서비스 실행 -> 목록에 없었던 WLAN AutoConfig 서비스 생성확인 -> WLAN AutoConfig 서비스 -> 시작으로 수정 (서비스 유형 : 자동)

 

 

6. 사운드 활성

가) 시작 -> 실행 ->Services.msc -> 서비스 실행

나) Windows Audio 더블클릭 -> 시작으로 수정 (시작 유형 : 자동)

다) 제어판 -> 소리 -> 필요한 옵션 설정

 

7. 테마 및 Aero 기능 활성

가) 시작 -> 실행 ->Services.msc -> 서비스 실행

나) Themes 더블클릭 -> 시작으로 수정 (시작 유형 : 자동) -> 시스템 재부팅 필요.

다) 시작 -> 실행 -> CompMgmtLauncher -> 서버관리자 실행 (작업표시줄 - 빠른실행 - 서버관리자클릭하셔도 됩니다)

라) 기능요약 -> 기능 추가 -> "Quality Windows Audio Video Experience" / "데스크톱 경험" 체크 설치후 재부팅

마) 바탕화면 -> 마우스 우측버턴 클릭 -> 개인 설정 -> 테마

바) Windows Vista 선택 또는 찾아보기 클릭후 -> C:\Windows\Resources\Themes\Aero.themes 선택)

사) 내컴퓨터 아이콘 ->마우스 우측 클릭 -> 속성 -> 고급 시스템 설정 -> 고급 -> 성능 -> 설정 ->시각효과 -> 내컴퓨터에 가장 좋은 설정을 자동으로 선택 -> 적용 -> 확인

 

에어로 및 사이드바 적용후 Screenshot 입니다.

 

사이드바 적용파일은 첨부파일로 올립니다. 다운로드 하신후

C:\Program Files\Windows Sidebar폴더를 새로 만드신후 압축해제한 파일을 모두 경로로 복사해 넣으시면 됩니다.

기타 자잘한 설정은 사용하시면서 사용자 입맛에 맞게 수정하시면서 사용하시면 될듯합니다...^^

 

※ 사이드바 가젯 정상표시 패치가 새로 등록되었습니다. 사이드바 적용은 아래 링크의것을 다운받아 적용하세요.!!

http://blog.naver.com/smilejooyon/100053348407




=================================================================================================


Posted by blueye

______________________________________________________________________________________________________

SQL : SELECT : Select문.

-- Select문.
-- [1] SELECT(검색)문
-- 정의) Select FieldNameList From TableName [Where 조건] [Order By 정렬시킬 필드명 [ABC|DESC]]


-- [2] 시스템 정보만 얻어오기(시스템 함수 사용)
-- 현재 서버의 이름을 검색

Select @@servername
-- 현재 서버의 버전을 검색
Select @@version


-- [3] Memors의 모든 필드 검색.
Select Num, Name, Title, PostDate From Memos
-- Memors의 모든 필드 검색('*'와일드문자 사용 : 모든것).
Select * From Memos


-- 참고) 시간차 주기 : WAITFOR(몰라도 상관없음)
BEGIN
 SELECT * FROM Memos
 WAITFOR DELAY '000:00:05' -- 특정시간 후에 명령어 진행
END


-- [4] Memos에서 Name필드와 PostDate필드만 검색.
Select Name, PostDate From Memos


-- [5] 조건검색 : Name이 씨앗인 사람의 모든 것 검색.
Select * From Memos Where Name = '씨앗'


-- 조건검색 : Name이 씨앗인 사람의 Num, Email만 검색.
Select Num, Email From Memos Where Name = '씨앗'


-- [6] 조건검색 : Name이 '씨'로 시작하는 사람의 모든것 검색.
-- '%' 와일드 문자 사용. %->모든것.../like 키워드 사용.

Select * From Memos Where Name like '씨%'


-- 조건검색 : Name에 '니'자가 들어가는 사람의 모든것 검색.
Select * From Memos Where Name like '%니%'


-- 조건검색 : Name이 '앗'자로 끝나는 사람의 모든것 검색.
Select * From Memos Where Name like '%앗'


-- 조건검색 : Name이 '니'자로 끝나는 사람의 Name과 Email만 검색.
Select Name, Email From Memos Where Name like '%니'


-- [7] 조건검색 : Memos 테이블에서 Name이 '씨'로 시작하고 [그리고|또는] Email에 's'자가 들어가는 사람의 모든것 검색.
-- AND 연산자 사용.
Select * From Memos Where Name like '씨%' AND Email like '%s%'
-- OR 연산자 사용.
Select * From Memos Where Name like '씨%' OR Email like '%s%'


--[8] 정렬검색 : Num의 역순(내림차순)으로 정렬.
-- 오름차순 정렬(ASCending) = 1,2,3 순서대로...(기본값)
-- 내림차순 정렬(DESCending) = 3,2,1 순서대로...

Select * From Memos Order By Num DESC


-- 정렬검색 : Name 필드를 오름차순으로 정렬
Select * From Memos Order By Name ASC -- ASC는 생략가능.


-- Name에 '앗'자가 들어가는 사람의 Name과 Email을 Num의 역순으로 검색.
Select Name, Email From Memos Where Name like '%앗%' Order By Num DESC


-- [9] 상위 5개 레코드만 검색.(Top 5)
Select Top 5 * From Memos Order By Num DESC


-- [10] 해당 테이블의 전체 레코드 수 반환
Select Count(*) From Memos
Select Count(*) As [전체레코드수] From Memos

-- 카운트 결과 값을 '전체레코드수'라는 별칭으로 조회하고자할 때 AS구문 사용.


-- 전세계 유일한 문자열 값을 출력시켜주는 함수.
Select newid()
-- 각 사용자별로 서로 다른 어떤값을 부여해주고자할 떄 newid()라는 내장함수를 사용할 수 있는데 이를 통하면 절대로 똑 같은 값이 나오지않는 문자열을 만들어 낼 수 있다.



_____________________________________________________________________________________________________

출처 : loger1000님의 스프링노트 (캄사합니다-)

현재 DB에서 어떤 특정한 조건을 만족하는 레코드만을 뽑아낼 때 SELECT 구문을 사용한다.

저걸보고 있자니,
다음학기 DB수업은 얼마나 더러울까 하는 생각이 문득 스쳐간다.
빨리 보고 닫아버려야지.


Posted by blueye
1 리소스를 DLL로 만들기
2 주의사항
3 권장 사용법
4 MUI(OS에서 지원!)
5 기존 코드 다국어 변형 작업

리소스를 DLL로 작성하여 다른 언어 지원시 리소스 DLL만 바꿔준다.
 

1 리소스를 DLL로 만들기


  1. VC에서 비어있는 dll프로젝트를 만든다.
  2. 새로 리소스파일을 추가
  3. 리소스의 속성을 보면 언어를 설정할 수 있다. 지원하는 언어로 설정하여 리소스 작성
  4. DLL컴파일 -> 리소스 DLL이 만들어 진다.

2 주의사항


  1. 두 DLL의 ID는 철저하게 일치하여야 한다. (ID란 매크로가 아니라 부여된 번호를 말한다.)
  2. 리소스가 DLL로 따로 작성되기 때문에 호스트 프로그램과 ID값을 일치시키는데 신경써야 한다. (리소스를 분리하지 않으면 자동으로 되겠지만)
  3. 다른 언어용 리소스 DLL은 가지고 있는 요소들이 일치하여야 한다. 한쪽에만 특정 다이얼로그가 있어선 안된다.
  4. 단축키(Accelerator)도 가능한 일치시키는게 좋지만 다국어 지원시 달라질 수도 있다.

3 권장 사용법


  1. 호스트 프로그램에서 언어 설정을 바꿀 수 있는 메뉴가 존재
  2. 현재 설정된 언어는 레지스트리에 저장
  3. 로딩시 이 값을 읽어 해당 DLL을 로드

4 MUI(OS에서 지원!)


  1. 원래 코드의 텍스트 리소스파일만 따로 떼어내어 dll을 만들되, 만들어질 이름을 실행화일이름.코드번호.mui' 로 한다.
    해당 언어로 변환하여 빌드한다.
  2. 원본 코드에서 텍스트 관련 리소스는 삭제한다. 빌드.
  3. 언어별로 mui파일만 작성해 놓으면 OS가 선택해 스트링관련 리소스 로드!!! (언어팩이 이렇게 가능해지는건가?)

5 기존 코드 다국어 변형 작업


  1. 언어 작업시 제어판->국가및 언어 옵션-> 모든 설정을 해당 언어로 셋팅. (리부팅 필요)
  2. 리소스 : 스트링 테이블, 다이얼로그, 글자가 들어간 비트맵및 아이콘 수정. 리소스의 언어를 반드시 해당언어로 설정.
  3. #define 되어 있는 부분에 작성자가 스트링을 소스내에 모아 놓았을 수도 있음. 수정.(헤더파일들 검색)
  4. MessageBox 검색, 수정
  5. AfxMessageBox 역시 검색, 수정. AfxMessageBox의 경우 미리 정의된 AFX_IDS_APP_TITLE 을 메세지 박스 타이틀로 사용.
    이 매크로가 정의 되어 있지 않은 경우 프로그램 이름을 타이틀로 사용
  6. DrawText, TextOut 등을 검색 수정.
  7. (!!!중요!!!) MFC등을 사용한 프로그램의 경우에는 출력되는 스트링을 찾을 수 없거나 MFC리소스에 있는 경우가 있다.
    이는 시스템에서 출력하는 메세지로 OS 이미지의 쉘에서 해당 스트링이 바뀌어야 하는 것으로 App.쪽에선 수정할 필요가 없다.
  8. 프로그램 실행파일 이름과 타이틀도 바꾼다. 상호 호출하는 Apps. 인 경우 호출하는 프로그램 이름이 정의된 곳을 찾아서 바꾸어준다.
    클래스 이름은 바뀔 필요가 없다. 타이틀은 FindWindow등에서 사용될 가능성이 농후 하므로 검색하여 찾아준다.
    ex) NWAVE 카메라: 리소스 수정, rc파일 직접 열어 메뉴항목 수정(반드시 eVC에서 리소스 해당언어설정), MessageBox 수정, DrawText 수정, CameraDll도 마찬가지. SendMessage!!!, 스트링 관련 함수들 - wsprintf, wcscpy, wcscat등, format
_____________________________________________________________________________________________________

출처 : Batmask Wiki :: 다국어 지원 프로그래밍
Posted by blueye
MainFrame, DOC, VIew, 사용자 Class 사이를 마음대로 헤집고 다니는 방법.

검색 키워드 : mfc view 접근



요거 한방이면 다 끝이다.ㅋㅋ

______________________________________________________________________________________

4대 Class간 참조

  //각각 헤더파일 include

  #include "MainFrm.h" //메인프레임 헤더파일

  #include "ClassDoc.h"   //Doc클래스 헤더파일

  #include "ClassView.h" //View를 include 할때는 반드시 Doc 헤더파일이 위에잇어야한다

  #include "Class.h" //APP Class 의 헤더파일


  void CClassView::OnMenuView() //뷰클래스

    CClassApp *pApp=(CClassApp *)AfxGetApp();   //View -> App
    CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd();  //View -> MainFrm

    //View -> MainFrm -> Doc

    CClassDoc *pDoc=(CClassDoc *)pMain->GetActiveDocument();

    CClassDoc *pDoc=(CClassDoc *)GetDocument();         //View -> Doc


    //MainFrame 클래스

    CClassView *pView=(CClassView *)GetActiveView();  //MainFrm -> View

    CClassDoc *pDoc=(CClassDoc *)GetActiveDocument();  //MainFrm -> Doc

    CClassApp *pApp=(CClassApp *)AfxGetApp(); //MainFrm -> App


    //Doc 클래스

    CClassApp *pApp=(CClassApp *)AfxGetApp(); //Doc -> App

    CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd(); //Doc -> MainFrm

    // Doc -> MainFrm -> View

    CClassView *pView=(CClassView *)pMain->GetActiveView();

    CClassView *pView=(CClassView *)m_viewList.GetHead();      // Doc -> View


    //App 클래스

    CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd(); //App -> MainFrm

    //App -> MainFrm -> View

    CClassView *pView=(CClassView *)pMain->GetActiveView();

    //App -> MainFrm -> Doc

    CClassDoc *pDoc=(CClassDoc *)pMain->GetActiveDocument();


_____________________________________________________________________________________________________

출처 : Tong - Mothrah님의 Windows통
(캄사~)

Posted by blueye

최근에 달린 댓글

최근에 받은 트랙백

글 보관함