Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
prog:lazarus:cas:wmi:convfromdelphi [03/04/2023 17:36]
thierry [Code Lazarus]
prog:lazarus:cas:wmi:convfromdelphi [03/04/2023 17:47] (Version actuelle)
thierry [Sources & Ressources]
Ligne 1: Ligne 1:
-====== Conversion ​depuis ​Delphi ======+====== Conversion ​WbemScripting_TLB de Delphi ​vers Lazarus ​======
 ===== Énoncé du problème ===== ===== Énoncé du problème =====
 Dans mes recherches j'ai trouvé du code **Delphi** faisant (a peu prés) ce que je cherche a faire. Dans mes recherches j'ai trouvé du code **Delphi** faisant (a peu prés) ce que je cherche a faire.
Ligne 12: Ligne 12:
 Ci dessous nous allons trouver :  Ci dessous nous allons trouver : 
   - La source originale en Delphi que j'ai trouvé.   - La source originale en Delphi que j'ai trouvé.
 +  - Comment importer un TLB avec Lazarus
 +  - La source corrigé en Free Pascal
  
 ===== Sources Delphi Originales ===== ===== Sources Delphi Originales =====
-<code delphi Delphi>+<code delphi Delphi ​[enable_line_numbers="​true"​]>
 unit Unit1; unit Unit1;
  
Ligne 80: Ligne 82:
  
 {{:​prog:​lazarus:​cas:​wmi:​activx1.jpg?​400|}} ​ {{:​prog:​lazarus:​cas:​wmi:​activx1.jpg?​400|}} ​
 +
 +Plus d'​infos ici : [[https://​wiki.lazarus.freepascal.org/​LazActiveX]]
 ==== Importer le TLB ==== ==== Importer le TLB ====
 Cela nous donne accés a un nouveau menu ''​Importer la bibliothèque de types...''​ : Cela nous donne accés a un nouveau menu ''​Importer la bibliothèque de types...''​ :
Ligne 97: Ligne 101:
  
 Exemple ''​TSWbemSink''​ est devenu ​ ''​TEvsSWbemSink''​ et ses properties ont changé: ​ Exemple ''​TSWbemSink''​ est devenu ​ ''​TEvsSWbemSink''​ et ses properties ont changé: ​
-<code delphi Delphi>+<code delphi Delphi ​[enable_line_numbers="​true"​]>
   TSWbemSink = class(TOleServer)   TSWbemSink = class(TOleServer)
   private   private
Ligne 126: Ligne 130:
  
 </​code>​ </​code>​
-<code delphi Lazarus>+<code delphi Lazarus ​[enable_line_numbers="​true"​]>
   TEvsSWbemSink = Class(TEventSink)   TEvsSWbemSink = Class(TEventSink)
   Private   Private
Ligne 150: Ligne 154:
 </​code>​ </​code>​
 ==== Code Lazarus ==== ==== Code Lazarus ====
-<code delphi [enable_line_numbers="​true",​highlight_lines_extra="​14"​]>​+<code delphi [enable_line_numbers="​true",​highlight_lines_extra="​14,​25,​29,​30,​53,​55,​57,​60,​61"]>
 unit Unit1; unit Unit1;
  
Ligne 228: Ligne 232:
 end. end.
 </​code>​ </​code>​
 +===== Résultat =====
 +{{:​prog:​lazarus:​cas:​wmi:​extra1.jpg|}}
 +====== Sources & Ressources ======
 +  * [[https://​wiki.lazarus.freepascal.org/​LazActiveX]]
 +  * [[https://​theroadtodelphi.com/​2011/​04/​18/​delphi-and-wmi-events/​]]
 +
 +