Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Вниз

KOL(KOLIBEvents)+FreePascal   Найти похожие ветки 

 
ZiTrAX   (2006-09-23 19:17) [0]

Может это не совсем в ту ветку форума, но на ветке FreePascal что-то давно никого не было.
Короче, вопрос такой:
Как в FreePascal (v 2.0.4) скомпилировать модуль KOLIBEvents? А то FP при компиляции выдаёт такую ошибку:
                   ...
 KOLIBEvents.pas(123,35) Error: Wrong symbol type
 KOLIBEvents.pas(221) Fatal: There where 1 errors compiling module, stopping
 KOLIBEvents.pas(7,33) Fatal: Compilation aborted
                   ...

Указывает на строку в asm-коде (sub     eax,fResultBuffer-fEventBuffer), а я в ассемблере плоховато разбираюсь.


 
Vladimir Kladov   (2006-09-23 20:05) [1]

если включены все опции совместимости и не помогло, тогда стало быть не понимает вычитание в позиции операнда. Может помочь такое исправление: до asm декларируется константа
const razn = fResultBuffer-fEventBuffer;

и подставляется вместо разности. А вообще там что, нет только паскаль-версии кода разве? (Я еще не заглядывал внутрь пакета).


 
ZiTrAX   (2006-09-23 20:32) [2]

Вот полный текст этой процедуры:
procedure TIBEventsHandler.AllocateBuffers;
var
 i,iMax: Integer;
 NS: Array[0..14] of PChar;
begin
 iMax := 15;
 if fParams.Count < iMax then iMax := fParams.Count;
 for i:=0 to iMax-1 do NS[iMax-i-1] := fParams.ItemPtrs[i];
 fEventCount := iMax;
 asm
       push    ebx
       mov     ebx,iMax
       mov     ecx,ebx
       lea     eax,NS
@@1:
       mov     edx,[eax]
       push    edx
       add     eax,4
       loop    @@1
       push    ebx
       mov     eax,Self
       mov     ecx,eax
       add     eax,fResultBuffer
       push    eax
       sub     eax,fResultBuffer-fEventBuffer
       push    eax
       mov     eax,ecx
       mov     eax,[eax+fClientLib]
       push    eax
       call    TIBClientLib.isc_event_block
       add     esp,$0c
       shl     ebx,2
       add     esp,ebx
       mov     edx,Self
       mov     [edx+fBufferLen],ax
       pop     ebx
 end;
end;

С объявлением константы ничего не проходит (выдаёт на строке объявления KOLIBEvents.pas(101,36) Error: Illegal expression .
А компилятор вызывается c такими параметрами: fpc.exe -dRELEASE -Mdelphi -Rintel -XX -CX .
Вопрос лично В. Кладову: если у меня нет лицензионной версии Delphi, имею ли я право использовать модули из архива ppDelphi.exe при написании коммерческих программ на FreePascal с использованием библиотеки KOL?


 
Vladimir Kladov   (2006-09-24 07:21) [3]

У кого она есть. Но вообще-то с FreePascal 2 эти модули уже не нужны, Тэдди несколько раз это говорил. (А я вот все еще не скачал 2й free pascal).



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.064 c
15-1175808226
ampo
2007-04-06 01:23
2007.05.13
Небольшая коллекция мануалов


3-1171630884
Stanislav
2007-02-16 16:01
2007.05.13
Подключение к dbf с помощю Jet


11-1153722586
StRaNNiK
2006-07-24 10:29
2007.05.13
Как связать TrayIcon c PopupMenu в KOL?


2-1177331483
snakecatcher
2007-04-23 16:31
2007.05.13
Параметры при запуске программы


11-1159283659
Моторокер
2006-09-26 19:14
2007.05.13
Int2Str vs. IntToStr





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский