Найдено 17 результатов

Dark_Stranger
07 Июнь 2016, 16:31
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

Дед Пахом писал(а): Может в Дельфях вызвать AttachThreadToClarion?
С чем его едят?
Dark_Stranger
07 Июнь 2016, 16:10
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

26613 Дык, exe-файл начинает работу с инициализации среды, в том числе создания разного рода контейнеров, пулов, стеков и прочего имущества для clarion runtime. Можем ли мы быть уверены, что программа на Delphi корректно подготовит среду исполнения программы на Clarion?
Так почему тогда запись N-1 ...
Dark_Stranger
07 Июнь 2016, 14:33
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

Такое ощущение что при неявном приведение (при определении точности) происходит деление на 0 или что-то подобное (типа указатель есть, а по адресу нету).
Dark_Stranger
07 Июнь 2016, 14:17
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

Дико извиняюсь, ввел в заблуждение.....
Ошибка возникает не CurrentField &= WHAT(Sp:Record, FIELD_NUMBER)
а когда передаю CurrentField в процедуру со строковым типом
TABLE_FIELD_INFO_Class.Export_Data(Clip(Left(WHO(Sp:Record, FIELD_NUMBER))), 0, SPOOLS{PROP:TYPE, FIELD_NUMBER}, CurrentField)
или ...
Dark_Stranger
07 Июнь 2016, 13:36
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

26608 Значит, в Delphi не выполняется какая-то Кларионовская инициализация, которую выполняет exe-файл Clarion

Какая такая инициализация.......
Spools Pre(SP)
SP:Field1 REAL
SP:Field2 REAL
SP:FieldGR GROUP
SP:Field3 REAL
SP:Field4 REAL
SP:Field5 REAL
SP:Field6 REAL
SP:Field7 REAL
SP:Field8 REAL ...
Dark_Stranger
07 Июнь 2016, 13:03
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

Дед Пахом писал(а): непонятно, где ошибка-то, тут

Код: Выделить всё

CurrentField &= WHAT(Sp:Record, FIELD_NUMBER)
или тут

Код: Выделить всё

If Spools{PROP:Dim, FIELD_NUMBER} = 0 Then
Вот именно непонятно...
Если я организую .exe все замечательно, но как только выношу в dll уходит в ошибку
Dark_Stranger
07 Июнь 2016, 12:00
Форум: CLARION for Windows
Тема: WHAT() WHO() и dll
Ответы: 11
Просмотры: 4818

WHAT() WHO() и dll

Добрый день!
Есть процедура которая пробегается по record и вытаскивает значения полей (ну и само наименование поля).
файлик TPS

Если процедуру выношу в DLL и вызываю в проге написанной на delphi
procedure export(),PASCAL
CurrentField ANY
FIELD_NUMBER LONG
code
FIELD_NUMBER = 1
Loop while Clip ...
Dark_Stranger
07 Июнь 2016, 11:45
Форум: CLARION for Windows
Тема: Аналог Try Except в Clarion 6.2
Ответы: 4
Просмотры: 3262

Аналог Try Except в Clarion 6.2

Дед Пахом писал(а): нет
Спасибо большое.

P.S.: Очень сильно расстроен... :cry:
Dark_Stranger
07 Июнь 2016, 10:57
Форум: CLARION for Windows
Тема: Аналог Try Except в Clarion 6.2
Ответы: 4
Просмотры: 3262

Аналог Try Except в Clarion 6.2

Добрый день, форумчане!

Интересует такой вопрос:
Есть ли аналог Try Except (Delphi) в Clarion 6.2.

В Delphi можно реализовать такую инструкцию
Try
zero := 0;
number := 1 / zero;

except
ShowMessage('Делить на 0 НИЗЯ');
end;

Есть ли аналог в Clarion 6.2.
Dark_Stranger
05 Май 2016, 11:41
Форум: CLARION for Windows
Тема: Delphi + Clarion DLL
Ответы: 13
Просмотры: 5600

Delphi + Clarion DLL

Провел испытания:
Код ошибка - 36; Файл - f:\DATA\Table_Data.dat; Месага - Invalid Data File
Если запускать DLL с интервалом каждую секунду вероятность возникновения ошибки большая (Процентов - 90%).
Если запускать DLL с интервалом каждые 10 секунд вероятность возникновения ошибки снижается ...
Dark_Stranger
05 Май 2016, 8:09
Форум: CLARION for Windows
Тема: Delphi + Clarion DLL
Ответы: 13
Просмотры: 5600

Delphi + Clarion DLL

Дед Пахом писал(а): смотри SUSPEND, RESUME, NOTIFY
СПС большое.
Остается разобраться как поставить приоритет потока.
Дельфийские параметры потока:
tpIdle
tpLowest
tpLower
tpNormal
tpHigher
tpHighest
tpTimeCritical

А аналоги в кларе?
Dark_Stranger
04 Май 2016, 16:50
Форум: CLARION for Windows
Тема: Delphi + Clarion DLL
Ответы: 13
Просмотры: 5600

Delphi + Clarion DLL

26424 Да вроде нет.
Проверил на 6, работает!

Остается решить вопрос с управлением потоком и его приоритетом.
8 - одновременно запущенных потоков грузят i-7 4770K на 100% - ЭТО ППЦ

Приостановить поток на время.
Возобновить поток.
Изменить приоритет потока.
Передать в поток некие параметры.
Есть ...
Dark_Stranger
04 Май 2016, 16:33
Форум: CLARION for Windows
Тема: Delphi + Clarion DLL
Ответы: 13
Просмотры: 5600

Delphi + Clarion DLL

Дед Пахом писал(а): Да, действительно, до 6-ки была кооперативная модель многопоточности. Давно с этим не работал, может кто другой просветит.
А в 6 таких проблем нет?
Dark_Stranger
04 Май 2016, 16:25
Форум: CLARION for Windows
Тема: Delphi + Clarion DLL
Ответы: 13
Просмотры: 5600

Delphi + Clarion DLL

26420 26419 И основное окно не будет тормозить?Это ABC или шаблонный кларион?
Вообще-то не будет тормозить, но как напишешь...
START это встроенная функция, пофиг ABC это или XYZ.
насколько я знаю 5.5 не умеет работать в реальном многопоточном режиме, активным поток может быть только один
START ...
Dark_Stranger
04 Май 2016, 16:11
Форум: CLARION for Windows
Тема: Delphi + Clarion DLL
Ответы: 13
Просмотры: 5600

Delphi + Clarion DLL

Дед Пахом писал(а): Насчёт потоков - да, конечно, смотри START.
Имеете ввиду
Start(proc1)
Start(proc2)
Start(proc3)
proc1-proc3 - бесконечный цикл
И основное окно не будет тормозить?
Это ABC или шаблонный кларион?