2009년 5월 28일 목요일

Windows 명령어 (2000)

1. Internet Explore 6.0 레지스트리에서 삭제하기 
 Internet Explore에 문제가 생겼을때 사용하시면 좋습니다.

작업하기 전에 내보내기 기능으로 레지스트리 백업을 먼저 하세요

 HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Active Setup / lnstalled Components /

 

{89820200-ECBD-11CF-8B85-00AA005B4383} 의 키를 삭제해 주세요.

 

삭제하고 나서 다시 Explore를 설치하시면 됩니다.

 

 [주의]Internet Explore 를 삭제할때는 Service Pack 1을 설치하신 분들은 Service Pack 1을 제거하시고
           Internet Explore를 삭제해야 합니다. Service Pack 1을 삭제안하시면 오류가 난다고 합니다
 
 
 
 2. Windows 창 뜨는 속도 향상 
 Windows의 창을 최대화, 최소화 시켰을때 서서히  나타나는 효과를 애니메이션 효과 라고 하는데

레지스트리에서 그걸 제거할 수 있습니다.

기본적으로 페이드효과와 스크롤효과의 두가지를 Windows XP에서 사용할수 있습니다.

이것을 삭제해 주면 창이 뜨는 속도가 빨라집니다. 

HKEY_CURRENT_USER / Control Panel / Desktop / WindowMetrics에서

 

오른쪽의 MinAnimate값을 더블클릭 하세요.

MinAnimate값을 더블클릭하면 문자열 편집창이 나오는데 값 데이터에 0을 넣어주면 됩니다. 
 
 
 
 3. 불필요한 시작프로그램 줄이기 
시작프로그램은 Windows의 부팅과 동시에 실행되기 때문에 부팅속도가 현저히 늦어지고

메모리를 많이 차지하는 원인이 되기도 합니다.

또 시작프로그램이 많으면 메모리가 부족하게 되어 리소스 부족으로 에러가 발생하기도 합니다.

HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Windows / CurrentVersion / Run

 

HKEY_CURRENT_USER / SOFTWARE / Microsoft / Windows / CurrentVersion / Run

위의 두개를 클릭하신 다음 오른쪽창에 보시면 시작프로그램이 등록되어 있을 겁니다.

 

아무거나 지우면 부팅에 문제가 생길 수 있으니 주의하시고 확실하지 않은 값은 절대로 삭제하지 마십시요.


 
 
 
 4. 웹 사이트의 암호지우기 
가끔 인터넷을 이용하다보면 로그인할때 암호를 저장할 것인지를 물어오는 사이트가 있는데

아주 조심 하셔야 합니다.

아무생각없이 예를 눌렀다간 암호를 크래킹당할 수 있습니다.

이런 문제를 미연에 방지 하기 위하여 레지스트리를 편집해 암호 노출을 막아야 합니다.

HKEY_CURRENT_USER / Software / Microsoft / Windows / CurrentVersion / Internet / Settings 로 들어가

 

오른쪽 창에서 마우스 오른쪽 버튼을 누르고 새로만들기-DWORD 를 선택하세요.

 

값이 나오면 이름을 Disable Password Caching으로 수정.

 

새로 만든 Disable Password Caching 값을 더블클릭하여 나타나는 DWORD 값 편집창에서

 

값 데이터에 1을 입력하고 단위는 16진수로 설정을 해야 합니다.
 
 
 
 5. 시스템 오류시 자동으로 재부팅되는 현상 
 윈도우가 시스템 오류시 자동으로 재부팅되는 현상을 제어하는 방법입니다

   제어판 - 시스템 - 고급 - 시작및 복구 - 시스템오류 - 자동으로 다시 시작에 체크를 없애줄것
 
 
 
 6. 무응답 응용프로그램 타임아웃 시간줄이기 
 응용프로그램을 사용하다 보면 정지하여 응답이 기다리게 되는 시간이 있습니다.

 이 타임아웃시간을 조절해서 윈도우 정지시간을 줄여 보세요

  시작-실행-regedit - HKEY_CURRENT_USER - Control Panel - Desktop - HungAppTimeout

  다음 값이 기본적으로 5000(5초)으로 설정되어있을 것이다. 이 값을 1000 (1000 = 1초)로 설정해줍니다
 
 
 
 7. 제한된 다운로드 파일개수 늘리기 
 익스플로러를 이용하는 경우에 일반적으로 하나의 서버에서 한번에 2개의 파일만 다운로드 할수 있습니다.

개수를 원하는 만큼 늘리는 편집방법입니다.

HKEY_CURRENT_USER / Software / Microsoft / Windows / CurrentVersion / Internet

 

Settings 로 들어가 오른쪽 창에서 마우스 오른쪽 버튼을 누르고 새로만들기-DWORD 를 선택하세요.

 

값이 생기면 이름을 MaxConnectionsPerServer 로 수정합니다.

 

새로 만든 MaxConnectionsPerServer 값을 더블클릭하여 나타나는 DWORD 값 편집창에서 값 데이터에

 

원하는 다운로드 파일의 갯수를 입력하고 확인버튼을 누릅니다. 아래사진에서는 5개를 선택했네요.
 
 
 
 8. 윈도우 자동 로그인 방법 
 HKEY_LOCAL_MACHINE\SOFTWARE - Microsoft - Windows NT - CurrentVersion - Winlogon

    문자열 값:

   AutoAdminLogon ----> 1

   DefaultUserName ----> UserName(로그인 계정)

   DefaultPassword ----> Password(로그인 계정의 패스워드)          시스템을 재시동 합니다
 
 
 
 9. 느려진 인터넷속도 향상시키기 
 인터넷 속도가 점점 느려지는거 같으면 TCP/IP가 사용하는 버퍼크기를 늘려보는 것도 하나의 

방법이 될 수 있습니다.

HKEY_LOCAL_MACHINE / System / CurrentControlSet / Services / lanmanserver /

 

parameters 로 가서 오른쪽 창에서 마우스 오른쪽 버튼을 클릭하여 새로만들기-DWORD를 선택합니다.

 

새 값이 만들어지면 값의 이름을 SizReqBuf 로 수정합니다

 

새로 만든 SizReqBuf 값을 더블클릭하면 나오는 DWORD 값 편집창에서 단위를 10진수로 설정하고

 

값 데이터에 14596이라고 입력한 후 확인버튼 누릅니다.


 
 
 
 10. 프로그램 설치시 에러 
" windows가 안전모드에서 실행중이거나 windows installer가 제대로 설치되지 않았습니다 "

위의 메시지 에러가 뜨면서 설치가 안될는 경우가 있습니다.

이런 현상 일어나는 분들은 제어판 >관리도구>서비스의 Windows Installer 항목을 더블클릭해 보시면

나오는 속성창에서 실행파일경로를 유심히 살펴 볼 필요가 있습니다.

원래 \WINDOWS\System32\msiexec.exe /V 로 되어 있어야 할 경로가

어떤 이유에선지 다른 곳으로 지정이 되어 있는 경우가 있습니다

실행시키면 Installer 버전은 그대로 2.0.2600.1106으로 복구됩니다.

System32폴더의 msi.dll파일을 오른쪽버튼으로 속성검사해보시면 확인하실수 있습니다.


 
 
 11. 인터넷 속도 높이기 
 [트리]  : HKEY_CURRENT_USER/Sofware/Microsoft/InternetExplorer/Setting

 [이름]  : DontUseDNSLoadBalancing

 [속성]  : 이진값

 [ 값 ]  : 01 00 00 00
 
 
 
 12. DOS모드에서 XP설치하는 방법  
XP cd의 i386아래에 있는 winnt.exe라는 프로그램이 있는데  dos모드에서 XP를 설치하는 프로그램이다.
도스모드 부팅시 smartdrv.exe 프로그램을 실행후 XP를 설치하면 더 빠른 속도로 진행된다.

도스모드 XP인스톨방법에 질문이 많아서 쉽게 정리해본다.
1.Win98/me부팅디스켓이나 XP에서 포맷시 만들 수 있는 Dos부팅 디스켓으로 부팅.
2.smartdrv.exe를 실행.
3.윈도우XP CD의 winnt.exe가 있는 위치를 지정.
4.실행한다.


그러면 윈도우가 알아서 설치 할 겁니다. 푹 쉬세요
 
 
 
 13. 인터넷 로딩속도 향샹법 
1) DNS캐쉬수정으로 브라우저속도 높이는 방법 입니다


HKEY_LOCAL_MACHINE\System\CurrentControlset\Services\Dnscache\Parameters에서
다음항목의 값을 입력합니다.
(없으면 새로 오른쪽 마우스 클릭하여 새로만들기->DWORD값-10진수로 만들면 됩니다.)
    CachehHashTableBucketSize---->1
    CachehHashTableSize---------->384
    MaxCacheEntryTtlLimit-------->64000
    MaxSOACacheEntryTtlLimit---->301

2)HKEY_USER\.Default\Software\Microsoft\Windows\CurrentVersion


\InterSettings에서 새로만들기-->DWORD값을 다음과 같이 만든다(값은 16진 수로 선택한다)
    MaxConnectionsPerSever------>20
    MaxConnectionsPer1_0Sever--->20

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InterSettings에서도
    위와 같이 값을 만든다
    MaxConnectionsPerSever------>20
    MaxConnectionsPer1_0Sever--->20

3)HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
    \Explorer\RemoteComputer\NameSpace
    에서 {D6277990-4C6A-11CF-8D87-00AA0060F5BF} 폴더 자체를 삭제


 
 
 14. 오류 보고(MS전송)창 나타나지 않게 하기  
인터넷을 하다보면 에러가 나서 오류를 보고 한다고 뜨지요.
그걸 해결해 보겠습니다.

1) 시작->제어판->성능 및 유지 관리->시스템 을 선택 합니다.


2) 시스템 등록정보창이 나타나면 [고급]탭에서 가장 아래에 있는 오류보고 버튼을 클릭을 합니다.


3) 오류보고 대화상자에서 `오류 보고 사용 안 함`을 선택하고 확인버튼을 누르면 끝.


 
 
 15. 폴더창 속도향상하기 
제어판에서 ``폴더옵션``을 실행한 다음, ``보기`` 메뉴탭을 선택하고

``고급설정`` 부분에서 ``폴더 및 바탕화면 항목에 팝업 설명 표시``와

``압축된 파일과 폴더를 다른 색으로 표시`` 그리고 ``독립된 프로세스로

폴더창 실행``의 체크를 해제하여 속도 향상


 
 
 16. 윈도우 IME 감추기 
 화면 우측 하단에 있는 IME(한 영 변환버튼) 을 감추려면

트리 : HKEY_CURRENT_USER\Control Panel\Input Method

이름 : Show Status       속성 : REG_SZ 값 : 0
 
 
 
 17. <시작>에서 도움말메뉴 삭제하기 
도움말 항목을 안보이게하기 위해서는 아래와 같은 단계를 거친다
1.시작-실행-REGEDIT

2.[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer]

이 경로에서 [새로만들기]에서 [DWORD값]을 하나 만들고 이름을 [NoSMHelp]으로 한다

3.더블 클릭해서 데이터 값을 1로 지정하고 재부팅하거나 로그오프하면 설정이 적용된다

4.복원하시려면 값을 0으로 한다


 
 
 18. 멀티부팅 끄는 방법 
 윈도우 2000은 최초로 유니코드를 채택한 운영체제입니다.

그러므로 별도의지역판이 아니어도 60개국의 언어를 표시할 수 있는데..

 위치 : Control Panel \ Regional Options

방법 : 1. General탭에 Your locate(lacation)과 Language settings for the system을 추가하려는 국가로 선택합니다.

(locate는 운영체제가 사용하는 날짜, 시간, 숫자 표기법 같은걸설정하는 것이고, Lang...는 윈도우에서 사용할 언어)

 2. Input Locales에서도 그 국가의 언어를 Add버튼을 클릭하여 선택 하면됩니다.

 3. 참고로 언어팩은 윈도우 2000 CD의 i386\LANG에 있습니다.
 
 
 
 19. 윈도우 창이 뜨는 속도 높이기 
윈도우즈의 속도를 조금이라도 높이고 싶은 사람들에게는 창의 최대화 , 최소화에 따른 애니메이션 효과도
속도를 저하 시키는 원인이 될 것이다. 여기서는 그 속도를 높여주는 방법을 소개한다.


*레지스트리 편집기를 실행한다.
변경 할 사항: HKEY_CURRENT_USER\Control Panel\desktop\windowmetrics로이동 우측 화면에서
마우스 오른쪽 버튼을 누른후 ``문자열 값``을 선택하고 MinAnimate라고 입력한다.
그다음 이 값을 더블클릭하여 값을 ``0``으로 설정 한다.
이것으로 창이 열리거나 닫힐때 최대화 , 최소화 애니메이션 표시가 되지 않아 창의 표시속도가 눈에 띄게 빨라진다.


 
 
 20. L2캐쉬 지정으로 속도향상 시키기  
Secondlevel Datacache(L2Cache) 는 CPU의 작업속도에 매우 중요한 기능을 담당한다.
펜3코퍼마인에 내장된 CPU와 같은 속도로 동작하는 이 빠른 L2캐쉬에 데이타를 일정량 올려놓을 수 있기 때문에

상대적으로 엄청 느린 메모리로만 데이터를 처리할때보다 작업효율이 더욱 뛰어날 수 밖에 없다.

일반적으로 xp가 cpu와 L2Cache의 값을 자동으로 인지하게 된다. 그러나, 종종 xp가 이것을 할 수 없을 경우가

발생한다. 그래서 cpu의 작업속도를 향샹시키기 위해서는 레지스트리 값을 조작해줘야 한다.

1.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory
Management에서 오른쪽에 SecondLevelDataCache항목을 고른다
2.자신의 cpu에 맞는 10진수 값을 다음과 같이 수정한다.

AMD Duron → 64입력
CeleronA/celeron2 → 128입력
PII mobile/PIII E(EB)(칩형태 256K L2캐쉬내장 펜3 코퍼마인)/P4/AMD K6-3/AMD THUNDERBird/Cyrix III → 256입력
AMD K6-2/PII/PIII katmai(초기 카트리지형식 펜3 카트마이)/AMD Athlon → 512입력
PII Xeon/PIII Xeon → 1024입력

3. 재시작한다.


 
 
 21. 윈도 xp 시작페이지 고정하기 
인터넷 익스플로러의 시작페이지가 바뀌는 경우가 있습니다.

시작페이지를 고정시는 방법을 알려드리겠습니다.

한번 바꾸어 놓기만 하면 다른 어떤 프로그램(성인사이트 광고같은거..)도 전혀 바꿀 수가 없습니다..

1. 먼저 홈페이지로 쓸걸 지정해주시고요.. (도구메뉴 - 인터넷 옵션에서 지정해 주세요.)

2. 시작 - 실행에 gpedit.msc 입력 후 확인 누르면 그룹정책창이 뜨는데

3. 거기서 사용자구성 - 관리탬플릿 - 윈도우 구성요소에 보시면

4. 인터넷 익스플로러가 있습니다...(영어로 쓰여있음)

5. 거기서 옆에 + 를 누르지말고 익스플로러 폴더를 클릭하시면

6. 우측창에 홈페이지를 변경할수없음이 있어요..

7. 거기에 마우스 우클릭 - 등록정보에 " 사용 " 으로 체크해 주시면 시작 페이지가 고정이 됩니다..

다시 바꿀일이 있으면 사용안함으로 하신담에 바꾸시면 되겠죠..

이렇게 해놓으시면 죽었다 깨도 절대 시작페이지가 바뀌지 않게 됩니다.

윈도 2000 이나 XP Pro 만 소용있습니다..
(죄송합니다.. 윈도 XP 홈버젼은 되지 않습니다..그룹정책이 아예 안깔려 있꺼든요..)

단, EasyWinCleaner 프로그램의 경우 직접 건드리는 것이 되어 이 프로그램을 설치하는 경우는 해당 사항이 없습니다.

그래서 전 절대 EasyWinCleaner 안씁니다..

편하고 좋은 프로그램입니다만, 시작페이지가 바뀌어서요..


 
 
 22.빠른 웹서핑을 위한 인터넷 익스플로러 최적셋팅법 
도구 - 인터넷 옵션 - 고급에서 다음과 같이 해 보세요.


탐색에서 "예약시 동기화할 오프라인 항목 표시" 해제 (선택하지 않음)


특정파일이(이름이 한글로 된 파일) 안열린경우 " URL을 항상 UTF-8로 보냄" 해제 (선택하지 않음)


탐색에서 "프록시 연결을 통해 HTTP 1.1 사용" 해제 (선택하지 않음)


연결항목 랜설정항목에서... 자동구성과 프록시 서버를 모두 해제 (선택하지않음)


 
 
 23. msconfig에서 필요없는 서비스항목 해지하여 부팅속도 올리기 
 (그만큼 윈도우시작시 불필요한 인식을 안해서 좋음....)


Automatic Updates
자동업데이트 기능. 해제하시면 수동으로만 업데이트 됩니다.
Help and Support
도움말 및 지원센터... 윈도우 도움말이 불필요하다고 여겨지면 해제.
NetMeeting Remote Desktop Sharing
인터넷외의 인트라넷, 원격제어등을 사용하지 않는다면 해제
Performance Logs and Alerts
원격제어시 원격 컴퓨터의 정보등을 수집하는 서비스... 원격제어 사용하지 않는다면 해제
Portable Media Serial Number
컴퓨터에 연결된 휴대용 음악장치의 시리얼넘버검색(-_-;)무슨말인지 필자도 이해 안되지만...
아무짝에 쓸모없어 보임...
Secondary Logon
다른 계정을 사용하지 않는다면(단독으로 사용하는 컴퓨터라면) 해제.
Smart Card Helper
플러그 앤 플레이를 지원하지 않는 레거시 스마트 카드를 지원하도록 설정.
레거시 스마트 카드를 사용하지 않는다면 당근 해제.
System Restore Service
시스템 복원 서비스... 시스템 복원 사용하지 않는다면 해제.
Telnet
원격사용자가 이 컴퓨터에 로그온하여 프로그램을 실행하고 UNIX 및 Windows 기반
컴퓨터를 포함한 다양한 TCP/IP 텔넷 클라이언트를 지원. 말그대로... 이런 기능을 사용하지 않으려면 해제.


 
 
 24. 익스플로러 시작시 풀스크린으로 항상 시작  
1. HKEY_CURRENT_USER\Software\Microsoft\internet Explorer\Main

2. Main 항목 오른쪽 창에서 FullScreen 항목을 찾으세요.


3. 이젠 FullScreen 를 더블 클릭해서 no를 yes 바꿉니다.


4. 레지스트리 프로그램을 종료 후 재부팅 하시면 됩니다.


 
 
 25. 멀티부팅 메뉴 없애기  
우선 수정하기 전에 부팅 디스켓, backup용 디스켓을 만들어 두세요

 만약 잘못되었을 때를 생각해서요

boot.ini " 파일은 숨겨진 화일이라서 탐색기의 메뉴바에 있는

"도구" 클릭하시고 "폴더옵션" 선택-> "보기" 선택-> "숨김 파일 및 폴더 표시 안함" 을 "숨김 파일 및 폴더 표시" 로


수정해 주시고 재 부팅하면 c:\안의 " boot.ini "이 보입니다.

우선 a: 드라이브에 backup을 받아 놓으시고 부팅 디스켓으로 다시 부팅합니다.

부팅이 되면 backup받은 boot.ini 화일을 아래와 같이 수정 하세요.

◆ 기존 boot.ini 화일 내용

[Boot Loader]

timeout=10
Default=C:[Operating Systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect
C:\="Microsoft Windows Millennium"

◆새로바꾼 boot.ini 화일 내용

[Boot Loader]

timeout=0
Default=C:[Operating Systems]
C:\="Microsoft Windows Millennium"

다 바꾸셨으면 c:\안에 " boot.ini "를 카피하고 재 부팅 하면 됩니다
 
 
 
 26. DMA 설정을 반드시 해야 하는 이유/조건 
하드디스크와 시디드라이브를 DMA 모드로 설정하는 것이 좋습니다.
디스크의 성능을 높여주기 때문이지요

DMA 모드를 이용하기 위해선 메인보드 지원여부나 운영체제 지원여부,

그리고 드라이브 자체 최대지원등 조건이 맞아야 합니다

메인보드 바이오스 상에서 DMA 설정을 확인한후 사용하는 메인보드 칩셋에 따라 드라이버를 설치해야 합니다

예를 들어 인텔사의 칩셋을 사용하는 메인 보드는 Intel Application Accelerator 프로그램을,

VIA 칩셋을 사용하는 메인 보드는 VIA 4-in-1을 사용하셔야 합니다.


 
 
 27. BootVis 를 이용한 부팅 최적화  
BootVis는 MS에서 제공하는 부팅최적화프로그램입이다.

1. Trace - Next Boot + Driver Delays를 선택합니다.


2. OK 버튼을 누르면 자동으로 재부팅이 이루어 집니다. (재부팅후 기다리시면 BootVis 가 자동으로 실행됨)
그래프를 통해 부팅소요시간에 대한 자세한 설명이 나옵니다.

3. 이번엔 최적화를 위해서 Optimize System을 선택하고 지시에 따라 하시고 재부팅후 BootVis 최적화를

마칠 때까지 기다리셔야 합니다. 시스템에 따라서 반응 및 작업시간이 길어 질 수 있습니다.


 
 
 28. 윈도우XP정품인증 받는법  
 실행에서regedit를 치고 다음에 경로로 이동합니다

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\WPAEvents 


보면oobetimer라는게있을 것입니다


그걸더블클릭하면편집이뜨는데첫째줄에보면0000하고 몆칸띄웠고그다음숫자하고영어하고섞여있는게보일겁니다


멘앞에ca를붙여주면 끝


이제 oobe/msoobe /a를 실행하여  정품인증 됐다고 나오는지 보세요.  나오면성공

방법1. jjangwarez.com 유틸에 가시면 xp wow 버젼에 인증 받을 수 있게 크랙과 케젠이 함계 동봉돠어 있습니다.

그걸 깔면 되구요. 설명서를 잘읽어 보고 설치하면 됩니다.


방법2.xp인증 크랙 다운 받아 설치하세요.(단, 홈에디션만 가능하며 xp까시고 마지막에 크랙설치)

두가지 방법 다 해서 설치 ok!
 
 
 
 29. 구버전 프로그램을 윈XP에서 쓰기 
윈9X 에서 쓰던 프로그램인데 윈XP 에선 못쓴다고 하는 프로그램들을 쓸 수 있게 하는 방법인데
모든 프로그램이 작동하지 않을 수 있습니다

먼저 9X용 실행파일을 선택하시구요
오른쪽키를 눌러서 속성을 클릭합니다
그래고 호환성탭을 클릭하세요

호환성 모드에서 다음에대한 호환성모드로 쓰시고자하는 프로그램을
실행 이체크박스를 클릭하여 목록에서 해당운영체제를 선택합니다.
그리고 디스플레이설정에서 해당 프로그램 실행되는 해상모드를 선택합니다.
마지막으로 확인을 누른후 해당 프로그램을 실행하시면 됩니다.
 
 
 
 30. 오류보고 창 안뜨게 하기 
1) 시작 - 제어판 - 성능 및 유지 관리 - 시스템

2) 시스템 등록 정보창의 [고급]탭에서 가장 아래에 있는 오류보고 버튼을 클릭한다.

3) 오류 보고 대화상자에서 `오류 보고 사용 안함`을 선택 하고 확인을 클릭 하시면 됩니다.

조금만 노력하면 컴퓨터가 쉬워집니다
 

문득 IME가 보기 싫어 졌다는 생각이 들어 여기저기 뒤지다 찾아낸 이야기 ..


출처 : http://blog.naver.com/hotfeel7?Redirect=Log&logNo=150000574420 

출처 : Tong - 공원님의 ┣ ★ 알아두면 편리한 것통

2009년 5월 25일 월요일

모니터 위치 확인

EnumDisplayMonitors(NULL, NULL, MyInfoEnumProc, 0);

BOOL CALLBACK MyInfoEnumProc(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor,
LPARAM dwData)
{
MONITORINFO lpmi ;
memset(&lpmi,0,sizeof(MONITORINFO));
lpmi.cbSize = sizeof(MONITORINFO);
if(!GetMonitorInfo(hMonitor, &lpmi ))
return FALSE;

////////////////////// 이것이 모니터 위치 ////////////////////
lpmi.rcWork;
}

위에 EnumDisplayMonitors(NULL, NULL, MyInfoEnumProc, 0);
쓰시면
BOOL CALLBACK MyInfoEnumProc(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor,
LPARAM dwData)
가 호출됩니다.

모니터의 갯수만큼 차례대로.. 그럼 각 모니터의 위치를 알수 있습니다.
그 다음 다이알로그의 rect가 포함되어 있는 모니터를 찾으면 됩니다.
-------------------------------------- Devipia 161357 답변

 

출처 -------------------

www.devipia.com

출처 : Tong - 공원님의 ┣ ★ 먹고사는일(VC++)통

네트워크 명령어

그냥 인터넷 돌아 다니다가 찾았어여..
편할거 같아소 올려 봅니다..
pC 방같은 경우는 netstat -an 으로 다른 사람이 computer를 모니터링하고 있지 않나 확인을 하고 사용하시는 것이 좋겠지요.
ping
- 서버 상태 확인
예) C:\>ping www.ihelpers.co.kr
nslookup
- DNS 확인
예) C:\>nslookup -type=mx ihelpers.co.kr
ifconfig
- 현재 자신의 Network 상태 확인
netstat
- 현재 자신의 통신하고 상태 확인
예) C:\>netstat
Active Connections
Proto Local Address Foreign Address State
TCP smson:1030 LINUX:netbios-ssn ESTABLISHED
TCP smson:1032 WWW:netbios-ssn ESTABLISHED
TCP smson:1036 64.12.25.207:5190 ESTABLISHED
TCP smson:1511 CDHWAN:netbios-ssn ESTABLISHED
TCP smson:1540 IS~NODE1:1755 TIME_WAIT
TCP smson:1548 I! S~NODE1:1755 TIME_WAIT
TCP smson:1554 IS~NODE1:1755 TIME_WAIT
TCP smson:1558 IS~NODE1:1755 ESTABLISHED
* netstat -an 으로 모든 상태를 볼수 있습니다.
racert
- 상대방의 IP까지의 경로 확인

출 처 : 아이진

출처 : Tong - 공원님의 ┣ ★ 먹고사는일(VC++)통

232 통신

//////////////////////////////////////////////////////////////

//

// 언제쯤인지 ㅋㅋㅋ 생각해보니 좀 됬나? 어데서 봐서 넣었던거 같은데 ㅡ.ㅡ;;

// 그래도 통신은 잘 되더군..

//

//////////////////////////////////////////////////////////////

 

#include "./serialctl.h"

CSerialCtl::CSerialCtl(void)
{
 m_hSerialPort = NULL;
 m_bPortState = false;
}

CSerialCtl::~CSerialCtl(void)
{
}

//////////////////////////////////////////////////////////////////////////
// Serial Pont를 연다
bool CSerialCtl::OpenSerialPort(DCB dcbSet, char* pchrPortName)
{
 if( isOpenPort() == false)
 {
  m_hSerialPort = CreateFile(pchrPortName, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);

  if(GetCommState(m_hSerialPort, &m_dcbconfig) == 0)
  {
   AfxMessageBox("Serial Port를 생성실패 \n");
   return false;
  }
  m_dcbconfig.BaudRate = dcbSet.BaudRate;
  m_dcbconfig.StopBits = dcbSet.StopBits;
  m_dcbconfig.Parity = dcbSet.Parity;
  m_dcbconfig.ByteSize = dcbSet.ByteSize;

        if(SetCommState(m_hSerialPort, &m_dcbconfig) == 0)
  {
   AfxMessageBox(" Serial Port를 초기화 실패 \n");
   return false;
  }

  COMMTIMEOUTS comTimeOut;
  comTimeOut.ReadIntervalTimeout = 3;
  comTimeOut.ReadTotalTimeoutMultiplier = 3;
  comTimeOut.ReadTotalTimeoutConstant = 2;
  comTimeOut.WriteTotalTimeoutMultiplier = 3;
  comTimeOut.WriteTotalTimeoutConstant = 2;
  SetCommTimeouts(m_hSerialPort, &comTimeOut);
  SetOpenPort(TRUE);
  return TRUE;
 }

 return false;
}

//////////////////////////////////////////////////////////////////////////
// Open 한 Port를 닫는다.
bool CSerialCtl::ClosePort()
{
 if(isOpenPort())
 {
  SetOpenPort(false);
  if(CloseHandle(m_hSerialPort) == 0)
  {
   AfxMessageBox("Close 실패");
   return false;
  }
  return true;
 }
 return false;
}

//////////////////////////////////////////////////////////////////////////
// 현재 Port 상태 리턴
bool CSerialCtl::isOpenPort()
{
 return m_bPortState;
}

//////////////////////////////////////////////////////////////////////////
// Port Open 성공
void CSerialCtl::SetOpenPort(bool bOpenState)
{
 m_bPortState = bOpenState;
}

//////////////////////////////////////////////////////////////////////////
// Port를 읽는다.
bool CSerialCtl::ReadPort(char* pchrInputData, const unsigned long& unsizeBuffer, unsigned long& unLength)
{
 if(ReadFile(m_hSerialPort, pchrInputData, unsizeBuffer, &unLength, NULL) == 0 )
 {
  AfxMessageBox("Reading False \n");
  return false;
 }

 if(unLength > 0)
 {
  pchrInputData[unLength] = NULL;
  return true;
 }
 return true;
}

//////////////////////////////////////////////////////////////////////////
// Write the Port
bool CSerialCtl::WritePort(LPCVOID lpOutputData, const unsigned int& unsizeBuffer, unsigned long& unLength)
{
 if(unLength > 0)
 {
  if(WriteFile(m_hSerialPort, lpOutputData, unsizeBuffer, &unLength, NULL) == 0)
  {
   AfxMessageBox("WritePort FALSE \n");
   return false;
  }
  return true;
 }
 return false;
}

XP 스타일 정의

resource.h

#define IDR_MANIFEST    1

 

 

xxx.rc

rc 파일에 넣기

/////////////////////////////////////////////////////////////////////////////
//
// RT_MANIFEST
//

IDR_MANIFEST            RT_MANIFEST             "res\\SPS95KServer.manifest"

출처 : Tong - 공원님의 ┣ ★ 먹고사는일(VC++)통

Window2000 에서 투명 다이얼로그 만들기

Windows2000에서 지원되며, 먼저 아래 방법대로 해보고 안될 경우 MSDN홈페이지에서 최신 SDK를 다운 받으시면
될것입니다.(user32.dll이 최신것이면 될 것 같음)

먼저 필요한 상수들을 정의 하시고,
#define WS_EX_LAYERED 0x00080000
#define LWA_COLORKEY 0x00000001
#define LWA_ALPHA 0x00000002
#define ULW_COLORKEY 0x00000001
#define ULW_ALPHA 0x00000002
#define ULW_OPAQUE 0x00000004

타입선언,
typedef BOOL(WINAPI *SLWA)(HWND, COLORREF, BYTE, DWORD);
위에서 선언한 함수포인터 타입은 실제 투명 윈도우를 만드는 역할을 하는
SetLayeredWindowAttributes 함수를 user32.dll에서 직접 끄집어내서 사용하기 위해서임

그리고 OnInitDialog()정도에서 아래와 같이 기술합니다.

SLWA pSetLayeredWindowAttributes = NULL;
HINSTANCE hmodUSER32 = LoadLibrary("USER32.DLL");
pSetLayeredWindowAttributes=(SLWA)GetProcAddress(hmodUSER32,"SetLayeredWindowAttributes");

HWND hwnd = this->m_hWnd;
SetWindowLong(hwnd, GWL_EXSTYLE,GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED);
pSetLayeredWindowAttributes(hwnd, 0, (255 * 70) / 100, LWA_ALPHA);

-----------------------------------------

BOOL SetLayeredWindowAttributes(
HWND hwnd, // handle to the layered window
COLORREF crKey, // specifies the color key
BYTE bAlpha, // value for the blend function
DWORD dwFlags // action
);

Requirements
Windows NT/2000: Requires Windows 2000.
Windows 95/98: Unsupported.
Header: Declared in Winuser.h; include Windows.h.
Library: Use User32.lib

하도 오래되서 어데서 출처가 어데인지 잊어 버렸네요 ㅡ.ㅡ;;

출처 : Tong - 공원님의 ┣ ★ 먹고사는일(VC++)통