大家帮帮,如何在CB工程中增加多个版本的编译开关,

MrTangShunHai 2004-09-16 02:32:01
一个产品软件,有多个版本(如:V1.1、V1.2),请问怎样在程序中增加多个版本的编译开关。
小弟拜求拉!!!!!!!!!
...全文
115 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
MrTangShunHai 2004-09-17
  • 打赏
  • 举报
回复
Big_foolcat(大笨猫)高手先生:
我还有个问题要麻烦你,就是,我想为这个产品做一个在线帮助,即按“F1”获得当前操作的在线帮助。其帮助文件格式是.chm的,你帮我把它的实现过程和实现语句(C++builder)详细写出来。小弟在此拜谢拉!!!!!!!!!!!!
MrTangShunHai 2004-09-17
  • 打赏
  • 举报
回复
Big_foolcat(大笨猫)高手先生:
我还有个问题要麻烦你,就是,我想为这个产品做一个在线帮助,即按“F1”获得当前操作的在线帮助。其帮助文件格式是.chm的,你帮我把它的实现过程和实现语句(C++builder)详细写出来。小弟在此拜谢拉!!!!!!!!!!!!
MrTangShunHai 2004-09-17
  • 打赏
  • 举报
回复
Big_foolcat(大笨猫)先生:
非常感谢你的回复,帮我解决了疑难。我现在就结帖。
我还有个小小的要求不知你能否满足我。就是,我以后可能还会遇到很多困难,还需要你的帮助,我想要你的邮箱地址或者QQ号码,以便于急时向你求教,我的邮箱和QQ号码分别是:tsh_791124@163.com、 165659563
Big_foolcat 2004-09-16
  • 打赏
  • 举报
回复
早些时候我们实现多语言版的方式我给你个大概的样子:

文件安排:
Project/Language/Language.h
Project/Language/GB2312/Language.h
Project/Language/ENGLISH/Language.h

文件内容:
Project/Language/Language.h
#ifndef LanguagePack_h
#define LanguagePack_h

#include "GB2312/Language.h"
#include "ENGLISH/Language.h"

#endif

Project/Language/GB2312/Language.h
#ifndef GB2312_Language_H
#define GB2312_Language_H

#ifdef USE_GB2312
PCTSTR SomeMessage = "简体中文";
#endif

#endif

Project/Language/ENGLISH/Language.h
#ifndef ENGLISH_Language_H
#define ENGLISH_Language_H

#ifdef USE_ENGLISH
PCTSTR SomeMessage = "English.";
#endif

#endif


在发布的时候只需要在工程选项中(Project->Options->Directories/Conditionals->Conditional defines)加入相应的定义USE_GB2312 or USE_ENGLISH

你要限制功能话无非就是在功能实现函数的定义中加入预编译指令即可:

void Function()
{
#ifdef PRO
// 实现PRO版的功能
#endif

#ifdef STD
// 实现标准版的功能
#endif

...
}

不过这样做说明你的功能模块划分不够清楚,建议先理随了功能模块后把不同版本的实现抽象出来再建立不同的工程用CVS等来管理。
}
MrTangShunHai 2004-09-16
  • 打赏
  • 举报
回复
Big_foolcat(大笨猫)先生: 你说得很对,就是我想知道的答案,麻烦你帮我详细讲解下,我定会结帖以答谢你
Big_foolcat 2004-09-16
  • 打赏
  • 举报
回复
版本控制最好用CVS、VSS...

你说的这个东东是不是打算发布不同的版本(功能随版本不同而不同?),如果是这样也可以用宏来实现,早些年发布多语言版我们用过这样的方式。
MrTangShunHai 2004-09-16
  • 打赏
  • 举报
回复
我是想在程序里面加入一些编译开关语句,以适用于不同的用户需求,我记得在VC6.0是用宏实现的,但不知道在CB6.0怎样实现,有哪位大哥帮我解燃眉之急!!!!!!!!!!
我不懂电脑 2004-09-16
  • 打赏
  • 举报
回复
建议你用版本控制工具管理,如vss、cvs

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧