Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Falcon SDK et Delphi
#3
Bonjour Thierry,

J'ai créé un petit projet exemple en Delphi qui montre comment cela fonctionne globalement. Cela devrait déjà beaucoup t'aider. Si tu as des questions, n'hésite pas à me contacter.

Avant d'utiliser, il est nécessaire d'enregistrer la DLL signée du Falcon SDK :
1. Copiez le dossier "Falcon SDK 6 Signé" dans vos documents.
2. Ouvrez l'invite de commande (CMD) en tant qu'administrateur.
3. Allez dans le dossier C:\Windows\Microsoft.NET\Framework\v4.0.30319.
4. Enregistrez la DLL avec la commande suivante : regasm "C:\Users\Utilisateur\Documents\Falcon SDK 6 Signé\KNXlib.dll" /tlb:KNXlib.tlb /codebase
5. Ensuite, allez dans le dossier C:\Windows\Microsoft.NET\Framework64\v4.0.30319.
6. Enregistrez à nouveau la DLL avec la même commande : regasm "C:\Users\Utilisateur\Documents\Falcon SDK 6 Signé\KNXlib.dll" /tlb:KNXlib.tlb /codebase
7. Si un message d'erreur indique que l'enregistrement a été bloqué, il peut être nécessaire de désactiver la fonction "Accès protégé aux dossiers".
8. Vous pouvez vérifier l'enregistrement réussi dans le Registre :
   Appuyez sur [Windows]+R et tapez regedit pour ouvrir l'éditeur de registre.
   Vérifiez les chemins suivants :
   Ordinateur\HKEY_CLASSES_ROOT\CLSID{E45D1244-ABCD-4E1D-8D9F-9992B7F017A2} 
   Ordinateur\HKEY_CLASSES_ROOT\WOW6432Node\CLSID{E45D1244-ABCD-4E1D-8D9F-9992B7F017A2}


Les commandes sont identiques à celles de WinDev, mais la gestion des Assemblies .NET dans Delphi est un peu différente. Je vais maintenant reprendre quelques exemples de mon code source pour illustrer les commandes disponibles :

Connectez-vous à la passerelle IP :
MyKNXDotNet := CreateOleObject('KNXlib.KnxController');
MyKNXDotNet.Connect('192.168.178.42', 3671, False)


Connectez-vous à la passerelle IP sécurisée :
MyKNXDotNet := CreateOleObject('KNXlib.KnxController');
MyKNXDotNet.ConnectSecure('192.168.178.150', 3671, False, '1.1.243', 'file.knxkeys', 'password')

Envoyer DPT1 :
MyKNXDotNet.WriteBool('1/0/0' , True)

Envoyer DPT9.1 :
MyKNXDotNet.WriteValueToDPT(Groupaddress, value as string, DPTupper value, DPTlower value)
MyKNXDotNet.WriteValueToDPT('11/7/4', '20.5', 9, 1)

A lire :
MyKNXDotNet.ReadValueAsync('11/7/4')

Envoi DPT5.1 :
MyKNXDotNet.WriteValueToDPT('6/0/9', '90', 5, 1)

Envoi DPT5.4 :
MyKNXDotNet.WriteValueToDPT('6/0/9', '240', 5, 4)

Lire DPT9.1 :
MyKNXDotNet.ReadValue('11/7/4', 9, 1)

Envoyer la date actuelle :
MyKNXDotNet.WriteDate('11/5/0')

Envoyer l'heure actuelle :
MyKNXDotNet.WriteTime('11/5/1')

Envoyer la date actuelle en tant que DPT16 :
MyKNXDotNet.WriteTimeAsText('11/6/1')


Voici le lien de téléchargement :
https://www.knx-board.org/download.php?f...rapper.zip

Cordialement,
Guido
Répondre


Messages dans ce sujet
Falcon SDK et Delphi - par Thierry2607 - 09/06/2021, 12:23:13
RE: Falcon SDK et Delphi - par Smart Guido 73 - 17/11/2024, 11:42:44
RE: Falcon SDK et Delphi - par Smart Guido 73 - 17/11/2024, 15:29:48
Falcon SDK et Delphi - par Smart Guido 73 - 05/01/2025, 09:52:24
RE: Falcon SDK et Delphi - par Smart Guido 73 - 27/01/2025, 22:12:51

Atteindre :


Utilisateur(s) parcourant ce sujet :