Différences
Ci-dessous, les différences entre deux révisions de la page.
| 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/]] | ||
| + | |||
| + | |||