السلام عليكم و رحمة الله و بركاته.
تـحية عطرة لكل أعضاء المنتدى خاصة لكل من الصديقين JuStNiCk و سيف الدين 2/Saif_Omar و كذلك أخص بالشكر الأخ الساهر على هذا القسم من المنتدى عروة عيسى.. :lol:
كان بالإمكان في بيئة Win9x برمجة الهاردوير مباشرة مثل port ISA و LPT Ports و RS232 دون اللجوء إلى WinApi... لكن في ويندوز Xp و Win2k أصبحت كل محاولة التحكم بهذه المخارج الإلكترونية مستحيل بدون استخدام WinApi :s ..و دوال WinApi تحد من حرية التحكم و تقيدك ببروتوكولات خاصة تضيق خاصيات هذه المخارج :wacko: ...
الكود من مثل هذا أصبح خرقا في Windows 2000 &WinXP
{****************************************************************
* Port Read byte function *
* Return: byte value from given port *
****************************************************************}
function PortIn(Addr:Word) : Byte; assembler; register;
asm
MOV DX,AX
IN AL,DX
end;
{****************************************************************
* Procedure d'ecriture d'un octet sur le port E/S *
* Parametre: adresse du port, octet de sortie
****************************************************************}
procedure PortOut(Addr:Word; Value:Byte); assembler; register;
asm
XCHG AX,DX
OUT DX,AL
end;
هذا مركب Component كنت قد قمت بتجميعه للتحكم بكل حرية في standard LPT port أو ما تعرف ب Parallel Port for printer.. و هو يعمل فقط على بيئة Windows 9x
