![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Использование DLL в Delphi XE [D7, XP]
JohnKorsh © (2014-03-03 17:52:00)Добрый день!
Пытаюсь использовать WinIO при разработке приложения под Delphi XE. Не проходит инициализация. Вот часть исходного кода прграммы:
procedureTMain_Form.FormActivate(Sender: TObject);
{ Set of the begining values. }
var
idWinIO : boolean;
begin
idWinIO := InitializeWinIo; //Initialization of the WinIO.
if (not idWinIO) then // ---------
begin
ShowMessage ('Can not install of the WinIO Driver.');
Close;
end;
// F_Info.ShowModal;
SetPortVal (LPT_Addr, $0, 1);
SetPortVal (LPT_Addr + 2, $0, 1);
SPI_Reset;
end;
Компилируется без ошибок при отладке InitializeWinIo даёт False. Модуль WinIO включён в uses, WINIO.DLL доступен для скомпилированной программы. Тот же самый код работает в Delphi7 без вопросов. Не поможете ли, в чём я ошибаюсь?
fff (2014-04-22 12:13:00) [1]ffff
JohnKorsh (2014-03-05 21:40:00) [2]Добрый день! Отвечаю сам себе, может, кому пригодиться. Для работы WinIO требуется три файла: WinIO.pas - заголовки процедур, WinIO.dll - сами процедуры и WinIO.sys - как я думаю - часть процедур, имеющих привилегии ядра. Если не прав - поправьте. Просто в Delphi XE не было доступа к этому файлу, так, что версия Delphi не причём, как обычно, причина - незнание.
JohnKorsh (2014-03-04 18:22:00) [3]У меня WinIO только с объявлением, но, поищу с исходниками - вещь очень старая, где-то в Интернете обязательно есть. Чтобы не терять время пишу под Delphi 7, по ходу дела возник ещё вопрос:
Мне необходимо ввести данные, хотелось бы по шине данных принтера D0..D7.
(Адрес 378Н для Lpt1)
Для переключения порта данных на ввод надо записать в регистр управления
(Адрес 37AH для Lpt1) в пятый разряд 1. (20H).
У меня этот разряд не пишется - все значащий разряды этого регистра
пишутся и читаются как записал, а 5 всегда в 0, то есть всегда на вывод даных.
Видимо, есть какой-то нюанс для выставления этого разряда. Не подскажет ли кто?
clickmaker (2014-03-04 09:06:00) [4]> WinIO.pas
там только объявления функций из длл или есть свой код какой-то?
JohnKorsh (2014-03-04 08:24:00) [5]WinIO.pas. XE очень объёмный, конечно, куча отличий. Пока не знаю.
MBo (2014-03-03 23:33:00) [6]А чем отличаются семерка и XE?
Может, учёт одного из кардинальных различий поможет?
clickmaker (2014-03-03 20:22:00) [7]> Модуль WinIO включён в uses
модуль - это .pas файл?