» »

C++ in komunikacija preko LPT pod NT/W2k

C++ in komunikacija preko LPT pod NT/W2k

Turbina ::

Napisati moram program v C++, ki preko LPT porta čita podatke iz neke eksterne naprave, izračuna rezultat in ga prikaže na zaslonu. Problem je v tem ker mora vsa stvar teči na winNT oz. win2k. Ker kot vem ta dva operacijska sistema zahtevata kernel mode prioritete za poseganje v hardware ( ukaz outp in inp, ki bi jih uporabil nebi delovala ). Ali morda obstaja kakšna novejša verzija C++ kompajlerja ( ala Turbo C++ oz. ne visual varianta ), ki bi mi to komunikacijo omogočala ? Vsak namig o komunikaciji preko paralelnih vrat pod NT sistemi bi bil zelo dobrodošel.

LP

cyer^3d ::

Uporabit moras Win32 API...
Poglej si funkcije CreateFile, WriteFile, CloseHandle.
Pazljiv bodi predvsem pri stelanju timeoutov IO naprave. Ce rabis simple program bo to nekako zadostovalo, ce ne si poglej tudi evente pod winsi...ti marsikaj olajsajo(oz. stvar zakomplicirajo).
Za vec informacij uporabi MSDN.

Turbina ::

Win32 API pravite … Bi mogoče kdo lahko objavil kakšen primer, naprimer kako preberemo byte iz paralelnega porta, vpišemo byte na paralelni port z uporabo API funkcij. Iz msdn-ja se ne znajdem čisto nič – iščem I/O communication, I/O API, …
Pa dobim stotine enih topicov tako da …
Katero razvojno okolje pa potrebujem za takšno aplikacijo, Visual C++ mi ni vredu, saj ga čist nič ne razumem, prej sem delal samo z Turbo C++ pod dosom, pa je bilo vse ful neprimerno lažje kot pa to z winsiNT. A so mogoče na netu kje kakšni tutoriali o tem (uporabi API funkcij za komunikacijo prek LPT na NT os). Pa ne mi rečt da ne znam Googla uporabljat, sem že čakiral pa nisem našel nič, kar bi mi pomagalo razjasniti moje neznanje.
--------------------------------------------------------------- Overclock yourself ! ---------------------------------------------------------------

tonic ::

uporabi raje VB ali pa Delphi

cyer^3d ::

...mors mal pobrskati:

http://msdn.microsoft.com/library/defau...

na levi strani klikn pol 'programming serial communication'..notr mas primere..etc,
ni tezko mors pa vedet kako pa kaj, pa izkusenje so zazeljene:D

Turbina ::

Hvala za link ! Jaz sem brskal po offline MSDN knjižniči iz nevem katerega leta, tako da ni čudno da nisem nič našel… Tisti link, ki si mi ga dal ni to, kar jaz potrebujem, saj že skozi trobim da gre za PARALELNO komunikacijo (printer port) in ne serijsko ! Pa zadeva mora tečt na NT, W2k in ne na WinCE, o čemer se govori na tisti povezavi. Sem našel en članek na to temo, pa očitno drugače, kot z pisanjem novega driverja (saj lahko pod NT, W2k dostopamo do hardwarea samo preko driverjev in njihovih funkcij) ne bo šlo. Očitno bom moral ta projekt kar opustiti, saj je pisanje drajverjev res zahtevno. Mogoče mi ostane še ena varianta. Windows generic printer driver, ki baje omogoča pisanje, branje podatkov s porta, preko funkcij ReadPrinter, WritePrinter … Kakšen komentar ?

cyer^3d ::

ti ga pa mal bixas :)

tist link k sm ti dal pelje do najman 30 clankov...in ne samo Win CE - halo? :)

Drgac pa ne vem kaj je problem...sem ti dal funkcije kot so Create, ReadFile, WriteFile...s temi LAHKO odperas tudi LPT1 etc porte.

no sj ti bo ratal :D

cyer^3d ::

oz. ce ti ni usec high abstract API ...

http://www.internals.com/ ... downloadas si lohka Win IO

ali pa vseeno napisi svoj driver>:D

Turbina ::

Hvala, Hvala … Iz tistim WinIO si me pa res rešu iz dreka. Zdaj upam da bo šlo. Glede tistga CreateFile, WriteFile sem si tud malo pogledal pa mi je mal bolj jasno. Veš z windows programiranjem si nisem čist na jasnem, pa sej bo boljš…:D

igorb ::

No, da ne bos Amerike odkrival. Tule je resitev tvojega problema.

Turbina ::

Cool TNX Igor!


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C] MySQL

Oddelek: Programiranje
292813 (1835) Tutankhamun
»

[C/C++] Branje sektorjev

Oddelek: Programiranje
51282 (1130) yeti
»

[Winsock & C++]HTTP - Prenašanje binarne datoteke - recv()

Oddelek: Programiranje
71236 (1155) W3by
»

C++

Oddelek: Programiranje
71418 (1180) zdravcc
»

Direktni dostop do LPT na Win2k/XP

Oddelek: Programiranje
6921 (812) DarkWIng

Več podobnih tem