Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

djdtyfhu



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Определение функции в Фортране:

Код:
subroutine CALL_READ_STRING(pa_string,N_File,Name_REC)
!   !DEC$ ATTRIBUTES stdcall,reference :: CALL_READ_STRING   не использую, а может надо?
!   !DEC$ ATTRIBUTES VALUE :: Name_Rec
   !DEC$ ATTRIBUTES DLLEXPORT :: CALL_READ_STRING
 
   CHARACTER*4 string(4,250)
   character(*) N_File
   CHARACTER*8 Name_REC
 
   pointer(pa_string,string)                     ! присваиваю указатель на внешнюю структуру данных (из Delphi)
   
   OPEN(8,FILE=N_File,ACCESS='DIRECT',status='old',RECL=4000)
   CALL FREADC(8,Name_REC,string)                ! читаю данные в string
end subroutine CALL_READ_STRING

 
В Delphi описал внешнюю функцию:
 

Код:
procedure CALL_READ_STRING(str: pstring_type; namefile: pchar; len: integer; name_rec: pchar; len2:integer); stdcall; external 'DLL_GEFEST.dll';

 
str - это pa_string в Фортране
namefile - это N_File в Фортране
len - длина имени namefile (требуется для правильной передачи параметров)
name_rec - это Name_REC в Фортране
len2 - длина имени Name_REC (требуется для правильной передачи параметров)
 
 
Пример вызова внешней функции:
 

Код:
var
  mas3              : pstring_type;
begin
  NEW(mas);
  FIleName:='c:\52MKK\F1';
  Name_Rec:='CHERTEZH'
  CALL_READ_STRING(@mas3,FileName, length(FileName),Name_Rec,8);
end;

Всего записей: 422 | Зарегистр. 28-12-2004 | Отправлено: 14:05 23-08-2007
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru