I have a COM DLL written in C++, and one of the methods returns a "long long*". When I call this method from a vb script I get the error "Microsoft VBScript runtime error: Variable uses an Automation type not supported in VBScript". I assume this is because VBScript doesn't have a 64 bit integer type. What are my options here? Is there ANY way I can have my C++ code return a 64bit integer to a VBScript?
This script illustrates my problem:
-----------------------------------------------
Dim instance
Set instance = CreateObject("LongLongTest.Test") ' This is my C++ COM dll
method is of type "long long*"
retVal = instance.GetLongLong(0,
2147483648)
MsgBox "Value returned = " & retVal
-----------------------------------------------
My C++ interface:
[id(1)] HRESULT GetLongLong([in] LONGLONG inputValue, [out] LONGLONG* outputValue, [out,retval] LONGLONG* RetVal);
Sidenote: My ultimate goal is to return a value to VBS for the second param (notice it's [out]), but I receive a different error when I pass in a variable -> "Type mismatch: 'GetLongLong'"
Thanks!