vb6 – 停止Visual Basic 6更改我的套管

vb6 – 停止Visual Basic 6更改我的套管,第1张

概述非常简单的问题,显然是不可能找到一个体面的答案:我如何使Visual Basic 6停止更改我的^ @#*变量外壳! 我知道许多VB用户的一般观点是,这个“功能”实际上是相当有帮助,但我怀疑他们使用它与任何源控制系统。这是绝对INFURIATING当你试图与其他几个开发人员在任何重要规模的项目进行协作。如果忽略,您将对您的文件(即使没有实际的代码更改的文件)产生数千个假阳性“更改”,这会污染修订历 非常简单的问题,显然是不可能找到一个体面的答案:我如何使Visual Basic 6停止更改我的^ @#*变量外壳!

我知道许多VB用户的一般观点是,这个“功能”实际上是相当有帮助,但我怀疑他们使用它与任何源控制系统。这是绝对INFURIATING当你试图与其他几个开发人员在任何重要规模的项目进行协作。如果忽略,您将对您的文件(即使没有实际的代码更改的文件)产生数千个假阳性“更改”,这会污染修订历史记录,并在某些情况下几乎不可能找到发生的实际更改。

如果你不忽略它(像我的办公室,我们被迫实施一个“不必要的情况改变”政策),你花费5倍的时间你通常在每次提交,因为你必须仔细恢复VB的“修正“对每个文件,有时还原数百行以放入一行更改。

当然必须有一个设置,插件,黑客等,可以删除这个不需要的“功能”?我愿意采取任何我可以得到的方法,只要它不需要我通过成堆的幽灵差异。并在前面挤压几个投诉:不,我不能关闭病例检测在我diff工具,这不是重点。不,我们不能只在全球范围内做出更改。我们正在与成千上万的LOC正在与多个开发人员合作开发多年的开发。从业务角度来看,同步是不可行的。最后:不,我们不能升级到VB.net或端口到另一种语言(尽可能多的我喜欢)。

(是的,我只是一点点小便,你能告诉我吗?我的道歉,但这是花费我的时间和我的公司的钱,我不觉得可以接受)。

这里是一个真实的世界场景,我们如何解决它的我们的350k LOC VB6项目。

我们使用Janus GrID,在某些时候,引用JsColumn的DefaultValue属性的所有代码行都变为defaultValue。这是一个调试整个IDE滋扰的机会。

我发现,刚刚添加了对MSXML的引用,现在IDE在Janus GrID typelib之前拾取ISchemaAttributes的defaultValue属性。

经过一些实验,我发现IDE收集“注册”标识符按照以下顺序:

>从项目引用库/项目 – >引用按它们列出的顺序
>控件从Project->组件(以未知顺序)
>源代码

所以我们做的简单的修复是创建一个虚拟类/接口与方法,我们适当的套管。因为我们已经有一个项目范围的typelib,我们引用每个项目之前任何其他typelib,这是无痛的做。

这里是我们的IUcsVbIntellisenseFix接口的IDL的一部分:

[  odl,uuID(<<guID_here>>),version(1.0),dual,nonextensible,oleautomation]interface IUcsVbIntellisenseFix : Idispatch {    [ID(1)] HRESulT DefaultValue();    [ID(2)] HRESulT Selector();    [ID(3)] HRESulT Standalone();    ...}

我们为IUcsVbIntellisenseFix添加了很多方法,其中一些方法以枚举项目命名,我们用来拼写错误以及我们想要修复的内容。在每个项目引用的公共库(ActiveX DLL)中使用简单的VB类也是一样。

这样我们的源代码在某种程度上收敛到适当的套管,因为在检出时,IDE实际上固定的套管根据IUcsVbIntellisenseFix套管。现在我们不能拼写枚举,方法或属性,即使我们试图。

总结

以上是内存溢出为你收集整理的vb6 – 停止Visual Basic 6更改我的套管全部内容,希望文章能够帮你解决vb6 – 停止Visual Basic 6更改我的套管所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1279127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存