Здравствуйте, Vi2, Вы писали:
Vi2>На самом деле ты проверил не хранение, а способы передачи строки в подпрограммы
на самом деле одно (передача) является следствием другого (хранение)
И как ещё по другому объяснить
разные адреса ?
=================================================================================================
ByVal str 0x001E8384 41 42 43 00 00 00 31 00 38 00 34 00 00 00 00 00 |ABC 1 8 4 |
ByVal strptr(str) 0x001E7E74 41 00 42 00 43 00 00 00 6C 00 00 00 09 00 00 00 |A B C l |
в конце концов можно написать TestVarUni(str) и получить кашу типа ??? А можно ... /возможное обсуждение способов передачи параметров пропущено/
Vi2>Работа со строками отличается от других типов особенно в массивах ...
А это уже заморочки с SAFEARRAY при приёме [интересно, будет когда нибудь значок "стало плохо" ?

]
ЗЫ извиняюсь, но в предыдущем посте я пропустил
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As Any, pSource As Any, ByVal dwLength As Long)