Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   Использование dll в jsfl (http://www.flasher.ru/forum/showthread.php?t=136722)

ierostenko 24.02.2010 13:26

Использование dll в jsfl
 
Очередной вопрос по jsfl, верней два вопроса. Можно создать отдельный раздел по JSFL)
Итак, стоит задача: использовать функции объявленные в dll. Скачал Sample c сайта Adobe, там есть простенькая функция computeSum, (пример написан в VisualStudio), скомпилировал, попробовал - работает. Но вот в чём не задача, я подставил свою функцию, изпользующая не long тип а double, эта функция считает угол наклома прямой:
Код:

JSBool computeAngle(JSContext *cx,
                      JSObject *obj,
                      unsigned int argc,
                      jsval *argv,
                      jsval *rval ) {

double dx, dy, angle;

// Make sure the right number of arguments were passed in.
if (argc != 2) {
        return JS_FALSE;
}

// Convert the two arguments from jsvals to longs.
if (JS_ValueToDouble(cx, argv[0], &dy) == JS_FALSE ||
                JS_ValueToDouble(cx, argv[1], &dx) == JS_FALSE) {
        return JS_FALSE;
}
/* Perform the actual work. */
if( dx == 0 ) {
        if( dy<0 ) angle = -90;
        else if( dy>0 ) angle = 90;
        else angle = 0;
}else angle = atan(dy/dx)*180/M_PI;

/* Package the return value as a jsval. */
if( JS_DoubleToValue(cx, angle, rval) == JS_FALSE ) {
        return JS_FALSE;
}
/* Indicate success. */
return JS_TRUE;
}

Не работает((...Какие-то проблемы с функциями JS_ValueToDouble и JS_DoubleToValue, мне так кажется. Это было дома.
На работе поставил Eclipse + MinGw компилятор, собирается dll, но в jsfl объявленная функция не видна, как же быть?


Часовой пояс GMT +4, время: 13:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.