약 8 개의 개별 프로젝트가 포함 된 솔루션이 있으며 전체 솔루션의 릴리스 빌드를 수행 할 때마다 해당 버전 문자열이 각 프로젝트의 바이너리 출력은 동일합니다. 프로젝트 리소스 파일의 VS_VERSION_INFO 섹션을 쉽게 동기화 할 수 있습니까?Visual Studio C++ (Win32) 프로젝트의 버전 리소스 동기화
4
A
답변
7
나는 이것이 당신이 가고 싶은 방법은 모르겠어요
하지만 .rc
파일을 포함 할 수, 당신은
버전 블록에 #define
값을 사용 헤더 파일에 버전 번호를 정의 할 수 있습니다
#define VER_MAJOR 8
#define VER_MINOR 00
#define VER_BUILD_HI 00
#define VER_BUILD_LO 021
#define VER_FLAGS VS_FF_PRERELEASE
// The Binary form of the version numbers
#define VER_FILE VER_MAJOR, VER_MINOR, VER_BUILD_HI, VER_BUILD_LO
#define VER_PRODUCT VER_MAJOR, VER_MINOR, 0, 0
#define VER_STR(arg) #arg
// The String form of the version numbers
#define VER_FILE_STRING VALUE "FileVersion", "8.0\0"
#define VER_PRODUCT_STRING VALUE "ProductVersion", "8.0\0"
하면 VS_VERSION_INFO
블록을 사용
#include "bversion.h" //#define values in here
VS_VERSION_INFO VERSIONINFO
FILEVERSION VER_FILE
PRODUCTVERSION VER_PRODUCT
FILEFLAGSMASK 0x2fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "\0"
VALUE "CompanyName", "XXX\0"
VALUE "FileDescription", "YYY\0"
VER_FILE_STRING
VALUE "InternalName", "ZZZ\0"
VALUE "LegalCopyright", "© 2009 PDQ.\0"
VALUE "LegalTrademarks", "AAA\0"
VALUE "OriginalFilename", "BBB.EXE\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "CCC\0"
VER_PRODUCT_STRING
VALUE "SpecialBuild", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
모든 프로젝트에서 하나의 헤더 파일을 참조하고 각 빌드 전에 변경하십시오.
1
우리는 FinalBuilder를 빌드에 사용하고 파일을 텍스트 파일로 가져 와서 올바른 버전 정보로 업데이트 할 수있게했습니다.
1
이것을 구현하는 가장 간단한 방법은 모든 리소스 파일에 대해 일종의 스크립트 (sed/awk, PowerShell 등)를 호출하고 적절한 위치에 올바른 값을 떨어 뜨리는 미리 작성 단계를 수행하는 것입니다. SVN을 사용한다면, TortoiseSVN 배포판의 SubWCRev가이 조각에도 사용될 수 있으며 저장소의 버전 번호를 버전 문자열로 자동 사용할 수 있습니다.
0
ResourceLib을 사용하여 코드를 작성하거나 a build process that does it for you을 사용할 수 있습니다.
관련 문제
- 1. C# 및 Visual Studio 2008의 리소스 사용
- 2. C# 프로젝트의 리소스 사용
- 3. Visual Studio 리소스
- 4. Visual Studio 버전 용 매크로
- 5. Win32 동기화
- 6. Visual Studio 프로젝트의 이진 종속성
- 7. Visual Studio 버전 주류
- 8. 리소스 파일을 사용하는 Visual Studio
- 9. Visual Studio 설치 프로젝트의 응용 프로그램 폴더에 버전 번호 추가
- 10. 임베디드 리소스 편집 (Visual Studio)
- 11. Visual Studio 2008 SPI 버전
- 12. Win32 리소스 편집기 라이브러리?
- 13. Visual Studio 2010 UML 리소스
- 14. Visual Studio - 리소스 파일 공유
- 15. 부스트 링크, Visual Studio 및 버전 관리
- 16. Visual Studio 2005 C++에서 파일 버전 번호 설정
- 17. Visual Studio 용 MFC 버전
- 18. Visual Studio 2005가 최신 버전
- 19. Visual Studio 컴파일러 버전 변경
- 20. Visual Studio 버전 간 차별화
- 21. Visual Studio 데이터베이스 버전 GDR의 IsTornPageProtectionOn
- 22. Visual Studio 2008에서 C++ Win32 프로젝트를 .exe 파일로 컴파일
- 23. Visual Studio 2008을 사용하는 C++/CLI 프로젝트의 ClickOnce 배포
- 24. Visual Studio Addin - Name \ C++ 프로젝트의 바이너리 경로 가져 오기?
- 25. 버전 관리 : Visual Studio Express 무료 사용
- 26. SharePoint 프로젝트의 디자인보기 Visual Studio 2010
- 27. Visual Studio 추가 기능 프로젝트의 WPF 양식
- 28. visual studio 설치 프로젝트의 dos 명령
- 29. Visual Studio 프로젝트의 이름을 바꾸는 방법?
- 30. Visual C++ 2008 Express 프로젝트의 프로세스 빌드