RS232: welche library

Gast #983509
Lesenswert?

hallo,

für ein Projekt soll ich vom FPGA Daten an den PC senden und dann dort 
weiterverarbeiten und in eine Datei speichern.
ich benutze dafür visual studio2008 auf eine windows xp-rechner. die 
sprache ist c++

wie ich die daten weiterverarbeite und in eine datei speicher, das weiß 
ich, nur die schnittstellenprogrammierung macht mir jetzt paar gedanken, 
da meine c++ eher gering sind.

nach längeren googlen habe ich auch mehrere möglichkeiten gefunden, die 
man für die schnittstelle benutzen kann.

einmal ist es die cserial-library, die man extra downloaden müsste, 
davon halte ich eher weniger.

dann ist es serial communications in Win32
http://msdn.microsoft.com/en-us/library/ms810467.aspx

und als letztes hätte ich noch die klasse system.io.ports
http://msdn.microsoft.com/de-de/library/system.io.ports.serialport.aspx

meine frage ist jetzt welche quelle wäre am besten für mein projekt, 
meine c++-programme hatte ich bis jetzt nur mit win32-konsolenanwendung 
geschrieben.

mir hat jemand erzählt, dass bei system.io.ports die library als clr 
schon verfügung steht, da habe ich aber bis jetzt noch nie mit 
gearbeitet

wo liegen denn die unterschiede?
und was muss ich bei den unterschiedlichen projekttypen beachten?

wichtig ist mir auch, das später mein programm auch ohne visual studio 
auf jeden rechner gestartet werden kann.
#983552
Lesenswert?

Um die Klasse System.Io.Ports.SerialPort zu nutzen, musst Du ein .NET 
Projekt erstellen. Das kann sowohl eine Konsolen- als auch eine 
Windows-Anwendung sein.
Dafür muss auf dem Target-Rechner aber das .NET Framework installiert 
werden (ist kein Problem).

Falls Du aber eine Win32- oder eine MFC- (oder...?) Anwendung erstellen 
willst, musst Du entweder mit CreateFile() (Dein erster Link) etc. 
arbeiten oder eine (andere) fertige Klasse verwenden.
#983596
Lesenswert?

frkifrov wrote:
> danke schön!
>
> wenn ich visual studio 2008 (standart) auf dem rechner installiere, wird
> da nicht auch automatisch .NET-Framework mit installiert?

Ja, aber Du hast nach der Lauffähigkeit Deines Programms auf "jedem 
Rechner" gefragt. Dort muss das .NET Framework installiert werden, was 
aber kein Problem ist und z.B. über Windows Update geht.
Gast #984223
Lesenswert?

hab im internet jetzt mal ein vernünftiges beispiel gefunden

schreibe mein programm in eine win32-konsolenanwendung (projekt)
jetzt krieg ich folgende Fehlermeldung

1>c:\documents and settings\a124368\my documents\visual studio 
2008\projects\schnittstellentest\schnittstellentest\schnittstelle.cpp(43 
)  : error C2664: 'CreateFileW': Konvertierung des Parameters 1 von 
'const char *' in 'LPCWSTR' nicht möglich
1>        Die Typen, auf die verwiesen wird, sind nicht verknüpft; die 
Konvertierung erfordert einen reinterpret_cast-Operator oder eine 
Typumwandlung im C- oder Funktionsformat.

kann mir hier jemand weiterhelfen, verwende ja visual studio 2008
#984242
Lesenswert?

@ frkifrov

Ich will Dir zwei Tipps geben:
1. Poste doch bitte auch den Sourcecode dazu, damit man sieht, was Du 
geschrieben hast. Idealerweise auf's Minimum reduziert.

2. Da Du ja jetzt eine Library ausgesucht hast, macht es Sinn, für Deine 
neue Frage auch einen neuen Thread zu eröffnen mit einem 
aussagekräftigen Titel wie z.B.:
"VS2008 C++ Win32 CreateFile Fehlermeldung"

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren