package DLL

Un fichier DLL (Dynamic Link Library) contient une bibliothèque partagée de fonctions pouvant être utilisées par les programmes Windows. Le package DLL utilise un fichier .dll comme référence et appelle des fonctions à partir du robot.

Avant de commencer

Effectuez les actions suivantes dans le package DLL, dans le cadre de l'utilisation de l'ensemble des actions disponibles :
Remarque :
  • Si vous créez des robots à l'aide d'une DLL personnalisée et que celle-ci dépend de la bibliothèque Apache log4net, nous vous recommandons d'utiliser :
    • log4net version 2.0.11 ou ultérieure dans la DLL personnalisée.
    • Mettez à jour l'Agent de robot (version 21.210 ou ultérieure) même si la mise à jour de l'Agent de robot est facultative.
  • Seules les DLL construites à l'aide de l'Microsoft .NET Framework sont prises en charge.
  • Le Exécuter DLL package est compatible avec les versions suivantes de Microsoft .NET : 4.6, 4.7 et 4.8.
  • Lorsque vous créez une robot et que vous utilisez la session locale avec la boucle, assurez-vous que vous utilisez la fermeture de la session action dans la robot. Si vous n'utilisez pas la commande de fermeture de session, la session locale ouvre alors AutomationAnywhere.ManagedDLLWrapper.exe à chaque itération de la boucle. En conséquence, vous manquerez d'espace mémoire et l'robot échouera.
Important : Si vous utilisez différentes versions de la DLL package dans un robot parent et un robot enfant, la possibilité de partager une session entre robots n'est actuellement pas prise en charge. Pour partager une session entre les robots parent et enfant, assurez-vous d'utiliser la même version du package dans les robots parent et enfant.
  1. Utilisez l'action Ouvrir pour spécifier l'emplacement du fichier .dll que vous souhaitez utiliser et le nom de la session. Utilisez ce même nom de session pour les autres actions. Le .dll référencé est automatiquement ajouté en tant que dépendance de robot.
  2. Utilisez l'action Exécuter la fonction pour exécuter une fonction à partir du .dll et enregistrer sa valeur de sortie en tant que variable.
  3. Lorsque vous avez exécuté les fonctions requises, fermez la référence .dll. Il est important de fermer la référence .dll afin de libérer la mémoire du système d'exploitation.

    Windows et les versions appropriées de Microsoft .NET Framework sont disponibles sur les périphériques exécutant les DLL.

    Pour consulter les journaux du lanceur de robot, accédez à C:\ProgramData\AutomationAnywhere\BotRunner\Logs\<mois en cours>\Bot_Launcher-<date du jour>.log.zip. Chaque dossier compressé contient un fichier avec des données sur l'exécution du code, ce qui est utile pour le débogage.

Remarque : Si le fichier .dll utilise des fonctions .NET ou des classes d'un autre fichier .dll, vous devez ajouter le deuxième fichier .dll en tant que dépendance manuelle du robot.

Dépendances de Robot

Lorsque vous importez plusieurs DLL qui ont une DLL principale et d'autres DLL référencées à partir de celle-ci, assurez-vous d'avoir toutes les DLL dans un seul dossier. En outre, les DLL référencées doivent être appelées à l'aide d'un nom de session différent du nom utilisé dans la DLL principale. L'exécution de votre robot échouera si le même nom de session est utilisé à la fois dans la DLL principale et les DLL référencées.

Actions dans le package DLL

Le package DLL comprend les actions suivantes :

Action Description
Fermer

Reportez-vous à la rubrique action Fermer

Ouvrir

Reportez-vous à la rubrique action Ouvrir

Exécuter la fonction (ancien) Voir Utilisation de l'action Exécuter une fonction.
Remarque :
  • L'action Exécuter la fonction (héritée) n'est plus disponible dans le package Exécuter DLL. Nous vous recommandons d'utiliser l'action Exécuter la fonction du package Exécuter DLL, car cette action est une version améliorée de l'action Exécuter la fonction (héritée).

    Notez que les robots qui utilisent l'action Exécuter la fonction (héritée) continueront à fonctionner sans problème.

  • Cette action est nommée Exécuter une fonction (héritée) depuis la version Enterprise A2019.16. Cette action est nommée Exécuter une fonction dans les versions antérieures à la version Enterprise A2019.15.
Exécuter la fonction Reportez-vous à la rubrique Utilisation de l'action Exécuter la fonction.

Types de données pris en charge dans les fonctions DLL

Le tableau suivant répertorie les variables et les types de données que vous pouvez utiliser comme paramètre d'entrée ou de sortie dans les fonctions DLL.
Remarque : Les actions Exécuter une fonction et Exécuter une fonction (héritée) ne prennent pas en charge les types de données définis par l'utilisateur dans le champ Paramètre de la fonction ou Attribuer une sortie à une variable.
Type de variable en tant que paramètres d'entrée ou de sortie Types de données pris en charge dans .NET
Chaîne
  • Char
  • Byte
  • Chaîne
  • Chaîne
  • Sbyte
Nombre
  • UInt16
  • Int16
  • UInt32
  • Int32
  • UInt64
  • Int64
  • Int
  • Simple
  • Decimal
  • Float
  • Double
Booléen
  • Booléen
  • bool
Date/heure
  • Date/heure
Liste
  • Uint16[]
  • Int16[]
  • Int32[]
  • Int64[]
  • Int[]
  • Char[]
  • Single[]
  • Decimal[]
  • Float[]
  • Double[]
  • Boolean[]
  • bool[]
  • Byte[]
  • String[]
  • Datetime[]
  • List<UInt16>
  • List<Int16>
  • List<Int32>
  • List<Int64>
  • List<Int>
  • List<Char>
  • List<Single>
  • List<Decimal>
  • List<Float>
  • List<Double>
  • List<Boolean>
  • List<bool>
  • List<Byte>
  • List<String>
  • List<Datetime>
  • List<SByte>
  • List<UInt32>
  • List<UInt64>
Remarque : Le type de données C# IList n'est pas pris en charge et ne fonctionne pas avec le type de données List Automation 360.
Tableau
  • Uint16[,]
  • Int16[,]
  • Int32[,]
  • Int64[,]
  • Int[,]
  • Char[,]
  • Single[,]
  • Decimal[,]
  • Float[,]
  • Double[,]
  • Boolean[,]
  • bool[,]
  • Byte[,]
  • String[,]
  • Datetime[,]
  • Byte[,]
  • UInt32[,]
  • UInt64[,]
Remarque : La variable de type Tableau est équivalente à une variable de type tableau à deux dimensions dans .NET.
Dictionnaire
  • Dictionary<String,UInt16>
  • Dictionary<String,Int16>
  • Dictionary<String,Int32>
  • Dictionary<String,Int64>
  • Dictionary<String,Int>
  • Dictionary<String,Char>
  • Dictionary<String,Single>
  • Dictionary<String,Decimal>
  • Dictionary<String,Float>
  • Dictionary<String,Double>
  • Dictionary<String,Boolean>
  • Dictionary<String,bool>
  • Dictionary<String,Byte>
  • Dictionary<String,String>
  • Dictionary<String,Datetime>
  • Dictionary<Int,String>
  • Dictionary<Decimal,String>
  • Dictionary<Boolean,String>
  • Dictionary<String,SByte>
  • Dictionary<String,UInt32>
  • Dictionary<String,UInt64>
Remarque : Lors de la création de la fonction DLL .Net, utilisez le type de données IDictionary au lieu du type de données Dictionary.