您是否应该在每次构建主应用程序时构建组件

时间:2009-10-06 04:36:30

标签: vb6

我们已经开始使用Final Builder为我们的vb6和.net项目创建构建。我们还使用Visual Source Safe来管理我们的源代码。我们的一些vb6 exe依赖于某些ocx,因此特定的vb6 exe可能需要特定版本的ocx。

问题是,我们的exe项目的最终构建器脚本是否也会重新构建ocx项目,或者更简单地拉动已编译的ocx的特定版本。我担心的是,其他开发人员可能已经破坏了ocx的构建(或创建了一个bug),这可能会破坏我们正在尝试构建的exe。此外,重新构建ocx项目将导致相同版本的ocx但具有不同的日期,如果出现dllhell(ocx hell)问题,则会导致混淆。

干杯, 麦克

2 个答案:

答案 0 :(得分:2)

在ocx和activex dll之间构建和维护应用程序没有区别。 ocx应该使用二进制兼容性并成为编译过程的一部分。

然而,这是一般规则。你可能有一些很少改变的组件。在我自己的VB6应用程序中,我有一些组件驻留在我的参考层次结构的底层,很少得到更新。他们最多可以每年更新一次或两次。有些人现在已经好几年了。

但根据您的描述,听起来控件仍在修改中。所以我怀疑第二种情况适用。

最后用你最好的判断。

答案 1 :(得分:0)

有两种方法可以使用OCX / DLL:代码可重用性与过大项目的碎片化。

那些重复使用的内容对于构建,构建和重建来说是荒谬的,并且几乎从不应该进行自定义以适应新的应用程序。这些是你的皇冠上的宝石,大多数人都没有能力修改它的来源。它们是贵组织“图书馆作家”的领域,因为它们就是它们:图书馆。

如果你只是拥有庞大的,单片的,非自行的应用程序,你可能需要走另一条路线。然后OCX和DLL简单地成为“模块”概念的尴尬扩展。这就是我们拥有项目组的原因。

您的图书馆用户不应该摆弄图书馆。我相信他们都希望自己能够“确保他们达到最新状态并保持高效”,但这完全是一场不同的辩论。