Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.11.16;
Скачать: CL | DM;

Вниз

kol + msvcrt + ntdll ???   Найти похожие ветки 

 
ntg13 ©   (2007-11-23 01:12) [0]

Цель использования КОЛа - уменьшить код прилад. Для этого применяются уже привычные ухищрения, вроде написания функций rtl в ассемблере, вылизывания System.pas  и пр. Но в любом НТ (nt4, 2000,
xp, ..) есть такое богатство уже отлаженных и стандартизированных rtl - библиотек( msvcrt.dll, shlwapi.dll, ntdll.dll ). Единственный недостаток в отсутствии заголовочных файлов на паскале для всех функций этих библиотек. А в случае с ntdll.dll большая часть интересного не документирована.
 В msvcrt.dll ( это библиотека времени исполнения Си ) есть Менеджер Кучи (правда, не самый производительный, но MultiThread), обработка исключений, преобразование типов, математические функции, работа с файлами, строковые манипуляции. Руки чешутся взять kol.pas и system.pas и прикрутить к ним Сишные функции. Для эксперимента взял модуль fastMM и подставил Malloc, realloc, free. Тест показал худший по скорости результат (heapAlloc и то лучше ), но главное - идея.
 Мне можно возразить, что проще програмить на Си и линковать с динамическими rtl, но в том и кайф КОЛа, что програмишь на делфи, а эффект, как от хардкорного Си. (кстати, на котором написаны почти все
экзешники Вынь32. (кроме Explorera и Shell, они на C++ ).
 Ещё минус, что вне НТ сей фокус "усушки" КОЛа не прокатит, он позиционируется как 95+ совместимый.

ВОПРОС? Стоит ли игра свеч?

 З.Ы. все эти библиотеки загружены в память и активно используются большинством MS-экзешников. Смотрите Таблицы Импорта. А чем наши прогыши хуже?!


 
thaddy   (2007-11-23 11:30) [1]

msvcrt.dll = C runtime library for MS C. http://rvelthuis.de/zips/msvcrt.zip
I use that with KOL sometimes


 
homm ©   (2007-11-23 11:47) [2]

> [0] ntg13 ©   (23.11.07 01:12)
> Ещё минус, что вне НТ сей фокус "усушки" КОЛа не прокатит,
> он позиционируется как 95+ совместимый.

Ну вот ты сам и ответил :)


 
D[u]fa   (2007-11-23 12:45) [3]

хз по моему ваще никакого смысла нету.. мб в каком то узконпаравленном приложение будет резон



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

Текущий архив: 2008.11.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
15-1221632309
vajo
2008-09-17 10:18
2008.11.16
Почему-то перегружается ноутбук


4-1200229460
Navi
2008-01-13 16:04
2008.11.16
Управление LPT - перевести код с VB на Delphi


2-1222847653
SkyN
2008-10-01 11:54
2008.11.16
несколько раз вызывать EnterCriticalSection корректно?


2-1223449935
JustI
2008-10-08 11:12
2008.11.16
TLargeIntField


2-1223290088
MsGuns
2008-10-06 14:48
2008.11.16
Можно ли поместить картинку в библиотечный модуль ?