Konvertierung von Parameter nicht möglich



  • Hallo Leute, ich hab folgendes Problem: Ich hab eine Anwendung programmiert, mit QT und mit Visual C++, die nun mit der seriellen Schnittstelle kommunizieren soll. Ich versuche es erstmal mit der COM2. Um dies zu Verwirklichen verwende ich die Methode Createfile(...). Nun, ich habe erst versucht direkt in meinem eigentlich Programm mit Createfiel zu arbeiten, aber das gab Probleme, der Compiler hat mir immer einen Syntaxfheler gebracht obwohl das gar nicht sein kann weil auf jeder Doku dieselbe Syntax stand. Der Fehler: error C2664: 'CreateFileW' : Konvertierung des Parameters 1 von 'char [6]' in 'const unsigned short *' nicht moeglich
    Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat

    Ich weiss nicht was ich machen soll, kann mir denn jemand helfen, ich muss dieses Problem lösen.

    Ich dachte zuerst irgendwas stimmt mit meinem Programm nicht aber als ich dann versucht hab, die COM2 EINFACH anzusprechen, d.h. mit einem simplen Code, ging es einwandfrei. Nur in meinem eigentlichen Programm kommt ein Fehler der sonst im simplen Code nicht vorkommt. Komisch!!! Ich hab auch schon in Dokus gelesen, es handelt sich, glaube ich zumindest mal, um Zeichensätze(Unicode, ASCII usw.) auf jeden Fall ist die Rede von LPCTSTR und Ähnlichem...

    Ich bedanke mich bei jedem der mit antwortet...
    Thx..........! 😕



  • Zeig mal deinen Funktionsaufruf, du musst um alle Strings auf jeden Fall das TEXT-Makro drummachen, also z.B. so: TEXT("Das ist ein String ;)")

    cya 🙂



  • Was für Bibliotheken brauche ich oder was kommt zusätzlich noch dazu???

    Funktionsaufruf: handle = CreateFile("COM2:", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0,NULL);

    Also muss ich jetzt um das "COM2:" ein TEXT Makro setzen oder?



  • das ist ein WinApi problem.
    Thread verschoben ins WinApi Forum. WinAPI



  • Ja genau, um "COM2:", du musst nur noch die <windows.h> inkludieren und schon geht's ab ;).

    cya 🙂



  • Also ich hab das jetzt gemacht und die Fehlermeldung ist weg, aber mitten im Programm kommt er an eine Stelle und dann bekomm ich eine Windows Fehlermeldung. Ich hab auch eine anderen Wert in meinem HANDLE Objelkt wie davor(da steht ne hex Zahl jetzt, davor war 0xFFFFFFFF drin 🙂 )

    Ich hoff ich komm langsam zu einer Lösung, und nochmal danke gelle??? 😃



  • Gern geschehen :).

    cya 🙂


Anmelden zum Antworten