AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.04.2007, 04:13   #1  
big_bugzy is offline
big_bugzy
Участник
 
13 / 10 (1) +
Регистрация: 15.08.2006
Есть dll, в ней функция с шестью строковыми параметрами.
пишу джоб
Код:
static void TestFunction(Args _args)
{
	 DLL				  MyDLL = new DLL("SomeDll.dll");
	 DLLFunction	  MyFunction  = new DLLFunction(MyDLL, "SomeFunction");
	;
	 MyFunction.arg(ExtTypes::String, ExtTypes::String, ExtTypes::String, ExtTypes::String, ExtTypes::String, ExtTypes::String);
	 MyFunction.call("text1","text2","text3","text4","text5","text6");

}
при выполнении говорит что "Значение регистра ESP не было сохранено при вызове функции "SomeFunction" в библиотеке DLL "SomeDll.dll". Причиной может являться вызов функции DLL, которая объявлена с неверным числом аргументов."
Функция DLL точно сожержит шесть строковых параметров. При вызове из проекта написанного в дельфи
Код:
var
  Form1: TForm1;
procedure MyFunc(Param1,Param2, Param3,Param4, Param5,Param6:string ); external 'SomeDll.dll' name 'SomeFunction';
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 MyFunc('text1','text2','text3','text4','text5','text6');
end;
работает без проблем.
Что я сделал не правильно и как исправить?
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 09:49.