Invoke with an string array as out parameter
Eric Baelen <[email protected]> Thu, 6 Oct 2005 11:26:24 +0200
| Newsgroups | gmane.comp.windows.devel.jawin |
|---|---|
| Message-ID | <000a01c5ca58$057fc6c0$1a01070a@nberic> |
Hi,
I try to invoke a method with one of the out parameter who is an array
of String:
uint32 EnumKey([IN] uint32 hDefKey = 2147483650, [IN] string
sSubKeyName, [out] string sNames[]);
The code is
Variant.ByrefHolder outValueRef = new Variant.ByrefHolder(new
String());
Object[] objs = new Object[3];
objs[0] = new Integer(0x80000002);
objs[1] =
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall";
objs[2] = outValueRef;
result = (Integer) lSWbemObjectRegProv.invokeN("EnumKey", objs);
I've tried everything of the outValueRef:
Variant.ByrefHolder outValueRef = new Variant.ByrefHolder(new
String[]{""});
Variant.ByrefHolder outValueRef = new Variant.ByrefHolder(new
String[1000]);
.
Basically I receive memory lock or access violation when the invoke is
called.
What is the correct syntax for string array of an out parameter?
Thank you for your help,
Best regards
Eric