Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Dévelopement modem logiciel - Driver Windows - Help please [ Archives / Systeme ] (lherderien)

mardi 26 avril 2005 à 13:06:21 | Dévelopement modem logiciel - Driver Windows - Help please

lherderien

Bonjour je ne suis pas très expérimenté en programmation système windows et je dois développer un modem logiciel. (arrêtez moi quand je me trompe).

Cela revient donc a développer un driver? Mais quel type de driver?
J'ai lu qu'il y en avait plusieurs sorte et j'ai cru comprendre que le plus adapté dans ce cas est le VDD (Virtual Device Driver). Non?

Ensuite quel est le language à utiliser? Pareil, je n'ai pas trouvé de réponse clair, visiblement le C++ est à banir pour les drivers en KERNEL-MODE, mais les VDD ne sont - ils pas en USER-MODE? Peut-on donc utiliser le C++?

Enfin voila ce qui me pose problème.
Je remercie déja toutes les personnnes pouvant m'aider car la je suis un peu callé ;)





mardi 26 avril 2005 à 13:35:12 | Re : Dévelopement modem logiciel - Driver Windows - Help please

jpthomasset

Salut,

J'ai eu un projet un peu identique, je suis partie des sources de ircomm2k qui est un pilote virtuel de port COM et qui redirige les requetes vers un port infrarouge. L'avantage de ce code est lié à son architecture : A l'epoque de mon projet irComm2k était constitué d'un pilote COM et d'un service, le pilote ne fait qu'emuler un port COM et reroute les commandes vers le service. Pour mon projet je n'ai eu qu'a faire mon propre service et gerer les commandes dans ce service : cela a des avantages et des inconvenients : le service ne s'execute pas en kernel mode et peut facilement interagir avec l'utilisateur et d'autres programmes.

Si vraiment tu veux faire le pilote de zero, il doit y avoir un exemple de code dans le DDK.

L'adresse : IrComm2K

A+
JP.


mardi 26 avril 2005 à 14:01:44 | Re : Dévelopement modem logiciel - Driver Windows - Help please

BruNews

Administrateur CodeS-SourceS
Copier coller pour résumer sommairement ce qu'est un VDD:
A virtual device driver (VDD) is a user-mode component that allows MS-DOS-based applications to access hardware on Intel x86 platforms. A VDD relies on the I/O permission mask to trap port access, and it essentially simulates the operation of hardware for the benefit of applications that were originally programmed to talk directly to hardware on a bare machine. Don’t confuse a Windows XP VDD with a Windows 98/Me VxD. Both are called virtual device drivers, and they serve the same basic purpose of virtualizing hardware, but they employ completely different software technology.

Que ce soit user-mode ou kernel, une saine habitude est de toujours faire en C ce genre de produit. Quel intérêt y aurait-il à PLUPLUSer dans ton vdd, tu penses réemployer ses classes ailleurs ?
En kernel mode jamais de C++, allouer une instance de classe 'sur le tas du prog' n'aurait aucun sens dans un contexte indéfini. On n'emploie que les fonctions de l'allocateur system, ExAllocatePoolWithTag() par exemple.

A toi de voir si tu as vraiment besoin d'un driver ou non pour ton prog, bien souvent l'API user-mode est suffisant.

On pourra reprendre cette discussion dans quelques jours, pour déménagement mon bureau sera démonté vers 17h.

ciao...
BruNews, MVP VC++

mardi 26 avril 2005 à 14:21:53 | Re : Dévelopement modem logiciel - Driver Windows - Help please

lherderien

Merci à vous!

BruNews : "A toi de voir si tu as vraiment besoin d'un driver ou non pour ton prog, bien souvent l'API user-mode est suffisant."
-> En fait le but du jeu est de pouvoir rejouter une surcouche à un périphérique type modem RTC. Donc d'un coté j'ai COM1 qui correpond au modem par exemple, et de l'autre coté un logiciel qui doit communiquer avec mon système.

Donc tu as p-e raison, développer un driver entier pour cette appli n'est peut être pas nécessaire.

Ta solution JP semble plus simple, utiliser un pilote virtuel pour récupérer son flux peut être un bon compromis.  Comment se traduit physiquement le service? C'est une tâche de fond? Comment elle est lancée?

@+


mardi 26 avril 2005 à 14:37:27 | Re : Dévelopement modem logiciel - Driver Windows - Help please

jpthomasset

Je t'avouerais que j'avais choisi cette solution par facilité : je ne connaissais rien à la programmation des pilotes.
Pour le service, il s'agit d'un service NT classique, il se lance donc selon les paramètres qu'on lui spécifie : Auto, manuel...
Pour avoir un aperçu du programme jette un oeil ici : IrComm2k Tech Details
Dans le schéma, tu n'a qu'a recreer le service ircomm2k.exe, tu peux d'ailleurs te baser sur le source pour communiquer avec le pilote, il ne te reste donc qu'a gerer les messages envoyés à travers le pseudo port COM.

A+,
JP.




Cette discussion est classé dans : windows, logiciel, driver, modem, dévelopement


Répondre à ce message

Sujets en rapport avec ce message

driver sous windows [ par punch95 ] j'ai besoin d'un exemple de driver sous windows car je veux faire un driver pour une liaison i2c merci de me l'envoyer .oliviervernet95@hotmail.com regsvr32 et runtime VC [ par fenrhyr ] Bonjour, Je viens de télécharger le driver directX pour ma carte d'aquisition vide picolo. Je l'ai installé dans le répertoire C:\WINDOWS\system32 . P Compilation driver windows [ par BloP68 ] Bonjour,Je suis actuellement en train de coder un driver, mais je me heurte a un probleme de compilation (je compile mes driver avec la commande build Programmer driver windows sans le DDK [ par Mareck666 ] Bonjour tous le monde, alors voila j'aimerai savoir est-t'il possible de programmer un driver sans le DDK de microsoft, car en effet je me suis rensei treeview API windows [ par lektrosonic ] Bonsoir, en C et avec api windows..je souhaite modifier le texte d un element d un treeview sans le supprimer.j'ai esseye le message TVM_SETITEM mais Ouvrir explorateur windows + focus sur fichier [ par shuttleur ] Bonjour à tous,Depuis un programme C++ utilisant win32, je cherche à lancer l'explorateur windows dans un répertoire donné.J'utilise actuellement syst Langue de la version windows installée [ par Thez ] Bonjour,Mon problème peut paraître trivial ... mais jusqu'ici je n'ai pas trouvé de solution !Je développe une application permettant de "monitorer" l création driver ODBC [ par FabienCx ] Bonjour,Je souhaite créer un driver ODBC permettant de se connecter à la base de donnée propriétaire du logiciel sur lequel je travaille.Pour prendre Detecter si on souffle dans le micro [ par CyberTwister ] Bonjour :DAlors je sollicite votre aide pour une p'tite question svp :J'ai un micro branché sur mon PC. j'aimerai juste faire une fonction qui retourn


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.