Как вариант, можно полностью вкомпилировать этот EditBox в своё приложение.her-znayet-kto wrote:QUOTE (her-znayet-kto @ Sep 18 2018, 07:59 PM)
как запустить едитбокс - с цифирками (числовой) -
возможно ли его запустить, не используя dll ?
... а использование dll, в свою очередь, одним только
едит-боксом может вывести всю асутп
из разряда открытокодовых (открытоисходниковых) ...
(в лучшем случае - заставит изучать - дополнительно - какой-то
еще язык программирования, что друзьям паяльника,
макетки, флюса и олова мягко говоря крайне нежелательно) ...
Код библиотеки box_lib http://websvn.kolibrios.org/listing.php ... 6adea61bbb
Вот тема про библиотеку на нашем форуме http://board.kolibrios.org/viewtopic.php?f=24&t=1220
Я попробовал переделать один из своих примеров
- http://board.kolibrios.org/viewtopic.ph ... 064#p69064
http://board.kolibrios.org/viewtopic.ph ... 195#p69178
- FASM
C--
LD
OBJCOPY
KolibriOS.Lib — можно скачать из темы Delphi7 examples
Добавил в editbox.asm нужные константы и флаги.
Взял необходимые файлы: Собирается вот так
Code: Select all
Set NAME=BuiltinEditBox
FASM editbox.asm
C-- %NAME%.c-- /w32 /sobj /COFF
LD -T LScript.x %NAME%.obj editbox.obj -o %NAME%.kex -L %KolibriOS% -l KolibriOS
OBJCOPY -O binary -j .all %NAME%.kex
Del %NAME%.obj
Pause
Code: Select all
PATH_SIZE = 1024;
PARAMS_SIZE = 256;
STACK_SIZE = 1024;
AppParams = $END + PATH_SIZE;
AppPath = $END;
SECTIONS
{
.all : AT(0){
LONG(0x554e454D);
LONG(0x31305445);
LONG(1);
LONG("Main");
LONG(END);
LONG($END + PATH_SIZE + PARAMS_SIZE + STACK_SIZE);
LONG($END + PATH_SIZE + PARAMS_SIZE + STACK_SIZE);
LONG(AppParams);
LONG(AppPath);
*(.text)
*(.rdata)
*(.data)
*(.codedat)
}
END = .;
.bss ALIGN(16) : {*(.bss)}
$END = .;
}
В результате полученное приложение при запуске копирует параметры командной строки в EditBox Есть проблема: виснет при Ctrl+C\Ctrl+V\Ctrl+X.
Трудно сказать, из-за чего.
Можно попробовать собирать и вот так(link — линкер от Microsoft):
Code: Select all
Set NAME=BuiltinEditBox
FASM editbox.asm
C-- %NAME%.c-- /w32 /sobj
link -edit %NAME%.obj
LD -T LScript.x %NAME%.obj editbox.obj -o %NAME%.kex -L %KolibriOS% -l KolibriOS
OBJCOPY -O binary -j .all %NAME%.kex
Del %NAME%.obj
Pause
Code: Select all
LD: warning: BuiltinEditBox.obj: local symbol `-☺' has no section
LD: warning: BuiltinEditBox.obj: local symbol `-☺' has no section