Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1187 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  Appel à une fonction WMI

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Appel à une fonction WMI

n°1211027
Olyv
Posté le 29-09-2005 à 18:54:19  profilanswer
 

Salut
 
je fais appel à une fonction WMI (EnableStatic) faisant partie de 'Win32_NetworkAdapterConfiguration'.
 
Cette fonction permet de changer l'adresse IP de la machine sur l'adaptateur réseau 0.
 
Voici la signature de la fonction:

Code :
  1. uint32 EnableStatic(
  2.   string IPAddress[],
  3.   string SubnetMask[]
  4. );
  5. Parameters
  6. IPAddress
  7.     [in] Lists all the static IP addresses for the current network adapter. Example: 155.34.22.0.
  8. SubnetMask
  9.     [in] Subnet masks that complement the values in the IPAddress parameter. Example: 255.255.0.0.


 
Voici mon code faisant appel à la fonction:
 

Code :
  1. var
  2.   WService: SWbemServices;
  3.   WClass: SWbemObject;
  4.   WMethod: SWbemMethod;
  5.   WInParameters: SWbemObject;
  6.   WInParameteIPAddress: SWbemProperty;
  7.   WInParameteSubnetMask: SWbemProperty;
  8.   Parametre1, Parametre2: OleVariant;
  9.   WResult: SWbemObject;
  10.   WReturnValue: OleVariant;
  11. begin
  12.   WService := SWbemLocator.ConnectServer('.', 'ROOT\CIMV2', '', '', '', '', wbemConnectFlagUseMaxWait, nil);
  13.   WClass   := WService.Get('Win32_NetworkAdapterConfiguration', 0, nil);
  14.   WMethod := WClass.Methods_.Item('EnableStatic', 0);
  15.   WInParameters := WMethod.InParameters.SpawnInstance_(0);
  16.   WInParameteIPAddress  := WInParameters.Properties_.Item('IPAddress', 0);
  17.   Parametre1 := '192.168.51.47';
  18.   WInParameteIPAddress.Set_Value(Parametre1);
  19.   Parametre1 := WInParameteIPAddress.Name;
  20.   WInParameteSubnetMask := WInParameters.Properties_.Item('SubnetMask', 0);
  21.   Parametre2 := '255.255.255.0';
  22.   WInParameteSubnetMask.Set_Value(Parametre2);
  23.   Parametre2 := WInParameteSubnetMask.Name;
  24.   WResult := WClass.ExecMethod_('EnableStatic', WInParameters, wbemFlagReturnWhenComplete, nil);
  25.   WReturnValue := WResult.Properties_.Item('ReturnValue', 0);
  26. end;


 
Le probème qui se pose c'est lorsque ExecMethod s'exécute, j'ai une exception qui me dit 'Paramètres de méthode non valide.'
 
 :pfff: pourtant mes paramètres sont corrects.....  :cry:  
 
si quelqu'un a une idée !!!


Message édité par Olyv le 30-09-2005 à 11:01:28
mood
Publicité
Posté le 29-09-2005 à 18:54:19  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  Appel à une fonction WMI

 

Sujets relatifs
appel continu de fonctions...récupérer des entiers depuis un paramètre de la fonction main
VB Excel - Renommer fichier en fonction du répertoire[RESOLU]Fonction Excel STXT
ouvrir un fichier protégé via Http avec une fonction PHPFonction. Cas spécial avec arguments facultatifs. Que faire ? :/
appel de fct par reference.Recuperer plusieurs ROWS SQL avec une fonction PHP ?
fonction mail: header FromClé de produit en fonction d'un nom
Plus de sujets relatifs à : Appel à une fonction WMI


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR