Microsoft MVP성태의 닷넷 이야기
VS.NET IDE: 37. devenv.exe를 이용한 Command Line 컴파일 [링크 복사], [링크+제목 복사],
조회: 23100
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

그동안 진행해 오던 사내 프로젝트가 다소 복잡해 지면서, 빌드도 다양하게 지원을 하는 식으로 변경이 되었습니다.

- 시간 만료되는 버전
- 사이트 제한 버전
- 무제한 상용 버전

과 같이 3가지가 있어야 하는데요. 문제는, 위의 버전들을 각각 수작업으로 상수 변경하는 식으로 컴파일 하고 cab 파일 만들고 인스톨 본을 제작하다 보니 꽤나 실수가 많이 나오게 되었습니다.

아무래도, 이러한 것들을 자동으로 만들어 주는 "빌드 머신"을 두고, 명령어 하나만 입력하면 자동으로 모든 버전의 컴파일과 함께 배포까지 되도록 하는 것을 만드는 것이 좋겠다는 판단이 들더군요. ^^;

당연히... 첫 번째 순서가 ... 명령행에서 컴파일을 할 수 있느냐를 봐야 했습니다.
예전에는 .mak 파일을 이용해서 했었는데. 지금도 그걸 만져야 하나 싶어서 귀찮은 마음이... ^^; 생겼습니다. 혹시나 싶은 마음에 검색을 해 보니... ^^ 오... devenv.exe (보통 VS.NET IDE 띄울 때 실행시키죠) 자체에서, 이미 IDE 환경에서 만들어 두었던 Solution(.sln) / Project(.csproj, .vcproj) 파일을 입력 파라미터로 해서 컴파일을 그대로 할 수가 있네요. ^^

보다 자세한 사항은 다음의 URL을 참조하십시오.
https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2015/ide/reference/build-devenv-exe

... ^^; 벌써 아셨던 분들도 많으시겠지만.








[최초 등록일: ]
[최종 수정일: 6/26/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2006-03-21 06시11분
VCBuild.exe도 VS.NET 2005에서 새로 추가되었습니다.

Visual C++ Concepts: Building a C/C++ Program - VCBUILD Reference
 - Visual Studio 2005 Retired documentation
; https://www.microsoft.com/en-us/download/details.aspx?id=55984
kevin25

... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
13198정성태12/18/202214061.NET Framework: 2080. C# - Microsoft.XmlSerializer.Generator 처리 없이 XmlSerializer 생성자를 예외 없이 사용하고 싶다면?파일 다운로드1
13197정성태12/17/202213580.NET Framework: 2079. .NET Core/5+ 환경에서 XmlSerializer 사용 시 System.IO.FileNotFoundException 예외 발생하는 경우파일 다운로드1
13196정성태12/16/202214322.NET Framework: 2078. .NET Core/5+를 위한 SGen(Microsoft.XmlSerializer.Generator) 사용법
13195정성태12/15/202214541개발 환경 구성: 655. docker - bridge 네트워크 모드에서 컨테이너 간 통신 시 --link 옵션 권장 이유
13194정성태12/14/202214346오류 유형: 833. warning C4747: Calling managed 'DllMain': Managed code may not be run under loader lock파일 다운로드1
13193정성태12/14/202214891오류 유형: 832. error C7681: two-phase name lookup is not supported for C++/CLI or C++/CX; use /Zc:twoPhase-
13192정성태12/13/202214864Linux: 55. 리눅스 - bash shell에서 실수 연산
13191정성태12/11/202216430.NET Framework: 2077. C# - 직접 만들어 보는 SynchronizationContext파일 다운로드1
13190정성태12/9/202218459.NET Framework: 2076. C# - SynchronizationContext 기본 사용법파일 다운로드1
13189정성태12/9/202217868오류 유형: 831. Visual Studio - Windows Forms 디자이너의 도구 상자에 컨트롤이 보이지 않는 문제
13188정성태12/9/202217352.NET Framework: 2075. C# - 직접 만들어 보는 TaskScheduler 실습 (SingleThreadTaskScheduler) [1]파일 다운로드1
13187정성태12/8/202216805개발 환경 구성: 654. openssl - CA로부터 인증받은 새로운 인증서를 생성하는 방법 (2)
13186정성태12/6/202214668오류 유형: 831. The framework 'Microsoft.AspNetCore.App', version '...' was not found.
13185정성태12/6/202215628개발 환경 구성: 653. Windows 환경에서의 Hello World x64 어셈블리 예제 (NASM 버전)
13184정성태12/5/202213496개발 환경 구성: 652. ml64.exe와 link.exe x64 실행 환경 구성 [1]
13183정성태12/4/202213363오류 유형: 830. MASM + CRT 함수를 사용하는 경우 발생하는 컴파일 오류 정리 [1]
13182정성태12/4/202215228Windows: 217. Windows 환경에서의 Hello World x64 어셈블리 예제 (MASM 버전)
13181정성태12/3/202213976Linux: 54. 리눅스/WSL - hello world 어셈블리 코드 x86/x64 (nasm)
13180정성태12/2/202215214.NET Framework: 2074. C# - 스택 메모리에 대한 여유 공간 확인하는 방법파일 다운로드1
13179정성태12/2/202213765Windows: 216. Windows 11 - 22H2 업데이트 이후 Terminal 대신 cmd 창이 뜨는 경우
13178정성태12/1/202214899Windows: 215. Win32 API 금지된 함수 - IsBadXxxPtr 유의 함수들이 안전하지 않은 이유파일 다운로드1
13177정성태11/30/202215472오류 유형: 829. uwsgi 설치 시 fatal error: Python.h: No such file or directory
13176정성태11/29/202212241오류 유형: 828. gunicorn - ModuleNotFoundError: No module named 'flask'
13175정성태11/29/202216906오류 유형: 827. Python - ImportError: cannot import name 'html5lib' from 'pip._vendor'
13174정성태11/28/202213368.NET Framework: 2073. C# - VMMap처럼 스택 메모리의 reserve/guard/commit 상태 출력파일 다운로드1
13173정성태11/27/202214406.NET Framework: 2072. 닷넷 응용 프로그램의 스레드 스택 크기 변경
... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...