17/11/2024, 15:29:48
(Modification du message : 07/12/2024, 11:56:43 par Smart Guido 73.)
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
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