A question about Win32::OLE. Really need you help!!!
There is a standalone executable written in C/C++.
What I am going to do is to write a perl script to call several
functions available in this executable.
>From the following article, I thought the job is very easy.
#10 - Win32::OLE by Jan Dubois
The Perl Journal #10 - Win32::OLE by Jan Dubois
Just considering the executable as an OLE server, and the PERL script
as an OLE controller should be OK.
When I call the functions, most of them work well, for example:
my $app = Win32::OLE->new('AAA.BBB', 'Quit');
# call the function:
# BOOL GetPathname(BSTR* Pathname)
my $Pathname = Variant(VT_BSTR|VT_BYREF, '');
my $ret = $app->GetPathname($Pathname);
But, for the following function, I don't know that I should pass to
Array reference or something else?
# BOOL GetValues(BSTR* names, double* values, short number_of_names);
# names: a list of names
# number_of_names: size of the array
# values: a list of corresponding values,
I tried to pass array references to it, and something else, like the following,
both failed with an error: Type Mismatch...
my $names = Variant(VT_BSTR|VT_ARRAY, 3);
my $values = Variant(VT_R8|VT_ARRAY, 3);