AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Bluetooth LE unter Windows 11 funktioniert nicht mehr
Thema durchsuchen
Ansicht
Themen-Optionen

Bluetooth LE unter Windows 11 funktioniert nicht mehr

Ein Thema von elmar.faber · begonnen am 13. Aug 2023 · letzter Beitrag vom 3. Jan 2025
Antwort Antwort
elmar.faber

Registriert seit: 10. Sep 2007
Ort: Neustadt (Hessen)
37 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#1

AW: Bluetooth LE unter Windows 11 funktioniert nicht mehr

  Alt 22. Aug 2023, 06:44
Nein leider nicht, hättest du mal einen funktionierenden Quellcode Ansatz? Irgendwie scheine ich ja etwas grundlegendes falsch zu machen
Elmar Faber
  Mit Zitat antworten Zitat
rabatscher

Registriert seit: 13. Dez 2007
Ort: Bruck an der Mur
69 Beiträge
 
#2

AW: Bluetooth LE unter Windows 11 funktioniert nicht mehr

  Alt 13. Okt 2023, 21:05
Einen kleinen Nachtrag habe ich noch... die Methode DiscoverServices wird bei mir in einem Thread ausgeführt - WinRT hat da so seine
Eigenheiten.... eventuell hilft das..
  Mit Zitat antworten Zitat
Graw

Registriert seit: 26. Apr 2017
77 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Bluetooth LE unter Windows 11 funktioniert nicht mehr

  Alt 11. Mär 2024, 10:43
Hallo,

Zitat:
wie komme ich aktuell an die Datei ran?
es sieht so aus als wenn man sich bei https://quality.embarcadero.com/login.jsp nicht mehr anmelden kann?
Oder ist es nur ein aktuelles kurzzeitiges Problem?
Hat sich erledigt, der Download funktioniert.

Allerdings bekomme ich kein Bluetooth LE Projekt ans laufen.

Ist dies auch eine Möglichkeit um das Beispiel "ExploreDevicesLE" lauffähig zu bekommen?
Ich kann nur Geräte suchen. Sobald ich auf "Get services" klicke friert die Software ein.

Geändert von Graw (11. Mär 2024 um 14:51 Uhr)
  Mit Zitat antworten Zitat
diakroem

Registriert seit: 3. Jan 2025
1 Beiträge
 
#4

AW: Bluetooth LE unter Windows 11 funktioniert nicht mehr

  Alt 3. Jan 2025, 12:52
Hallo zusammen,
auch ich habe das Problem, dass ein BLE-Programm unter WIN11 nicht zum laufen zu kriegen ist (war?).
3 Tage sind jetzt mit Analysen ins Land gegangen, quality.emba..com gibt ja auch nichts her, der Kunde steht mir im Nacken, weil er alle Rechner auf Win11 umrüsten musste, die Software nun nicht mehr funktionierte ...

Wie dem auch sei, bei mir hat nun folgendes Workaround, das ich nicht sehr schön finde, funktioniert, auch den BLE-Explorer habe ich so zum laufen bekommen.

Da es nur ein kleiner Eingriff ist, gebe ich es zum Testen weiter, bis die nächste Generation, hoffentlicher fehlerfrei, Syste.Win.BluetoothWinRT.pas daherkommt.

Bei mir kehrte die "TAsyncOperation" in "DoGetCharacteristics" nie zurück,
daher habe ich die Procedure so geändert, dass der service3-Teil auskommentiert ist und nur die alte Version der Ermittlung der Characteristics ausgeführt wird. Hier als die ganze Procedure :
function TWinRTBluetoothGattService.DoGetCharacteristics: TBluetoothGattCharacteristicList;
var
I: Integer;
service3 : GenericAttributeProfile_IGattDeviceService3;
LGattCharacteristics: IVectorView_1__GenericAttributeProfile_IGattCharac teristic;
res3 : IAsyncOperation_1__GenericAttributeProfile_IGattCh aracteristicsResult;
charactersRes : GenericAttributeProfile_IGattCharacteristicsResult ;
characteristic : GenericAttributeProfile_IGattCharacteristic;
begin
CheckNotClosed;
FCharacteristics.Clear;

if Supports(FGattService, GenericAttributeProfile_IGattDeviceService3, service3) then
{* begin
if TAsyncOperation<IAsyncOperation_1__GenericAttribut eProfile_IGattCharacteristicsResult>.Wait(
service3.GetCharacteristicsAsync(BluetoothCacheMod e.Uncached), res3) = AsyncStatus.Completed
then
begin
charactersRes := res3.GetResults;
LGattCharacteristics := charactersRes.Characteristics;
for I := LGattCharacteristics.Size - 1 downto 0 do
begin
characteristic := LGattCharacteristics.GetAt(I);
FCharacteristics.Add(TWinRTBluetoothGattCharacteri stic.Create(Self, characteristic));
end;
end;
end

else *}
begin
LGattCharacteristics := (FGattService as GenericAttributeProfile_IGattDeviceService2).GetAl lCharacteristics;
if LGattCharacteristics.Size > 0 then
for I := 0 to LGattCharacteristics.Size - 1 do
FCharacteristics.Add(TWinRTBluetoothGattCharacteri stic.Create(Self, LGattCharacteristics.GetAt(I)));
end;
Result := FCharacteristics;
end;

Suddenly, meine ganzes Programm läuft wieder.

Bitte gerne teste, ich freue mich auf Rückmeldungen ...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz