Über Bluetooth (mit dem OBEX - Protokoll) Dateien an ein Android-Gerät senden
-
Was für Fehler? Die Bibliothek ist von 2010. Keine Ahnung, ob das noch funktioniert. Aber so viel Code ist das nicht, sollte man zumindest schnell kompilierbar bekommen. Wenn es die API´s überhaupt noch gibt.
-
Hallo Mechanics,
die meisten Fehler-Meldungen sagen:Neudefinition; unterschiedliche Bindung,
oder
Makro-Neudefinitionoder, oder, oder
oder andere Fehler sagen:
(Grob übersetzt)
Benutze sichere Funktionen du Depp: Also die mit _sEs sind einfach sehr viele verschiedene Fehler.
-
Aber kannst du die lösen?
Wie gesagt, seit 2010 hat sich schon ein bisschen was geändert, kann sein, dass man alten Code anpassen muss.
-
Aber kannst du die lösen?
Nein!
-
Dann poste mal einen konkreten Fehler, und den dazu gehörigen Code.
-
@Mechanics sagte in Über Bluetooth (mit dem OBEX - Protokoll) Dateien an ein Android-Gerät senden:
Dann poste mal einen konkreten Fehler, und den dazu gehörigen Code.
Vorher bitte noch Visual Studio auf Englisch umstellen.
@64bit sagte in Über Bluetooth (mit dem OBEX - Protokoll) Dateien an ein Android-Gerät senden:
Benutze sichere Funktionen du Depp: Also die mit _s
#define _CRT_SECURE_NO_WARNINGS
Compilermeldungen bitte nicht übersetzen. Copy and Paste.
-
Ich habe es hinbekommen.
Es kompiliert jetzt!
(WIN32_LEAN_AND_MEAN ist sehr wichtig.)
-
Ich taste mich langsam ran.
Zur Zeit versuche ich vergeblich hier:
std::wstring devad = L"84:BE:52:B3:CA:B2"; BTOBEX::Session* btObexSession = new BTOBEX::Session(); bool connOk = btObexSession->Connect(devad, 5, 8192); std::cout << connOk;
eine 1 zu bekommen.
-
Debug mal rein. Da sind irgendwelche WinApi Aufrufe dahinter. Was geben die zurück? Schau in die Doku, vielleicht kann man GetLastError oder so aufrufen.
-
Also ich bekomme entweder irgendwelche Zugriffsverletzungen oder einen Time-OUT-Fehler.
Auch diese Änderung:
bool Connect(Socket* sock, const std::wstring& devAddress, GUID service) { BTH_ADDR btAddr = 0; BTAddressFromString(devAddress, btAddr); SOCKADDR_BTH sockAddr = {0}; //ZeroMemory(&sockAddr, sizeof(SOCKADDR_BTH)); sockAddr.addressFamily = AF_BTH; sockAddr.btAddr = btAddr; sockAddr.serviceClassId = service; sockAddr.port = (ULONG) BT_PORT_ANY; //port; int ret = ::connect(sock->btSock, (sockaddr*)&sockAddr, sizeof(SOCKADDR_BTH)); if(ret == 0) return true; return false; }
in Header: BTSockSession.h
bringt mich nicht weiter.
-
Es geht jetzt!
Ich bekomme jetzt eine 1 zurück.Aber ich brauche dafür noch einen C++ Win-Api - Weg wie ich das COM-Bluetooth-Port setze.
Wenn ich manuell in den Windows 10 - Bluetootheinstellungen ein COM-Port festlege und dieses als Portnummer übergebe funktioniert es, ansonsten nicht.