Копирование массива VB6 AutoCAD

Я нахожусь в процессе переноса нашего сценария VBA AutoCAD на VB.NET, но наткнулся на предупреждение. VB.net 2010 предупредил меня, что этот код устарел и, вероятно, не будет работать с 64-битной версией.

Программа должна быть совместима с 64 из-за проблем с нашим файлом vba и AutoCAD 2012 и Windows 7 X64. Что мне нужно использовать вместо VB6.CopyArray?

If Flipline = True Then
        P1 = VB6.CopyArray(Endpoint)
        P2 = VB6.CopyArray(Beginpoint)
    Else
        P1 = VB6.CopyArray(Beginpoint)
        P2 = VB6.CopyArray(Endpoint)
    End If

person PandaNL    schedule 14.10.2011    source источник


Ответы (1)


Согласно документации MSDN для Support.CopyArray< /а>:

Тип данных Visual Basic 6.0 Variant больше не поддерживается в Visual Basic 2010. Функция CopyArray используется средствами обновления для копирования массива в массив Variant или из него.

Чтобы скопировать массив в Visual Basic 2010, используйте методы Clone, Copy или CopyTo класса Array.

Документация по Array.Clone

Если Endpoint является массивом, то:

P1 = Endpoint.Clone()
person crashmstr    schedule 14.10.2011
comment
Я запутался, как мне применить это к моему коду? Извините, я только начинаю vb.net - person PandaNL; 14.10.2011
comment
Я обновил свой ответ примером. Пример кода также есть в документации Array.Clone. - person crashmstr; 14.10.2011