
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
06.12.2004, 12:52:01
|
|||
|---|---|---|---|
|
|||
Any vs. Variant - в чем разница? |
|||
|
#18+
Добрый день! Есть декларирование процедуры вида: Declare Function PEConvertPFInfoToVInfo Lib "\Program Files\Common Files\Crystal Decisions\2.0\bin\crpe32.dll" ( ByVal Value As Any , ByVal valueType%, valueInfo As PEValueInfo) As Integer Когда запускаю модуль, в котором используется это описание, VB плюется, сообщая, что вместо Any нужен "Expecting a valid data type (eg. Integer)" Если тип Any заменить на Variant , то все работает. В чем могут быть осложнения при такой замене и почему VB ругается, не подскажете? Спасибо! Юрий. Кто знает жизнь, тот не торопится... Удачи на дорогах! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.12.2004, 12:41:52
|
|||
|---|---|---|---|
|
|||
Any vs. Variant - в чем разница? |
|||
|
#18+
DankovДля Any VB не имеет информации о размере и не знает каким образом поместить это значение в стэк для передачи в DLL. А Variant - это тип известный с известным размером и VB знает как ее помещать в стэк. Вот если бы был не ByVal, а ByRef для Any, то VB бы не ругался, так как тогда в стэк помещается просто указатель, размер которого прекрасно известен. Код: plaintext 1. Спасибо за разъяснения... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=60&tablet=1&tid=2168480]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
38ms |
get tp. blocked users: |
2ms |
| others: | 214ms |
| total: | 364ms |

| 0 / 0 |
