Bonjour à tous,
je suis nouveau dans l'univers du VB.Net. jusqu'à présent, je faisais surtout du script en vbs, puis pour des besoins plus complexe, je suis passé au dotNet.
le passage de l'un à l'autre c'est fait sans trop de difficulté, la majorité de mes scripts passant en vb moyennant quelques corrections de syntaxes.
tout se passait à merveille jusqu'à je bute sur le problème suivant:
- je travaille sur des objets WMI permettant de manipuler le remplaçant de SMS 2003, SCCM 2007.
j'ai la fonction suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Public Function Get_TaskSequence(ByVal iConn, ByVal inTSP)
        Dim objInParam
        Dim packageClass : packageClass = iConn.Get("SMS_TaskSequencePackage")
        objInParam = packageClass.Methods_("GetSequence").inParameters.SpawnInstance_()
        objInParam.Properties_.Item("TaskSequencePackage") = inTSP
 
        Dim objOutParams : objOutParams = iConn.ExecMethod("SMS_TaskSequencePackage", "GetSequence", objInParam)
        Get_TaskSequence = objOutParams.TaskSequence
    End Function
en entrée je lui passe en premier paramètre (iConn) un objet "WbemScripting.SWbemLocator" qui établit une connexion à mon infra sccm, et en deuxième paramètre (inTSP) un objet "TaskSequencePackage" (un objet prorpre à SCCM).
or en VBScript aucun souci, mais en vb dotNet ça plante à la ligne "objInParam.Properties_.Item("TaskSequencePackage") = inTSP" et ça ressort que inTSP => "{"Member not found. (Exception from HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))"}"
et j'ai tourné le problème dans pas mal de sens, et j'arrive pas à voir d'où ça vient ...
apparemment, la merdouille vient du passage de mon paramètre "TaskSequencePackage"

....
si quelqu'un a une idée, ça serait cool