Создание Эльфов : Эльфостроение : Форум |
Страница 139 из 211: « 1 ... 135 136 137 138 [139] 140 141 142 143 ... 211 » |
DuXeN0N: |
12.07.10, 09:03 |
может кто-нибудь дать пример работы с LibraryDLL? |
Ну6иК: |
12.07.10, 09:15 |
DuXeN0N, вобщем-то самому с ней работать не надо, эльфлоадер сам обратиться к ней по необходимости |
DuXeN0N: |
12.07.10, 09:19 |
Ну6иК, просто обращаться к функциям и все? инклудить export\LibraryDLL.h и потом _LIBRARY_DLL_DATA *Dll; Dll->dll_GC_PutChar(??) |
Ну6иК: |
12.07.10, 09:26 |
ничего инклудить не надо, просто GC_PutChar(...). дальше лоадер сам решит откуда ему функцию брать, из длл или из библиотеки из прошивки IronMaster писал: Прошло немножко времени, а ЭП снова обновился. Основное ее отличие - кеширование библиотеки функций и патчинг таблички адресов в соответствии с длл. ... В эльфах ничего менять не нужно. |
DuXeN0N: |
12.07.10, 09:27 |
Ну6иК, ааа. ну тогда круто |
Ну6иК: |
12.07.10, 19:27 |
как-то в теме кто-то спрашивали как прикрутить иаровский компилятор к visual studio, но ответа не было вот, нашел способ, он оказался довольно таки простым для этого заходим visual studio -> tools -> external tools, добавляем новую команду, называем как хотим. в поле command пишем путь к iarbuild, в поле arguments список параметров( что то типа "$(ProjectDir)..\main.ewp" -make "Release" -log warnings) и ставим галку на use output windows. собственно все. теперь эльфов можно компилировать прямо из visual studio простым нажатием tools -> только что созданная команда да, вот еще что. visual studio не понимает вещи типа Код: #pragma swi_number=0x103 __swi __arm void* malloc( int size ); и поэтому не подсвечивает прототипы функций, но это лечится редактированием файла Lib_Clara.h вот если кому надо, приложил уже отредактированный файл |
unfunk: |
12.07.10, 19:57 |
Ну6иК, надо было в начале файла написать #define __swi и #define __arm. Команду тоже можно забиндить на комбинацию клавиш. Еще советую поставить VisualAssistX, с ним намного удобнее |
Ну6иК: |
12.07.10, 20:49 |
unfunk писал: Ну6иК, надо было в начале файла написать #define __swi и #define __arm. угу, так действительно проще unfunk писал: Еще советую поставить VisualAssistX, с ним намного удобнее скачал я его, по-моему он излишне много за тебя делает |
Ну6иК: |
18.07.10, 17:55 |
а можно как то в иаре обработку исключений включить? |
Pavlus: |
18.07.10, 20:49 |
Почему Код: int isMyElfBook(BOOK * book){ if(!strcmp(book->xbook->name,BookName)) return(1); return(0); } BOOK * CreateMYBook() { MYBook= new BOOK; CreateBook(MYBook,onCloseMYBook,&base_page,BookName,-1,0); return(MYBook); } int main (void) { if(FindBook(isMyElfBook)){ char * strMsg=BookName; strcat(BookName," is running"); MessageBox(0x6FFFFFFF,Str2ID(strMsg,6,SID_ANY_LEN),NOIMAGE,1,5000,0); SUBPROC(elf_exit); } else{ CreateMYBook();} timer=Timer_Set(500,onTimer,0); return(0); } |
Страница 139 из 211: « 1 ... 135 136 137 138 [139] 140 141 142 143 ... 211 » |
URL этой темы: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=2479&start=1380 © 2005-2018 supertrubka.org |