Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi > VB. Что не правильно? Проблемы с переводом кода 
:(
    Опции темы
Гость_Михаил
  Дата 6.11.2004, 17:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вопрос тем, кто знаком с Delphi и VB.
Есть описание следующих структур на Delphi:

//----------------------------------------------
TLine = Record
Attr: byte;
Line: string[17];
end;

TTitle = record
pos: integer;
lines: array [1..2] of TLine;
end;

TBottom= record
pos: integer;
lines: array [1..2] of TLine;
end;
var
Title1: TTitle;
Bottom1: TBottom;
//----------------------------------------------

Перевожу в VB:

'------------------------------------------------
Public Type TLine
Attr As Byte
Lin(16) As Byte 'вместо строки заполняется массив значениями asc() строки
End Type

Public Type TTitle
pos As Integer
lines(1) As TLine
End Type

Public Type TBottom
pos As Integer
lines(1) As TLine
End Type

Global Title1 As TTitle
Global Bottom1 As TBottom
'-------------------------------------------------

После заполнении переменных Title1, Bottom1 - указатели на них передаются во внешнюю функцию, объявленную как:
VB: Declare Function func Lib "lib.dll" (ByVal T As Long, ByVal B As Long) As Integer
Delphi: function func(t: pointer;b: pointer): integer;stdcall;external 'lib.dll;
Сам вызов:
В Delphi: func(@Title1,@Bottom1)
В VB: func(VarPtr(Title1),VarPtr(Bottom1))

Результат: Вызов в VB работает не правильно. Функция вызывается, но данные, которые в нее передаются обрабатываются неверно. Есть подозрение, что структуры передаваемые в функции различаются, но как?
Помогите кто может, уже неделю с ней парюсь.
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0388 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.