2

我正在尝试为我的 Windows C++ 应用程序创建一个 About 框。在 Visual Studio 2008 中,我使用对话框编辑器来设计对话框。我希望关于框在静态标签中显示应用程序的版本。

我可以将版本硬编码到对话框中,存储在一个.rc文件中,但是我必须记住在多个地方更新版本。

我的应用程序版本是#defined in version.has APPLICATION_VERSION。可以说服资源编辑器将

#include "version.h"

.rc文件的顶部,所以我可以访问该APPLICATION_VERSION符号。

但是,我无法在对话框编辑器中使用此符号。我可以.rc手动编辑文件,用符号替换硬编码的版本字符串APPLICATION_VERSION。在我再次在对话框编辑器中编辑对话框之前,它工作正常:.rc从对话框编辑器保存后,符号被其当前值覆盖。

当然,我可以将版本标签设置为一些虚拟文本,当我收到时覆盖该文本WM_INITDIALOG,但这感觉非常笨重且不必要。是否有任何其他解决方法可以让我将应用程序版本保存在一个地方?

4

1 回答 1

0

我这样做的方法是将资源放在带有.rc2扩展名的单独文件中,然后#include将其放入.rc文件中(就像您对version.h. 然后,我.rc2使用普通文本编辑器而不是 Visual Studio 资源编辑器来编辑文件。

该系统对于资源来说并不算太糟糕VERSIONINFO,这就是我使用它的目的,但我可以看到它对于对话资源来说会更加痛苦。我很想听听更好的方法,但我不知道。

于 2009-08-30T16:17:36.523 回答