Hello all,...
2) For some reason the above mentioned received variant has the pointer to the Array in bytes 0x0C...0x0F of the VARIANT structure, instead of in
bytes 0x08...0x0B
Hello all,
From within some vbscript I'm calling a method in a simple ActiveX object, providing it a two-dimensional array, and have two problems :
1) How to I define, in the TypeLib (IDL) file, that I want to pass a
(pointer to a) variant array ? Currently I have this :
HRESULT VarArray([in] variant* Array);
The thing is that this causes the VarArray method to receive a variant which in turn holds a pointer to the Array, instead of just receiving a simple pointer to the Array.
2) For some reason the above mentioned received variant has the pointer to the Array in bytes 0x0C...0x0F of the VARIANT structure, instead of in bytes 0x08...0x0B (as described here : https://docs.microsoft.com/en-us/windows/win32/api/oaidl/ns-oaidl-variant ), and I've got no idea why.
The used OS version is XPsp3
Regards,
Rudy Wieser
You'll have to define a custom COM Record type to represent
the raw array, then use that as the method arguments.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 379 |
Nodes: | 16 (2 / 14) |
Uptime: | 42:54:22 |
Calls: | 8,141 |
Calls today: | 4 |
Files: | 13,085 |
Messages: | 5,857,851 |