[Débutant] Communication série et/ou parallèle en C#
7 réponses
noone
Bonjour,
je voudrais savoir comment communiquer en C#
avec le port parallèle et/ou le port série
je voudrais de plus que mon appli soit portable sur Linux/Unix (via Mono)
je dois donc éviter les appels à Win32 et fonctionner uniquement en code
managé.
Est-ce possible ?
Coment faire ? (ou du moins envoyez moi vers des liens...)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Patrick Philippot
wrote:
je voudrais savoir comment communiquer en C# avec le port parallèle et/ou le port série
Bonjour,
Ce type d'accès n'est pas prévu dans la version actuelle du framework. Cela sera possible avec la version 2.0. Dans l'attente, seules des solutions basées sur P/Invoke ou Interop sont possibles (utilisation d'un contrôle ActiveX comme MSCOM). Voir par exemple:
Voir http://franson.biz/serialtools/index.asp?platform=net pour une solution commerciale.
Quant au port USB, il est plutôt conseillé de communiquer avec le driver du périphérique USB plutôt qu'avec le port directement.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
noone@nowhere.com wrote:
je voudrais savoir comment communiquer en C#
avec le port parallèle et/ou le port série
Bonjour,
Ce type d'accès n'est pas prévu dans la version actuelle du framework.
Cela sera possible avec la version 2.0. Dans l'attente, seules des
solutions basées sur P/Invoke ou Interop sont possibles (utilisation
d'un contrôle ActiveX comme MSCOM). Voir par exemple:
je voudrais savoir comment communiquer en C# avec le port parallèle et/ou le port série
Bonjour,
Ce type d'accès n'est pas prévu dans la version actuelle du framework. Cela sera possible avec la version 2.0. Dans l'attente, seules des solutions basées sur P/Invoke ou Interop sont possibles (utilisation d'un contrôle ActiveX comme MSCOM). Voir par exemple:
Voir http://franson.biz/serialtools/index.asp?platform=net pour une solution commerciale.
Quant au port USB, il est plutôt conseillé de communiquer avec le driver du périphérique USB plutôt qu'avec le port directement.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
noone
> Ce type d'accès n'est pas prévu dans la version actuelle du framework. Cela sera possible avec la version 2.0. Dans l'attente, seules des solutions basées sur P/Invoke ou Interop sont possibles (utilisation d'un contrôle ActiveX comme MSCOM). Voir par exemple:
Voir http://franson.biz/serialtools/index.asp?platform=net pour une solution commerciale.
Une telle solution fonctionnera-t-elle également sous d'autres OS avec Mono ?
Quant au port USB, il est plutôt conseillé de communiquer avec le driver du périphérique USB plutôt qu'avec le port directement.
L'idée est au contraire plutôt pédagogique... Comprendre comment fonctionne une communication USB avec un périphérique. Etre capable de réaliser des petits périphériques simples fonctionnant sur port USB (et non série/parallèle comme c'est souvent le cas)
> Ce type d'accès n'est pas prévu dans la version actuelle du framework.
Cela sera possible avec la version 2.0. Dans l'attente, seules des
solutions basées sur P/Invoke ou Interop sont possibles (utilisation
d'un contrôle ActiveX comme MSCOM). Voir par exemple:
Voir http://franson.biz/serialtools/index.asp?platform=net pour une
solution commerciale.
Une telle solution fonctionnera-t-elle également sous d'autres OS avec
Mono ?
Quant au port USB, il est plutôt conseillé de communiquer avec le driver
du périphérique USB plutôt qu'avec le port directement.
L'idée est au contraire plutôt pédagogique...
Comprendre comment fonctionne une communication USB avec un
périphérique.
Etre capable de réaliser des petits périphériques simples fonctionnant
sur port USB (et non série/parallèle comme c'est souvent le cas)
> Ce type d'accès n'est pas prévu dans la version actuelle du framework. Cela sera possible avec la version 2.0. Dans l'attente, seules des solutions basées sur P/Invoke ou Interop sont possibles (utilisation d'un contrôle ActiveX comme MSCOM). Voir par exemple:
Voir http://franson.biz/serialtools/index.asp?platform=net pour une solution commerciale.
Une telle solution fonctionnera-t-elle également sous d'autres OS avec Mono ?
Quant au port USB, il est plutôt conseillé de communiquer avec le driver du périphérique USB plutôt qu'avec le port directement.
L'idée est au contraire plutôt pédagogique... Comprendre comment fonctionne une communication USB avec un périphérique. Etre capable de réaliser des petits périphériques simples fonctionnant sur port USB (et non série/parallèle comme c'est souvent le cas)
Patrick Philippot
wrote:
Une telle solution fonctionnera-t-elle également sous d'autres OS avec Mono ?
L'accès aux ports série sous le framework 2.0 est/sera possible via le namespace System.IO.Ports et la classe SerialPort. Je ne vois pas l'équivalent dans la version actuelle de Mono mais j'ai peut-être mal vu. Ce qui ne veut pas dire que ça ne viendra pas.
Quant au port USB, il est plutôt conseillé de communiquer avec le driver du périphérique USB plutôt qu'avec le port directement.
L'idée est au contraire plutôt pédagogique... Comprendre comment fonctionne une communication USB avec un périphérique. Etre capable de réaliser des petits périphériques simples fonctionnant sur port USB (et non série/parallèle comme c'est souvent le cas)
Je comprends. Mais il ne faut pas mélanger les genres. Si vous voulez accéder à un périphérique depuis du code managé, il faudra utiliser les classes qui permettent l'accès à un device driver particulier comme la future classe SerialPort ou celles qui donneront (dans l'avenir, peut-être) les mêmes possibilités que l'API DeviceIOControl aujourd'hui. Si vous voulez écrire un pilote, .Net n'est pas l'outil adapté à ce jour.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
noone@nowhere.com wrote:
Une telle solution fonctionnera-t-elle également sous d'autres OS avec
Mono ?
L'accès aux ports série sous le framework 2.0 est/sera possible via le
namespace System.IO.Ports et la classe SerialPort. Je ne vois pas
l'équivalent dans la version actuelle de Mono mais j'ai peut-être mal
vu. Ce qui ne veut pas dire que ça ne viendra pas.
Quant au port USB, il est plutôt conseillé de communiquer avec le
driver du périphérique USB plutôt qu'avec le port directement.
L'idée est au contraire plutôt pédagogique...
Comprendre comment fonctionne une communication USB avec un
périphérique.
Etre capable de réaliser des petits périphériques simples fonctionnant
sur port USB (et non série/parallèle comme c'est souvent le cas)
Je comprends. Mais il ne faut pas mélanger les genres. Si vous voulez
accéder à un périphérique depuis du code managé, il faudra utiliser les
classes qui permettent l'accès à un device driver particulier comme la
future classe SerialPort ou celles qui donneront (dans l'avenir,
peut-être) les mêmes possibilités que l'API DeviceIOControl aujourd'hui.
Si vous voulez écrire un pilote, .Net n'est pas l'outil adapté à ce
jour.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Une telle solution fonctionnera-t-elle également sous d'autres OS avec Mono ?
L'accès aux ports série sous le framework 2.0 est/sera possible via le namespace System.IO.Ports et la classe SerialPort. Je ne vois pas l'équivalent dans la version actuelle de Mono mais j'ai peut-être mal vu. Ce qui ne veut pas dire que ça ne viendra pas.
Quant au port USB, il est plutôt conseillé de communiquer avec le driver du périphérique USB plutôt qu'avec le port directement.
L'idée est au contraire plutôt pédagogique... Comprendre comment fonctionne une communication USB avec un périphérique. Etre capable de réaliser des petits périphériques simples fonctionnant sur port USB (et non série/parallèle comme c'est souvent le cas)
Je comprends. Mais il ne faut pas mélanger les genres. Si vous voulez accéder à un périphérique depuis du code managé, il faudra utiliser les classes qui permettent l'accès à un device driver particulier comme la future classe SerialPort ou celles qui donneront (dans l'avenir, peut-être) les mêmes possibilités que l'API DeviceIOControl aujourd'hui. Si vous voulez écrire un pilote, .Net n'est pas l'outil adapté à ce jour.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
noone
Merci de vos conseils, j'avais pensé à .Net/C# comme une manière d'éviter le C++ mais il reste encore du travail côté liaison avec le hardware... Dommage car je trouve ce langage très "élégant".
Merci de vos conseils, j'avais pensé à .Net/C# comme une manière
d'éviter le C++ mais il reste encore du travail côté liaison avec
le hardware... Dommage car je trouve ce langage très "élégant".
Merci de vos conseils, j'avais pensé à .Net/C# comme une manière d'éviter le C++ mais il reste encore du travail côté liaison avec le hardware... Dommage car je trouve ce langage très "élégant".
Christophe Lauer [MS]
Bonjour,
wrote:
je voudrais savoir comment communiquer en C# avec le port parallèle et/ou le port série
A mon avis, en attendant que le support des ports série ne soit inclus en standard dans le .NET Framework 2.0, le plus simple pour exploiter un port RS323 depuis le .NET Framework 1.1 est d'utiliser un exemple d'implémentation d'un telle classe fournie dans les samples de code de VC++.
Merci au support muti-langages de .NET, vous pourrez utiliser cette classe rs232 depuis tout autre langage, C# y compris.
Pour télécharger ces samples de code : http://www.microsoft.com/downloads/details.aspx?FamilyIdn6FAC4B-5B51-41FE-9604-1D9752E8A71A&displaylang=en
La classe en question se trouve ensuite dans : (INSTALLBASE)VC.NET SamplesVC.NET - Framework - Using the COM PortRs232.h
je voudrais de plus que mon appli soit portable sur Linux/Unix (via Mono) je dois donc éviter les appels à Win32 et fonctionner uniquement en code managé.
Hmmm... Là, il faudrait vérifier dans la licence transmise avec ces exemples de code quelles en sont les conditions d'utilisation précises autorisées.
HTH,
-- Christophe Lauer - Relations Techniques Editeurs de Logiciels Division Développeurs et Plateforme d'Entreprise - Microsoft France http://www.microsoft.com/france/msdn/
This posting is provided "AS IS" with no warranties, and confers no rights.
Bonjour,
noone@nowhere.com wrote:
je voudrais savoir comment communiquer en C#
avec le port parallèle et/ou le port série
A mon avis, en attendant que le support des ports série ne soit inclus en
standard dans le .NET Framework 2.0, le plus simple pour exploiter un port
RS323 depuis le .NET Framework 1.1 est d'utiliser un exemple
d'implémentation d'un telle classe fournie dans les samples de code de VC++.
Merci au support muti-langages de .NET, vous pourrez utiliser cette classe
rs232 depuis tout autre langage, C# y compris.
Pour télécharger ces samples de code :
http://www.microsoft.com/downloads/details.aspx?FamilyIdn6FAC4B-5B51-41FE-9604-1D9752E8A71A&displaylang=en
La classe en question se trouve ensuite dans : (INSTALLBASE)VC.NET
SamplesVC.NET - Framework - Using the COM PortRs232.h
je voudrais de plus que mon appli soit portable sur Linux/Unix (via
Mono) je dois donc éviter les appels à Win32 et fonctionner
uniquement en code managé.
Hmmm... Là, il faudrait vérifier dans la licence transmise avec ces exemples
de code quelles en sont les conditions d'utilisation précises autorisées.
HTH,
--
Christophe Lauer - Relations Techniques Editeurs de Logiciels
Division Développeurs et Plateforme d'Entreprise - Microsoft France
http://www.microsoft.com/france/msdn/
This posting is provided "AS IS" with no warranties, and confers no
rights.
je voudrais savoir comment communiquer en C# avec le port parallèle et/ou le port série
A mon avis, en attendant que le support des ports série ne soit inclus en standard dans le .NET Framework 2.0, le plus simple pour exploiter un port RS323 depuis le .NET Framework 1.1 est d'utiliser un exemple d'implémentation d'un telle classe fournie dans les samples de code de VC++.
Merci au support muti-langages de .NET, vous pourrez utiliser cette classe rs232 depuis tout autre langage, C# y compris.
Pour télécharger ces samples de code : http://www.microsoft.com/downloads/details.aspx?FamilyIdn6FAC4B-5B51-41FE-9604-1D9752E8A71A&displaylang=en
La classe en question se trouve ensuite dans : (INSTALLBASE)VC.NET SamplesVC.NET - Framework - Using the COM PortRs232.h
je voudrais de plus que mon appli soit portable sur Linux/Unix (via Mono) je dois donc éviter les appels à Win32 et fonctionner uniquement en code managé.
Hmmm... Là, il faudrait vérifier dans la licence transmise avec ces exemples de code quelles en sont les conditions d'utilisation précises autorisées.
HTH,
-- Christophe Lauer - Relations Techniques Editeurs de Logiciels Division Développeurs et Plateforme d'Entreprise - Microsoft France http://www.microsoft.com/france/msdn/
This posting is provided "AS IS" with no warranties, and confers no rights.
noone
> Pour télécharger ces samples de code : http://www.microsoft.com/downloads/details.aspx?FamilyIdn6FAC4B-5B51-41FE-9604-1D9752E8A71A&displaylang=en
merci pour le lien
> Pour télécharger ces samples de code :
http://www.microsoft.com/downloads/details.aspx?FamilyIdn6FAC4B-5B51-41FE-9604-1D9752E8A71A&displaylang=en
> Pour télécharger ces samples de code : http://www.microsoft.com/downloads/details.aspx?FamilyIdn6FAC4B-5B51-41FE-9604-1D9752E8A71A&displaylang=en
merci pour le lien
Paul Bacelar
Un driver en C++ ? C'est pas interdit, mais utilisez le C, c'est beaucoup plus simple. -- Paul Bacelar
wrote in message news:
Merci de vos conseils, j'avais pensé à .Net/C# comme une manière d'éviter le C++ mais il reste encore du travail côté liaison avec le hardware... Dommage car je trouve ce langage très "élégant".
Un driver en C++ ? C'est pas interdit, mais utilisez le C, c'est beaucoup
plus simple.
--
Paul Bacelar
<noone@nowhere.com> wrote in message
news:pan.2004.11.07.08.23.20.734611@nowhere.com...
Merci de vos conseils, j'avais pensé à .Net/C# comme une manière
d'éviter le C++ mais il reste encore du travail côté liaison avec
le hardware... Dommage car je trouve ce langage très "élégant".
Un driver en C++ ? C'est pas interdit, mais utilisez le C, c'est beaucoup plus simple. -- Paul Bacelar
wrote in message news:
Merci de vos conseils, j'avais pensé à .Net/C# comme une manière d'éviter le C++ mais il reste encore du travail côté liaison avec le hardware... Dommage car je trouve ce langage très "élégant".