[Linux를 사용해 보자 #2] ProFtpd 설치 방법

우선 FTP를 설치하기 위해서는 “root” 계정이 필요합니다. 이유는 소스를 직접 컴파일해서 실행파일로 만들어야 하기 때문입니다.
따라서 “su -” 명령어를 이용하여 사용자 계정에서 “root” 계정으로 로그인 합니다.


사용자 삽입 이미지\"사용자


root 계정으로 로그인하였다면, FTP를 설치하기 위해 FTP 서버 프로그램을 다운로드 받아야 합니다.
FTP서버로는 아직까지 많은 사용자를 확보하고 있으며 사용과 설정이 간편한 “ProFTPd”를 이용합니다.
직접 인터넷으로 접속하여 다운로드 받을 수 있으며 wget 명령어를 이용합니다.


wget http://www.lovecoco.net/dataout/userdata/proftpd-1.3.3d.tar.gz  [다운로드]


사용자 삽입 이미지


다운로드 받은후 “ls” 명령어로 확인하면 “proftpd-1.3.3a.tar.gz” 파일이 다운로드 된것을 확인할 수 있다.
.gz 파일은 zip으로 압축되어 있다는 뜻이며, 압축을 해제하기 위해서는 “gzip” 명령에를 사용하고 압축을 해제하는 “-d” 옵션을 사용한다.


gzip -d proftpd-1.3.3a.tar.gz

사용자 삽입 이미지

압축 해제후 “ls” 명령어로 확인하면 “proftpd-1.3.3a.tar.gz” -> “proftpd-1.3.3a.tar” 로 변경된 것을 확인할 수 있다.
다음은 “tar”로 묶은 파일을 풀어야 한다.
“tar” 명령에서 묶은 파일을 푸는 명령어는 “tar”에 옵션 “-xvf”를 사용한다.


tar -xvf proftpd-1.3.3a.tar


사용자 삽입 이미지


위의 명령어를 입력하면 파일이 쭈욱 풀리는 것을 볼수 있으며 “ls -al” 명령어로 확인하면, 파란색의 폴더 “proftpd-1.3.3a”가 생성된것을 확인할 수 있다.


해당 디렉토리로 이동한다.


cd proftpd-1.3.3a


사용자 삽입 이미지


이동후 ProFtpd의 설치를 위해 컴파일 준비를 한다. 컴파일은 “configure” 명령어를 일반적으로 이용하며, 옵션으로는 “–prefix”를 사용하여 설치하고자 하는 곳의 위치를 설정해준다.


./configure –prefix=/usr/local/proftpd


명령어를 입력한다.


사용자 삽입 이미지

명령어를 입력하면 여려 옵션을 스스로 체크하는 화면이 쭈욱 올라간다. 별도의 오류가 없이 종료되면, 위의 화면과 같이 나온다. 이제 실제 실행파일을 만드는 명령어를 입력한다.


make all


사용자 삽입 이미지

명령어를 입력하면 컴파일되는 화면이 쭈욱~~~ 지나가며 약 몇분후 종료 되면, 위의 화면처럼 나왔다면 실행파일을 만드는데 성공한것이다.


다음로는 실행파일을 실제 설정한 디렉토리로 설치하는 과정이 남았다. 설치하는 명령어는 다음과 같다.


make install


사용자 삽입 이미지

명령어를 입력하면 실제 복사되는 화면이 나오며, 위와 같은 화면이 나오면 모든 설치가 완료 된것이다.


이제 남은 일은 Proftpd의 설정파일을 확인하여 익명접속 (누구나 FTP에 접속할 수 있는 권한)을 빼고 인증된 사용자만 접속가능하도록 수정하는 일과 함께 FTP의 실행권한을 설정하는 일이 남았다.
Proftpd의 설정파일은 위와 같이 설치했을 경우 “/usr/local/proftpd/etc/proftpd.conf”에 있으며 해당 파일을 편집해야 한다.
편집은 vi 편집기를 이용하여 편집한다.


vi /usr/local/proftpd/etc/proftpd.conf


사용자 삽입 이미지


위의 명령어를 입력하면, 위의 화면이 나오는데, 29번째 줄과 30번째 줄을 다음과 같이 변경해야 한다.


user              ftp
Group             ftp


또한 다음 페이지의 (Ctrl+F) 항목중..


<Anonymous ~ftp>
  user          ftp
  Group         ftp
  .
  .
  .
  .
</Anonymous>


부분을 아래의 그림처럼 모두 주석처리 한다.

사용자 삽입 이미지


#<Anonymous ~ftp>
#  user          ftp
#  Group         ftp
#  .
#  .
#  .
#  .
#</Anonymous>


vi의 파일을 저장하고 종료한다. (vi 사용법은 꼭 인터넷등을 통하여 습득해둘것!)


proftpd의 실행파일이 있는 위치로 이동한다.


cd /usr/local/proftpd/sbin


사용자 삽입 이미지


이동후 “ls -al” 명령어를 확인하면 3개의 명령어가 보이는데 이중 “proftpd” FTP의 실행파일이다.
다음과 같이 실행한다.


./proftpd &


실행후 “ps -aux | grep ftp”로 확인하면 proftpd 가 첫번째 행에 실행중인것을 알수 있다.


사용자 삽입 이미지


이제 제대로 접속된는지 확인해야 한다.


우선 현재 Linux의 IP를 확인해야하는데 IP 확인은 “ifconfig -a” 명령어를 통하여 확인할 수 있다.


사용자 삽입 이미지


위의 그림처럼 eth0 부분 2번째 줄, “inet addr : 192.168.41.130” 에서 192.168.41.130 이 IP 주소가 된다.
이제 본인의 컴퓨터 (윈도우)에서 시작 실행 “ftp IP주소”를 입력해야 하는데 현재 Linux의 IP는 ifconfig 명령어 실행결과 “192.168.41.130”이므로 “ftp 192.168.41.130″와 같이 입력하면 FTP에 접속되었다는 메시지와 함께 사용자 아이디를 묻는 화면이 뜬다.


사용자 삽입 이미지


위의 그림처럼 본인의 사용자 ID와 암호를 입력하면 “220 User coco logged in” 이라는 행이 정상적으로 출력되면 FTP의 설정은 완료 된것이다.


이제 마지막으로 리눅스 부팅시 자동으로 실행되도록 하기 위해서는 “/etc/rd.local” 파일에 실행파일을 추가등록만 해주면 된다.


vi /etc/rc.local


위의 명령어를 입력한후 제일 마지막 줄에


/usr/local/proftpd/sbin/proftpd &


을 추가해주면 모두 완료 된다.


사용자 삽입 이미지




 

[Linux를 사용해 보자 #1] Linux 를 VmWare에 설치하기

일단 VmWare WorkStation 6.02버젼을 설치후 다음을 진행한다.

준비물 : RedHat Fedora Core 7 (DVD버젼) ISO파일 (이미지파일)


VMWare에서.. 가상 시스템 설정 방법


1. VMWare Workstation 설치후, “File” – “NEW” – “Virtual Machine” 선택
2. “Welcome to the New Virtual Mcahine Wizard” 에서 “다음”
3. “Select the Appropriate Configuration” 에서 “Typical” 선택
4. “Select a Guest Operation System”에서 Linux 선택, Version 은 “Red Hat Linux” 선택
5. “Name the Virtual Machine”에서 이름과 경로는 적당한 곳을 지정 – 실습실의 경우 하드보안관으로 인하여 C드라이버에 저장시 컴퓨터 재부팅시 삭제되므로 D드라어버에 설치.
6. “Network Type”에서 “Use Network address translation(NAT)” 선택
7. “Specify Disk Capacity” 에서 크기는 적당히 지정 . (기본값 사용 무관)
8. 만들어진 가상머신에서 “Edit virtual machine setting” 항목 선택
9. CD-ROM 항목 선택후 “Connection” 항목에서 “USE ISO image” 선택후 다운로드 받은 RedHat Fedora Core 7 파일 지정
사용자 삽입 이미지
10. “Start this virtual machine” 선택하여 부팅


Linux 인스톨 하기.


1. 부팅화면에서 “Install or uprade an existing system”선택 하여 설치 시작
사용자 삽입 이미지
2. CD를 찾았다고 하며 “Choose Skip to skip the media test and start the installation” 에서 “Skip”선택
사용자 삽입 이미지
3. 언어선택에서 “Koream(한국어)” 선택
사용자 삽입 이미지
4. 키보드 타입은 “U.S 영어” 선택   
사용자 삽입 이미지
5. 첫 설치일 경우 sda 드라이버를 초기화 할것이냐고 묻는데 “예”를 선택
6. 하드디스크 설치시 파티션 설정에 대한 항목이 나오는데, 처음 설치일 경우 “Remove all partitions on selected drivers and create default latout”을 선택한다.
   * 차후 고급설치시 파티션을 사용자가 스스로 설치 할 수 있어야 한다^^
사용자 삽입 이미지
7. 파티션 초기화시 하드디스크의 모든 내용이 삭제된다는 경고문이 발생. 계속진행~
8. “메모리 부족” 메시지와 함께 스왑 파티션을 사용할 것이냐는 질문에 “예-스왑파티션 사용”
9. 네트웍 설치는 차후 설정 할 수 있으니 일단 NEXT (설정해도 무관)
10. 시간 설정에서는 “아시아/서울”로 선택후 NEXT
사용자 삽입 이미지
11. 암호 설정이 나오는데 “root” 아이디의 암호를 설정하는 것이다. 설정하도록 하고, 차후 분실시는 초기화하기 무척 어려우므로(거의 재설치가 편함) 잊지 않도록 한다
사용자 삽입 이미지
12. 소프트웨어의 지원에 대해서 묻는데, 웹서버를 직접 다운로드 받아 필요한 것만 설치할 예정이므로 “소프트웨어 갤발”, “웹 서버”에만 체크하고 다음
사용자 삽입 이미지
13. 이후~ 포맷부터 패키지까지 주욱~~~ 설치한다 (대략 소요시간 20~40분)
14. 완료 후 재부팅

* Fedora 부팅 후 설치
1. 재부팅 후 환영합니다 ^^ 메뉴에서 “앞으로” 클릭, License 동의 ^^ 후 앞으로
사용자 삽입 이미지
2. 방화벽 설치에서 FTP, SSH, WWW(HTTP)의 항목을 Open 하고 다음을 선택하면 경고메시지가 나오는데 가볍게 “Yes”를 클릭
   (사용하고자 하는 포트를 Open하면 되고, 설치 후에도 설정변경 가능)
사용자 삽입 이미지
3. SELinux는 강화된 Linux 보안 프로그램인데, 이것을 “강제”로 할경우 이후 PHP등의 설치에 문제가 될수 있다. 따라서 “비화성화”로 선택후 다음을 클릭하면 경고 메시지 나오는데 그냥 가볍게 “Yes”클릭
사용자 삽입 이미지
4. 날짜 및 시간을 조절하고 다음~을 클릭^^
5. Hardware Profile을 보낼것이냐고 묻는데 초기값 그냥 두고 다음
사용자 삽입 이미지
6. 사용자 생성 메뉴에서 이전에 입력한 root의 암호가 아닌 다른 사용자를 하나 더 추가. ^^ “root”는 모든 권한을 갖는 시스템 관리자이며, 이 것이 아닌 다른 사용자를 ID와 암호를 맞게 조절하여 추가하면 됨.
  사용자 아이디는 개인아이디와 암호임!!~
사용자 삽입 이미지
7. 사운드 카드설정은 별다른 조정을 할 필요없음^^.. “완료” 클릭
사용자 삽입 이미지
8. 마지막으로 재부팅되면 모든 설치가 완료
9. 재부팅 후 사용자 ID를 입력 (좀전에 추가로 만든 개인 아이디)
사용자 삽입 이미지
10. 사용자 암호를 입력.
사용자 삽입 이미지
11 그럼~~~ 다음의 화면이 나오면 설치는 일단 완료!
사용자 삽입 이미지


* VMWare에서 Linux 를 설치했을 경우에만 다음 사항을 진행합니다.
1. VMWare 메뉴 “VM” – “Install VMWare Tools”를 선택후 확인!
사용자 삽입 이미지
2. 두개의 파일중 확장자가 RPM인것을 클릭.
사용자 삽입 이미지
3. root의 암호를 입력하라고 하는데, 이때 초기에 Linux 설치전에 입력했던 암호를 입력~!
사용자 삽입 이미지
4, 다음과 같은 화면에서 패키지가 설치됨
사용자 삽입 이미지
5. 검증되지 않았다는 메시지가 나오는데 “무조건 설치”를 누름
사용자 삽입 이미지

6. 설치 완료
사용자 삽입 이미지

비쥬얼 스튜디오 6.0 설치오류 [ javasign.dll 레지스트리 등록 오류 ]

Visual Studio 6.0 설치중…
javasign.dll 프로그램 오류로 레지스트리를 실행할 수 없다”

발생시.. 다음과 같이 해결가능



비주얼스튜디오 2005 설치 후 6.0 설치시 20
05버전을 먼저 설치하고 6.0을 설치할 경우 java vm 의 문제로 인해…설치가 완벽하게 되지 않는다.

간단하게 그냥 프로그램만을 한다면 크게 문제가 없지만..
java를 이용한 프로젝트시에..문제가 발생할 수 있다…

다음 파일을 설치하고 재부팅 후 비주얼 스튜디오 6.0 을 설치하면 정상적으로 설치가 가능하다..

1375167667.zip





노트북 XP설치후 한/영 키가 동작 안함(공통)-한영키가 Alt키로 동작

노트북의 복원 CD로 OS 작업을 했다면 이러한 일이 없지만~
일반 OS로 작업 했을 경우는 한/영 키가 동작하지 않고~ 일부 키가 먹히지 안는경우가 발생~

-공통 모델들-
원인

1.노트북 한글 전환키가 동작하지 않는 현상
->때 자판을 101이 아닌 103으로 해서 발생함

해결 방법
1.regedit
2.Hkey_Local_Machine\System\CurrentControlSet\Services\i8042prt\Parameters  에서 일부 설정값 변경하여 101key로 변경하면 됨.
3.OverrideKeyboardIdentifier : PCAT_101Akey
4.OverrideKeyboardSubtype : 3
5.OverrideKeyboardType : 8
6.LayerDriverKOR : KBD101A.DLL 변경
7.재부팅하시면 한/영 전환키를 사용하실 수 있을 것입니다.

-X NOTE R500 모델(비스타용 모델)-

증상 : 영타는 모두 동작하는데 한영은 안먹힘.
한영 변환키를 누르면 Alt키를 눌렀을때 처럼 동작함.

해결 방법 :
시작->설정->제어판->시스템->시스템 등록정보에서 하드웨어 탭으로 이동->장치 관리자->키보드 부분 선택->등록된 것이 아마도 PC/AT 101키 호환 키보드/USB 키보드(종류1)로 되어 있을껍니다.->오른쪽 마우스 드라이버 업데이트 클릭->하드웨어 업데이트 마법사 시작에서 아무거나 선택하고 다음->목록 또는 특정위치에서 설치(고급)(S)를 클릭->검색 안 함. 설치할 드라이버를 직접 선택(D)클릭->호환 가능한 하드웨어 표시(C) 선택 해지->모델쪽 내용중에 PC/AT 향상된 PS/2 키보드(101.102키)를 선택->다음->장치 설치 확인창이 나오며 선택한 장치 드라이버는 PS/2 마우스 포트 장치도 제어합니다. 어쩌구~->예->하드웨어 업데이트 마법사 완료 마침 -> 시스템 설정 변경으로  다시 부팅하라는 메세지 보여줌..->부팅

(위 방법으로 하고 반드시 부팅을 해 줘야 합니다.)

Vista service pack 1 설치 시 800b0100 오류

기본적으로 알아야 할 개념



Vista 에서의 서비싱 모델의 업데이트 프로세스는 이전 운영체제에 사용되는 update.exe 모델에 비해 많은 성능 개선이 있다.


Update.exe 모델의 단점은 각 패키지와 함께 update.exe 엔진을 배포해야 한다는 단점이 있었고 Vista 에서는 업데이트 엔진이 서비싱 스택 의 형태로 운영체제의 일부가 되었다.    


Vista 에서 사용되는 CBS 는 다음과 같다    


CBS(Component based servicing) 는 Trustedinstaller 서비스로 구성되어 있으며 패키지와 업데이트의 적응성 및 선택성 규칙을 평가하고 CSI 에 적절한 배포를 전달한다.


CSI(Component servicing infrastructure) 는 시스템에 배포 및 구성 요소를 실제로 설치하는 시스템


DMI(device management and install) 는 고급 드라이버 설치 프로세스


   


 사용자 삽입 이미지


   


Manifest 는 구성요소 설치의 기본 단위를 정의하는 XML 형식의 문서  



진행 방법    




  1. 아래 CheckSUR 이라는 tool 을 설치 합니다.
    CheckSUR이라는 tool이 SP1 설치 전 아래와 같은 오류들을 자동 치료해 줍니다.

    http://support.microsoft.com/kb/947821/en-us    


    사용자 삽입 이미지 


       


    이 tool을 설치한 후 sp1 을 다시 설치 해 봅니다.
    증상이 동일하다면 2번 과정을 진행합니다.


       



  2. CheckSUR tool 을 설치하면 아래의 경로에 로그가 생성됩니다.
    Windows\logs\cbs
    폴더 아래에
    CheckSUR.log
    CheckSUR.persist.log    

    로그 확인 시 아래와 같은 로그 들이 확인됩니다.    


    Checking System Update Readiness.
    Version 6.0.6000.2
    2008-06-24 오후 19:00:54    
    Checking Deployment Packages    


    Checking Package Manifests and catalogs.


    (f)        Corrupt Catalog        CBS        0x800B0100        \servicing\packages\Package_for_KB948590_client~31bf3856ad364e35~x86~~6.0.1.0.cat                


    (f)        Missing File        CBS        0x00000002        \servicing\packages\Package_for_KB948590_client~31bf3856ad364e35~x86~~6.0.1.0.cat
    이 Catalog 파일이 corrupt 되고 missing 된 것을 확인 할 수 있습니다.


    그렇다면 이제 손상된 파일을 복구를 해봐야 합니다.    


    먼저 정상적인 pc 에서 손상된 패키지 파일을 복사하여 가져옵니다.    


    그 다음 손상된 파일을 교체하여 넣어야 하는데 vista 의 servicing 폴더는 Trustedinstaller 소유이기 때문에 수정이 되지 않습니다.


    아래 프로그램을 설치하여 엑세스 권한을 부여하여야 합니다.


    http://www.microsoft.com/downloads/details.aspx?FamilyID=E8BA3E56-D8FE-4A91-93CF-ED6985E3927B&displaylang=en


    시작 – 모든 프로그램 – 보조 프로그램에 마우스를 올리고 마우스 오른쪽 클릭하여 ‘관리자 권한으로 실행’ 를 선택하여 실행


    Command Prompt에서 SubInACL이 설치된 directory로 이동 합니다.(cd C:\Program Files\Windows Resource Kits\tools)    


    먼저 손상된 파일 backup 폴더에 백업한 후 제거 합니다.    


    명령프롬프트 창에서 아래 작업을 진행합니다.


    mkdir c:\backup
    //백업폴더 생성

    subinacl /file C:\Windows\servicing\packages\
    Package_for_KB948590_client~31bf3856ad364e35~x86~~6.0.1.0.cat /grant=faculty=F

    //ACL 에 full 권한 부여


    copy C:\Windows\servicing\packages\Package_for_KB948590_client~31bf3856ad364e35~x86~~6.0.1.0.cat C:\backup
    //손상된 파일 백업 진행


    del C:\Windows\servicing\packages\Package_for_KB948590_client~31bf3856ad364e35~x86~~6.0.1.0.cat
    // 해당 파일 제거


    위 예처럼 이미 missing 되었다면 제거 하실 필요는 없습니다.
    작업 후 정상 pc 에서 가져오기 한 파일을 붙어 넣기 합니다.
    붙여 넣기 시 권한이 없기 때문에 먼저 권한을 부여합니다.


    Subinacl /subdirectories c:\windows\servicing\packages /grant=everyone=F
    위 작업으로 packages 폴더에 everyone 추가 후 full 권한을 부여 합니다.


    이 후 파일을 붙여 넣기 하면 됩니다.
    이 후 sp1 을 다시 설치해 봅니다.



    [추가정보]


    손상된 패키지 파일 언인스톨 방법
    start /w pkgmgr /up:Package_for_KB948590_client~31bf3856ad364e35~x86~~6.0.1.0.cat


       

fpSpread에서 찾기 기능

1.
fpSpread1.SearchCol(ByVal lCol As Long, ByVal lRowStart As Long, ByVal lRowEnd As Long, ByVal Text As String, ByVal SearchFlags As SearchFlagsConstants) As Long

Return = fpSpread1.SearchCol(검색할 컬럼, 시작Row, 끝Row, 검색어, 검색Flag)


2.
fpSpread1.SearchRow(ByVal lRow As Long, ByVal lColStart As Long, ByVal lColEnd As Long, ByVal Text As String, ByVal SearchFlags As SearchFlagsConstants) As Long

Return = fpSpread1.SearchRow(검색할 Row, 시작Col, 끝Col, 검색어, 검색Flag)

Return 값이 -1 이면, 검색어가 검색되지 않음.

———–

Spread 6 의 샘플소스가 없어 해당 샘플소스에서 ActiveRow 나 ActiveCol 부터 검색하도록 코딩이 되어 있는지 모르지만, 이 메서드는 지정해준 범위내에서 검색을 하도록 되어 있습니다….

실제 많이 사용되는 메서드 입니다…

비주얼베이직(VB)에서 마우스 스크롤이 되는 방법


비주얼 베이직 6.0에서 작업을 하다보면 뜻밖에도 이런 것이 안 되다니 하고 느끼는 것이 있다. 바로 마우스의 휠이 먹히지 않는다는 것이다. 마우스로 화면을 스크롤할 수 없다는 것은 정말이지 뜻밖의 복병이다. 윈도우에서 아무런 문제 없이 사용하던 것이 비주얼베이직에만 오면 딱 그 기능이 멎어버린다. (놀라운 MS사의 센스가 아닐 수 없다!)


이 문제를 해결하려고 하면 아래의 파일을 내려받아서 설치하면 간단하게 해결된다.(왜 이것은 VB6에 기본적으로 포함하지 않는 것도 이상하다. 더군다나 패치에서도 해결할 노력이 없다. SP6까지 오면서 개선된 것이 없다. 다행히도 VB.NET에서는 된다.)


1. 아래의 파일을 내려받는다.

http://download.microsoft.com/download/e/f/b/efb39198-7c59-4ace-a5c4-8f0f88e00d34/vb6mousewheel.exe

1144400399.xxx

2. 내려 받은 실행 파일을 클릭하여 실행시킨다.
3. 압축을 풀 폴더를 임의로 선택한다. (단, 위치는 기억한다. 그리고 설치 폴더를 지우면 안 된다.)
4. 다음과 같이 명령어를 입력하여 등록한다.
regsvr32 <압축을 푼 폴더>\VB6IDEMouseWheelAddin.dll
등록되었다는 메시지가 나오면  OK버튼을 클릭한다.
5. Visual Basic 6.0를 실행한다.
6. 메뉴에서 ‘추가기능(Add-Ins)’->추가기능관리자(Add-in Manager)를 선택한다.
7. ‘사용가능한 추가기능’목록 중에서 ‘MouseWheel Fix’를 선택한다.
8. ‘로드 동작’에서 ‘로드/언로드’항목과 ‘시작할 때 로드’항목을 체크(선택)한다.
9. ‘확인’ 버튼을 눌러서 종료한다.

Visual C++ 6.0에서 열기(open), 프로젝트에 추가 할때 MSDEV.exe오류(devshl.dll) 뜨는 문제 해결법

일단.. 크게 3가지 방법을 시도 할 수 있다…
방법 #1번부터 차례대로 따라해보고.. .해결이 안되면 최후의 수단으로 방법 #3으로… 기존의 Open과 Add Project를 대체하여 사용할 수 있다.
난 방법 #1과 방법 #2가 다 되지 않아 현재는 방법 #3으로 대체하여 사용중이다!
완전 불편함 없이 똑같다.


방법 #1

서비스팩 6.0을 설치한다
서비스팩 다운로드 : http://www.microsoft.com/Korea/MSDN/vstudio/downloads/updates/sp/vs6/sp6/



방법 #2

결국 devshl.dll 문제인듯 한데… 아래의 방법대로 차근차근 따라해보자! 그래도 안되면 방법#3으로 넘어간다.


[#M_펼쳐보기|접기|

If you experience a GPF in devshl.dll when starting VC++, try the following (especially if the last time VC++ ran, you installed an addin or customized toolbars or menus).




  1. Start regedit
  2. Open HKCU\Software\Microsoft\DevStudio\6.0 (or 5.0)
  3. Select the Layout key
  4. Press F2 and rename it Layout.sav
  5. Try opening VC++ again
  6. If this doesn’t allow VC++ to startup, reverse the key name change. Consider swapping in the mfc*.dlls from your VC CDs.
  7. If this does allow VC++ to start, go to the next section (Fixing the Layout Key)

Fixing the Layout key


Warning: you will lose some of your IDE customizations (window placement, toolbars, etc)



  1. Close VC++
  2. In regedit, delete the new Layout key
  3. Rename Layout.sav to Layout
  4. Open the Layout key, find all the values whose names start with Layout (ie HKCU\Software\Microsoft\DevStudio\6.0\Layout: value Layout0) and delete them. If you can’t find any values named Layout? using regedit, then try using regedt32 – the UI isn’t as nice, but it’s not as buggy as regedit.
출처 : http://www.codeproject.com/KB/tips/devshl_fix.aspx_M#]

방법 #3

이래도 해결이 되지 않는다면 기존의 Open과 Add Project를 과감히 포기하고! 새로 추가해서 사용하자.
아래방법은 영어로 되어 있지만 하나하나 차근차근 따라하면 된다.
간추려 보면
아래 링크에 있는 filetool.exe를 다운받아서 압축풀고
거기있는 코드를 비주얼 스튜디오상에서 컴파일-빌드 하시면 새로운 툴바요소가 만들어 지는데,
1. 그걸 Tool메뉴에서 추가(단축키로 생성됩니다.) – 여기서 생성된 단축키로만 쓰셔도 되고
2. 기존의 open, add in project메뉴를 제거
3. 새로 만든 Open, Add in project를 실제 메뉴자리에 추가
하시면 끝


FileTool.exe


[#M_펼쳐보기|접기|FileTool.exe Replaces the Open and Add-to-Project Features in Visual C++

SUMMARY


Launching the Open File dialog box in Visual C++ using the keyboard shortcut key or from the File menu results in the following error:
Access Violation (0xC0000005) in DEVSHL.DLL at 0x5003eaed.DevShl.Dll referenced memory at 0x0000000. The memory could not be read.
The same error occurs when you select Add to Project
from the Project menu and click Files.
FileTool.exe is a sample that replaces the Open and Add to Project menu items in Visual C++ using the Developer Studio Object Model.
The Developer Studio Object Model contains methods that both open files and add files to a project. The BuildProject object contains an AddFile method that adds files to a project. The Documents object contains an Open method that can open files into Developer Studio. These can be used in either a macro or Add-In.


The following file is available for download from the Microsoft Download Center:
FileTool.exe (http://download.microsoft.com/download/vc60ent/s1/6.0/w9xnt4/en-us/filetool.exe)


The self-extracting FileTool.exe file contains the following files:



For additional information about how to download Microsoft Support files, click the following article number to view the article in the Microsoft Knowledge Base:


119591 (http://support.microsoft.com/kb/119591/EN-US/) How to Obtain Microsoft Support Files from Online Services
Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help to prevent any unauthorized changes to the file.

Installing the Add-In





















1. Run FileTool.Exe to extract the Visual C++ 6.0 project.
2. Build the project in Visual C++ in Release or Debug configuration.
3. In Visual C++, click Customize from the Tools menu.
4. In the Customize dialog box, click the Add-Ins and Macro Files tab.
5. Click the Browse button and locate the FileTool.dll file that was built in step 2.
6. Click OK to save the settings.
A toolbar for the two commands appears.
NOTE: Only the Open command works in Visual C++ 5.0. The AddFile method was added with the Visual Studio 6.0 release.

Removing Shortcut Keys

After you load the add-in, you can remove the shortcut keys for the menu items that stop Visual C++ and assign them to the two add-in commands by following the steps below:


































1. From the Visual C++ Tools menu, click Customize.
2. In the Customize dialog box, click the Keyboard tab.
3. From the Category box select File.
4. In the Commands window, select FileOpen.
5. In the Current keys window, select the CTRL+O entry and then click Remove.
6. From the Category box select Project.
7. In the Commands window, select InsertFilesIntoProject. If there is a shortcut associated with it, follow step 5 to remove it. By default there is no shortcut key for this item.
8. From the Category box select Add-Ins.
9. The two add-in commands AddFileToProject and OpenFile appear in the Commands window.
10. Select OpenFile then put the cursor in the Press New Shortcut Key box, press the shortcut key or key combination that you want, and click Assign.
11. Repeat the above step for the other command. The assigned shortcut keys for the two commands appear in the Current Keys window.
You may also wish to remove the menu commands and insert the AddIn commands in their place. To insert the new AddIn commands in the MenuBar, use the following steps:






















1. From the Visual C++ Tools menu, click Customize.
2. Click the File menu and then drag the Open command off of the File popup and release it.
3. Click the Project menu, click Add To Project and then drag the Files command off of the popup and release it.
4. In the Customize dialog box, select the Commands tab.
5. Select Add-ins from the Category list box.
6. Drag the OpenFile command to the File menu and drop it in the space vacated by the Open command.
7. Drag the AddFileToProject command to the Add To Project item on the Project menu and drop it in the space vacated by the Files command.

When the menus have been modified as above, it is not necessary to have the AddIn toolbar visible.

_M#]

아래의.. 댓글에 링크된 방법이 제일 좋을듯 합니다..^^

방법 4

 [Bug Fix] VC++ 6.0 Devshl.dll (at 0x5003eaed) 0xC0000005: Access Denied 오류 해결법 (NULL pointer reference)


 이 버그는 VC++ 6.0에서 File-Open을 클릭하거나, 프로젝트에서 Add File…을 클릭하면 발생하는 VC++ 6.0 Crash에 대한 부분입니다.


예전에 wz1054님이랑 넷미팅 중이였을 때, wz1054님도 같은 증상이 있던것으로 생각되는데, 저 역시 포맷 후에 XP SP3 무인설치로 깔아주니 같은 현상이 일어나네요. ( 게다가 커널 드라이버 역시 ntoskrnl.exe이 아닌 ntkrnlpa.exe로 wz1054님이랑 상황이 완전 비슷하다랄까… )

일단, MS 기술문서(KB)에도 해결책이 써져있습니다만, 미봉책적인 방법인데다가 해결이 안되는 경우도 있어서 글을 쓴겁니다. (MS 기술문서: http://support.microsoft.com/kb/231655)

MS 기술문서엔 아래 두가지 방법을 권고하네요.


1. 별도의 ToolBox Add-in 사용 ( 근데 이건 비추합니다.File-Open의 기능보다 너무 간소해서… 별로 쓰기가 싫은(?) )
2. SP4 이상(SP4~SP6)으로 Visual Studio 6.0을 패치한다. ( 제 컴퓨터에서는 SP6인데도 이런 증상이 일어나는군요. )

일단 이 문제는 컴퓨터에 너무 많은 Component Server(COM)들이 설치되어있어서 발생한다고 써져있었습니다. (근데 왜 과거에 쓰던 시스템에서는 많았는데도 잘됐을까… 쿨럭)

여튼, 직접 Debugger로 Reversing을 해보니까, 아래 코드가
문제였습니다.

0x5003eaed: repe cmps dword ptr [edi],dword ptr [esi]

edi가 0x00000000인 상태에서 Referencing을 하려니까 오류가 생긴것이였습니다.

이를 NOP으로 패치하고 그 밑에 여타 Jump Code를 crash가 발생 안하게끔 패치해주니,

정상 동작하였습니다. (단, File Format선택 콤보박스에 괴상한 문자 몇개 뜨는것쯤은 감수하셔야할듯)

패치 성공한 DLL파일은 아래에 있습니다.

위에 제시한 방법들로 성공하지 못하신 분들은, 아래 DLL 파일을 다운받으셔서

이를 C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\Bin에 덮어씌우시면 됩니다.
1094319508.dll

순서도의 종류 및 설명



순서도 종류 및 설명


































도형 유형 및 설명
도형 모양 수행의 시작/종료: 처리 과정의 시작과 끝입니다.
도형 모양 처리: 처리 과정의 한 단계입니다.
도형 모양 종속 처리: 이미 알려졌거나 이해한 처리 과정으로 순서도에서는 자세히 설명하지 않았습니다.
도형 모양 판단: 처리 과정에서 판단을 내려야 하는 지점입니다.
도형 모양 연결자: 순서도 내에서 상호 참조하거나 다른 처리 과정으로 안내하는 선입니다.
도형 모양 데이터: 받는 정보나 유포하는 정보와 같은 모든 종류의 입력 또는 출력입니다.
도형 모양 문서: 인쇄물처럼 사람들이 읽을 수 있도록 만들어진 것을 의미합니다.
도형 모양 지연: 처리 과정에서 기다리는 것을 의미합니다.
도형 모양 준비: 준비 단계를 의미합니다.


1. 순서도 (flow chart) → 알고리즘 또는 문제해결의 절차를 그림으로 알기 쉽게 나타낸 것.

→ 설계한 알고리즘을 객관적이며 쉽게 표현, 이해하기 위하여 기호를 사용.


2. 순서도의 종류


① 시스템 순서도 : 일의 처리과정을 전체적으로 상세하게 표현한 순서도


② 프로그램 순서도 : 컴퓨터로 처리가 가능한 부분을 단계적으로 표현한 순서도


 


3. 순서도에 쓰이는 기호


1) 터미널 : 순서도의 시작과 끝을 나타내는 기호2) 처리기호 : 값을 지정하거나 변경 또는 계산을 나타내는 기호3) 판단기호 : 조건을 판단하여 경로를 택하는 기호4) 인쇄기호 : 처리된 값을 인쇄하는 것을 나타내는 기호


4 순서도 작성법


1) 순서도는 “시작 단말 기호”를 시작으로 “끝 단말 기호”로 마친다.2) 기호와 기호사이는 흐름선으로 연결한다.3) 흐름선의 방향은 ↓ 위에서 아래로, → 왼쪽에서 오른쪽 (단,↱ 순환기호(Loop)같은 특별한 경우는 예외)4) 작업과정이 길거나 복잡하면 나누어 작성하고 연결자로 연결5) 값을 보관, 처리하기 위하여 변수를 사용


5. 순서도 구성요소


1) 변수(Variable) : 데이터[상수,변수,수식]를 기억 할 수 있는 기억공간 → 문자변수, 수치변수(정수형,실수형,상수)2) 상수(Constant) → 문자상수, 수치상수(정수형,실수형,상수)2) 상수(Constant) → 산술연산자([], **, */, +-), 관계연산자(=, ≠, <, >, >=, <=), 논리연산자(NOT, AND, OR)

윈도우 탐색기에서 AVI 파일 클릭시 오류나는 증상 해결

윈도우 탐색기에서 AVI 파일 클릭시 오류나는 증상 해결

이는.. AVI파일과 연결된 코덱이 잘못설치되어 있거나, 또는 정상적으로 연결되지 않아 탐색기에서 동영상 미리보기 기능이 작동시, 오류가 발생하는 것으로,

근본적인 해결책은 해당 코덱을 재설치 하거나, 제거/ 초기화 하는 방법이 있다.

그러나 유독 윈도우에서(탐색기 포함)만 오류나고, 곰이나, 기타 플레이어에서는 정상동작하는 경우, 윈도우의 동영상 미리보기 기능을 끄면 된다.

이는 다음의 명령어를 시작-실행에 입력하면 완료~

regsvr32 /u shmedia.dll
위의 기능은 탐색기에서 동영상 미리보기 기능을 제거하는 것이다.