Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.14.70.203] |
|
Сообщ.
#1
,
|
|
|
Короче говоря, вышел такой небольшой, но раздутый спорчик по поводу того, есть ли на свете 16-битные DLLки. Так получалось, что могут быть для Protecdet Mode DOSа. Т.е. при компиляции DLL под BP получается 16-битная.
Так вот вопрос: на сколько это правда? |
Сообщ.
#2
,
|
|
|
Так получилось, что в модуле WinProcs описаны 16битные версии команд из 16битных DLL винды. Они правда там имеют расширение exe и назваются krnl386.exe users.exe и gdi.exe
Добавлено к тому же при компиляции из бп и не может выйти 32битной дллки, потому что нет в бп 32битных типов данных. Он вобще не использует 32битные регистры к примеру для адресации. Впрочем это не мешает пользоваться теми DLLками, которые делает пас из других языков. |
Сообщ.
#3
,
|
|
|
Вообще то. по-моему BP использует 32битную адресацию в защищенном режиме.
Хорошо, ставим вопрос так: скольки битная DLL выходит после компиляции в BP? И еще один дополнительный, но не менее важный вопрос: можно ли на TMTP использовать DLL, написанную на BP? |
Сообщ.
#4
,
|
|
|
Цитата Это, наверно, вопрос совместимости компиляторов. Но, скорее всего, нет. KiRiK, 18.09.04, 19:01 можно ли на TMTP использовать DLL, написанную на BP? Добавлено Цитата 16-тибитная KiRiK, 18.09.04, 19:01 скольки битная DLL выходит после компиляции в BP? |
Сообщ.
#5
,
|
|
|
Цитата Romtek, 18.09.04, 15:03 16-тибитная А доказать? Цитата Romtek, 18.09.04, 15:03 Это, наверно, вопрос совместимости компиляторов. Но, скорее всего, нет. А при чем здесь совместимость? В DLL никак не фигурирует синтаксис языка. |
Сообщ.
#6
,
|
|
|
Просьба: Забудьте, что такое БП и что такое 16 бит. Врубите ТМТ паскаль. Даже если дос таргет, он избавит от многих проблем с 16 битной адресацией.
|
Сообщ.
#7
,
|
|
|
To Азат, в том все и дело, что мне нужно написать DLL (желательно на BP), а потом ее заюзать на TMT.
Не надо давать таких советов, в которых и так все понятно. |
Сообщ.
#8
,
|
|
|
Ну извини, KiRiK, не все же в этом форуме такие понятливые как ты.
|
Сообщ.
#9
,
|
|
|
http://www.tmt.com/faq.htm#L14
How To Port a 16-bit DLL to a Win32 DLL Добавлено Цитата Не создавай себе дополнительные проблемы, пиши всё на одном компиляторе (лучше ТМТ). KiRiK, 18.09.04, 19:48 мне нужно написать DLL (желательно на BP), а потом ее заюзать на TMT. |
Сообщ.
#10
,
|
|
|
Мой ТМТ не компилит ДЛЛ!
Это минус. Но есть ДЛЛ менеджер. Зто плюс. Как им пользоваться я не знаю. Это минус. Итог - минусов больше. Да, а кто переименовал тему? [Romtek: Я переименовал] А зачем? [Romtek: Чтобы тему легче искать было. Тем "DLL" немало, притом она неинформативна.] Теперь понятно. |
Сообщ.
#11
,
|
|
|
если уж возникла такая тема, воспользуюсь случаем- задам вопрос:
когда я прописываю строку(чтобы взять proc из DLL)...procedure name1; external 'name' index 1;... при компилировании паскаль выдает ошибку - поставить ";"после external , ставлю ';' -пишет поставить 'end.' В чем же дело? |
Сообщ.
#12
,
|
|
|
Цитата По идее всё правильно. Покажи исходник, может в нём что-то не так. Question, 20.09.04, 23:10 когда я прописываю строку(чтобы взять proc из DLL)...procedure name1; external 'name' index 1;... при компилировании паскаль выдает ошибку - поставить ";"после external , ставлю ';' -пишет поставить 'end.' В чем же дело? |
Сообщ.
#13
,
|
|
|
Как импортировать процедуры и функции из DLL с помощью встроенного Ассемблера?
|
Сообщ.
#14
,
|
|
|
ИМХО, никак.
Встроенный асм предназначен для кода, а не деклараций. |
Сообщ.
#15
,
|
|
|
To Question, зачем тебе это, тем более на встроенном ассемблере?
|