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 this funtion. Array reference or something else? # BOOL GetValues(BSTR* names, double* values, short number_of_names); # (input) # names: a list of names # number_of_names: size of the array # (output) # 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); $names->Put( ['name1', 'name2', 'name3'] ); $values->Put( [0, 0, 0] ) my $ret = GetValues($names, $values, 3); Do you guys have and idea about that? What shold I pass to this function? Is there any other way to do the same thing? Any comments are appreciated. BTW: I know that if the OLE controller is in C language, things will be easier, Pass the first element of the array to this function should be OK. -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>