相关疑难解决方法(0)

停止Visual Basic 6更改我的外壳

非常简单的问题,显然不可能找到一个合适的答案:我怎样才能使Visual Basic 6停止改变我的^ @#*变量套管!?!

我知道很多VB用户的一般意见是这个"功能"实际上非常有用,但我怀疑他们在任何源控制系统中都使用它很多.当您尝试与其他几个开发人员合作开展任何重要项目时,这绝对是一种感染.如果忽略,您会对文件(甚至没有实际代码更改的文件)产生数千个误报"更改",这些更改会污染修订历史记录,并且在某些情况下几乎不可能找到发生的实际更改.

如果你不忽略它(就像我的办公室,我们被迫实施"不需要更改案例"的政策),你花费的时间是你每次提交时的5倍,因为你必须小心地恢复VB的"修正" "在每个文件上,有时会恢复数百行以进行一行更改.

当然必须有一个设置,插件,黑客等可以删除这个不需要的"功能"?我愿意采取任何我能得到的方法,只要它不需要我挑选成堆的幻影差异.并预先解决了几个抱怨:不,我不能在我的差异工具中关闭案例检测,这不是重点.不,我们不能仅仅在全球范围内改变案例.我们正在与跨越多年开发的多个开发人员共同工作的数十万个LOC合作.从业务角度来看,同步是不可行的.最后:不,我们无法升级到VB.net或移植到另一种语言(尽可能多的我喜欢).

(是的,我现在只是有点恼怒.你能说出来吗?我道歉,但这花费了我的时间和我的公司资金,而且我觉得不可接受.)

vb6

61
推荐指数
4
解决办法
1万
查看次数

在VBA中声明长度为0的字符串数组-不可能吗?

真的不可能在VBA中声明0长度的数组吗?如果我尝试这样做:

Dim lStringArr(-1) As String
Run Code Online (Sandbox Code Playgroud)

我收到一个编译错误,说范围没有值。如果我试图欺骗编译器并在运行时像这样重做:

ReDim lStringArr(-1)
Run Code Online (Sandbox Code Playgroud)

我收到下标超出范围的错误。

我已经略微改变了上面的内容,但是没有运气

Dim lStringArr(0 To -1) As String
Run Code Online (Sandbox Code Playgroud)

用例

我想将变量数组转换为字符串数组。变体数组可能是空的,因为它来自字典的Keys属性。keys属性会返回一组变体。我想要在代码中使用字符串数组,因为我有一些函数可以处理要使用的字符串数组。这是我正在使用的转换函数。由于lMaxIndex = -1,这将导致下标超出范围错误:

Public Function mVariantArrayToStringArray(pVariants() As Variant) As String()
    Dim lStringArr() As String
    Dim lMaxIndex As Long, lMinIndex As Long
    lMaxIndex = UBound(pVariants)
    lMinIndex = LBound(pVariants)
    ReDim lStringArr(lMaxIndex)
    Dim lVal As Variant
    Dim lIndex As Long
    For lIndex = lMinIndex To lMaxIndex
        lStringArr(lIndex) = pVariants(lIndex)
    Next
    mVariantArrayToStringArray = lStringArr
End Function
Run Code Online (Sandbox Code Playgroud)

哈克

返回包含一个空字符串的单例数组。注意-这不是我们想要的。我们想要一个空数组-这样遍历它就像什么都不做。但是包含一个空字符串的单例数组通常会起作用,例如,如果我们以后想将所有字符串连接到字符串数组中。

Public Function mVariantArrayToStringArray(pVariants() As Variant) As String()
    Dim lStringArr() …
Run Code Online (Sandbox Code Playgroud)

arrays vba zero

5
推荐指数
1
解决办法
369
查看次数

标签 统计

arrays ×1

vb6 ×1

vba ×1

zero ×1