Jump to content

Phil Brinkle

Members
  • Content Count

    4
  • Joined

  • Last visited

Everything posted by Phil Brinkle

  1. Greetings! I am working with an undocumented third-party COM server via WMI interface. var ACPIObj : ISWbemObject; DataPackProp : ISWbemProperty; OutParam: ISWbemObject; PropValue : Variant; begin //... OutParam:=ACPIObj.ExecMethod_('GetObjectData', nil, 0, nil); if OutParam <> nil then begin DataPackProp:=OutParam.Properties_.Item('DataPack’,0); PropValue:=DataPackProp.Get_Value; //.. end; After executing a method called ‘GetObjectData’, PropValue is actually storing an IDispatch interface, since it has the VarType of varDispatch. Is there a way of enumerating all the properties stored in the PropValue variable? Thank you!
  2. Phil Brinkle

    How do I enumerate all properties of a Variant?

    It's a BIOS ACPI object which can be accessed through WMI (root/wmi namespace) only. WMI Explorer is a very good software since it lets me execute methods of objects. I have been using it for months, thanks! But it cannot pass an array of values to a WMI method, only an integer. Anyway, I much appreciate your assistance, guys!
  3. Phil Brinkle

    How do I enumerate all properties of a Variant?

    I am sorry, I don't have one, since I am working with an undocumented COM server. BTW, experimentally I found out that the PropValue variable has one property of Result which is an array of bytes. So, using TempArrayBuffer:=PropValue.Result I can read the content of the array. Do you know the way of enumerating all the properties of the PropValue variant? I believe there should be other properties. Thank you!
  4. Phil Brinkle

    How do I enumerate all properties of a Variant?

    Thank you for your quick reply, sir! Your code works fine and it returns 36 functions for me: 0 QueryInterface 1 AddRef 2 Release 3 GetTypeInfoCount 4 GetTypeInfo 5 GetIDsOfNames 6 Invoke 7 Put_ 8 PutAsync_ 9 Delete_ 10 DeleteAsync_ 11 Instances_ 12 InstancesAsync_ 13 Subclasses_ 14 SubclassesAsync_ 15 Associators_ 16 AssociatorsAsync_ 17 References_ 18 ReferencesAsync_ 19 ExecMethod_ 20 ExecMethodAsync_ 21 Clone_ 22 GetObjectText_ 23 SpawnDerivedClass_ 24 SpawnInstance_ 25 CompareTo_ 26 Qualifiers_ 27 Properties_ 28 Methods_ 29 Derivation_ 30 Path_ 31 Security_ 32 Refresh_ 33 SystemProperties_ 34 GetText_ 35 SetFromText_ Now I have to examine it to know how to retrieve all the properties of an IDispatch interface, since I am not familiar with COM programming. Thank you for you help!
×