Merici pristroje k PC.

Miroslav Sinko sinkomiro@rocketmail.com
Čtvrtek Leden 10 21:02:07 CET 2008


--- Delphin <delphin@post.cz> wrote:

> Ne, není to omyl. Az do WME se na porty chodí prímo a nemusí se nic
> resit, 
> nepotrebujete zádné .DLL ani .SYS ani API. Od W2K je prístup z
> aplikací na 
> porty zrusen a aplikace nemá zádnou moznost si to sama povolit. Ze to
> presto 
> funguje je práve dílo toho ovladace .SYS, který to naborí, to .DLL je
> jenom 
> tresnicka. 

Takto by som to neformuloval - vobec nic z toho, co ste napisali...

Az do WME sa "nechodi" priamo na porty. Aj tam boli ovladace (vxd),
ktore boli spolu s prislusnymi DLL, v ktorych su prave funkcie Win32API
urcene na korektny pristup aplikacii k portom a tak sa aplikacie aj
mali programovat. To, ze az do WME nebol blokovany pristup k I/O
portom, je vec druha. Ale v ziadnom pripade priamy I/O pristup nebol
ten pravy, ktorym sa na porty (v zmysle COM, LPT) "chodilo".

Od WinNT (nie az W2k) nie su ovladace vxd, ale sys a pristup k I/O je
priamo z aplikacie zakazany. Musi sa ist cez tie ovladace. Neformuloval
by som to tak, ze sys nieco nabori - on je na obsluhu HW urceny. A
_prislusna_ dll nie je ceresnicka, ale subor API funkcii, ktore
aplikacii spristupnuju komunikaciu so sys.

Port.dll zo zmienenej knihy nepoznam, ale sama o sebe urcite nevie
zabezpecit pristup na I/O porty pod WinNT. K tomu je potrebny sys. Zo
znamych napr. giveio.sys, UserPort.sys, apod. Ak port.dll umoznuje
aplikacii pristup k portom (COM, LPT), tak potom je v nej kod
pouzivajuci WinAPI.

No a na zaver by som dodal, ze ani nie vsetko, co je pre komunikaciu s
COM portami napisane vo Win32API a odladene na W95/98/NT, nemusi na
WinNT fungovat. Napr. pod nie-NT platformou nepouzitie OVERLAPPED
pristupu k COMx nesposobilo "zamrzanie" ostatnych I/O pristupov
aplikacie, kym na NT platforme ano. Multithreadove programy pre NT teda
musia pouzivat OVERLAPPED pristup. Kedze OVERLAPPED pristup sa mohol
pouzivat aj na nie-NT platforme, spatne kompatibilne to je.

miro





      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ 




Další informace o konferenci Hw-list