통합검색
· 마을서비스란?  · 포럼마을  · 일반마을  · 테마마을  · 마을랭킹  · 활동왕
· 덱스퍼트란?  · TECBOX   · PRSBOX   · 이용안내  
· DEXT제품군  · 솔루션베이  · S/W & ESD 컴포넌트
· 프로그램베이
· LiveSeminar  · LiveConference
Visual C++ 포럼마을 입니다.
  마을등급 Visual C++   이 마을은 포럼마을 입니다이 마을은 자유가입제 마을 입니다 마을소개 페이지로 이동 전입신청
마을촌장촌장 나성훈 주민 1573 since 2006-12-29
우리마을 공지사항
질문&답변
강좌&팁
자유게시판
자료실
앨범
개인게시판
마을 게시판
등록된 마을 게시판이
없습니다.
랑데브 게시판
칼럼 게시판
개발자 고충상담
Dev Talk
자유토론방
벼룩시장
재나미 우스개
구인/프로젝트 정보
사람인 채용 게시판
  고객지원 게시판
마이 데브피아
 나의 e-Money 내역
 활동왕 My Page
 스크랩한 게시글보기
 쪽지관리
 주소록관리

 자료실
 프로젝트 변경기2  | VC++ 일반 2016-05-12 오후 3:37:35
 ilovecsm  ilovecsm님께 메시지 보내기ilovecsm님을 내 주소록에 추가합니다.ilovecsm님의 개인게시판 가기 번호: 32378 추천:1  / 읽음:3,501

1. 배경

꽤 오래전에 프로젝트 변경기라는 프로그램을 게시판에 올린 적이 있었습니다.

소스 공개를 감안한 것이라, 기본적인 윈도우 컨트롤만을 사용했기 때문에, 제가 쓰면서도 조금 불편해서

상업용 UI 툴인 Codejock 를 입히고, 약간의 기능을 보완했습니다.

 

2. 소개

새로운 프로그램을 만들 때, 첫 실행까지는 많은 코딩 작업이 필요합니다.

많은 경우는 기존에 만들어놓은 프로그램을 가지고 약간씩 수정하면서 작업하는게 시간을 줄일 수 있습니다.

프로젝트 변경기는 이러한 경우에 필요한 프로그램입니다.

기존의 프로젝트에서 사용된 프로젝트 이름, 파일명, 클래스등을 새로운 프로젝트에 맞게 변경하며, 변경이 끝난 후에는 컴파일이

가능한 상태가 됩니다.

프로젝트 변경은 기존의 프로젝트 이름을 새로운 프로젝트 이름으로 변경하는, 일종의 문자열 변환입니다.

만일 기존의 프로젝트가 Str 이었고, 새로운 프로젝트가 Text 였다면, Str 문자열을 가진 CString 클래스는 CTexting 로 바뀌게 되는데,

CString 은 MFC 의 기본 클래스이기 때문에, 이 경우 문제가 생기게 됩니다.

따라서 기존의 프로젝트는 변경되도 문제가 생기지 않는 이름이어야 합니다.

 

3. 설치

첨부된 프로그램을 적당한 곳에 복사합니다.

자주 사용한다면, 폴더를 하나 만들고 그 안에다 복사하는게 좋겠습니다.

Visual C++ 6, 2008, 2012 상에서 검증을 했는데, 아마 다른 버전에서도 문제가 없을 겁니다.
 

4. 사용 방법

처음 프로그램을 실행하면, 아래 그림의 시작 화면이 표시됩니다.

이 상태에서 '파일' 버튼을 눌러서 원하는 프로젝트를 선택합니다.

[그림 1. 시작 화면]

 

보통 프로젝트 파일은 확장자가 sln 인 파일인데, VC6 같은 경우는 dsp 파일입니다.

주의할 점은 프로젝트 변경 과정에서 파일이 바뀌기 때문에, 백업본을 따로 만든 후에 프로젝트를 변경하는 것을 추천합니다.

[그림 2. 프로젝트 선택 화면]

 

개인적으로는 이 방법보다는, 탐색기에서 변경할 프로젝트 파일을 프로젝트 변경기 화면에다 끌어다 놓는 방법을 선호하는 편입니다.

좀 더 직관적이기 때문입니다.

[그림 3. 드래그 & 드롭을 이용한 프로젝트 선택]

 

프로젝트 파일이 로드되면, 아래 그림처럼 현재 프로젝트 이름과 과 GUID 가 표시됩니다.

이번에는 변경할 새 프로젝트 이름을 입력합니다.

참고로 VC6 같은 경우는 프로젝트 파일에 GUID 가 없기 때문에, 빈칸으로 표시됩니다.

만일 GUID 를 변경하고 싶으면, 화면 상단의 'GUID' 버튼을 누릅니다.

[그림 4. 정상적으로 프로젝트가 로드된 경우]

 

제 경우는 특정 숫자로 시작하는 GUID 를 선호합니다.

만일 '0000' 으로 시작하는 GUID 를 원하면, Mask 에 '0000' 을 입력한 후 'GUID 생성' 버튼을 눌러서 새로운 GUID 를 만듭니다.

Mask 에 아무 것도 입력하지 않고 'GUID 생성' 버튼을 눌렀을 때는 랜덤하게 생성됩니다.

원하는 GUID 가 만들어졌으면, '적용' 버튼을 누른 후 화면을 닫습니다.

[그림 5. GUID 변경 화면]

 

설정이 끝났으면, 마지막으로 '변환' 버튼을 눌러서 프로젝트 변환을 시작합니다.

[그림 6. 새로운 GUID 를 선택한 화면]

 

정상적으로 변경이 끝나면, 프로젝트 변경이 완료되었다는 메세지가 화면 하단에 표시됩니다.

[그림 7. 프로젝트 변경이 정상적으로 완료된 경우]

 

프로젝트 변경 과정에서 에러가 발생하는 경우는, 해당 내용이 에러 화면에 표시됩니다.

참고로 아래의 에러는 'MainFrm.cpp' 파일을 다른 프로그램이 편집 중이라서, 파일 변경이 불가능하여 발생되었습니다.

이 상태에서, 문제가 된 파일을 닫은 후 다시 '변환' 버튼을 누르면 'MainFrm.cpp' 파일에 대해서 변환이 이루어집니다.

[그림 8. 프로젝트 변경이 실패한 경우]

 

[코멘트] 좋음
2016-05-28 21:49
 win3200  win3200님께 메시지 보내기win3200님을 내 주소록에 추가합니다.win3200님의 개인게시판 가기 
예전에 프로젝트 명 바꾸는거 있었는데...
저장 취소
[코멘트] 좋음
2017-06-05 16:16
 imacess  imacess님께 메시지 보내기imacess님을 내 주소록에 추가합니다.imacess님의 개인게시판 가기 
감사합니다.
이 프로그램을 많이 사용하지는 않습니다.
한번 사용하였는데 많은 시간을 절약할수 있었습니다.
저장 취소
코멘트쓰기
  좋음   놀람   궁금   화남   슬픔   최고   침묵   시무룩   부끄럼   난감
* 코멘트는 500자 이내(띄어쓰기 포함)로 적어주세요.
목록 보기   지금 보고 계시는 글을 회원님의 my Mblog >> 스크랩에 넣어두고 다음에 바로 보실 수 있습니다.  
회사소개  |   개인정보취급방침  |  제휴문의  |   광고문의  |   E-Mail 무단수집거부  |   고객지원  |   이용안내  |   세금계산서
사업자등록번호 안내: 220-81-90008 / 통신판매업신고번호 제 2017-서울구로-0055호 / 대표: 홍영준, 서민호
08390, 서울시 구로구 디지털로32길 30, 1211호 / TEL. 02_6719_6200 / FAX. 02-6499-1910
Copyright ⓒ (주) 데브피아. All rights reserved.