[Prev][Next][Index][Thread]
how to set null <variant> args in OLE calls using FO Dylan
I'm trying to figure out how to control IExplorer from Dylan using OLE
Automation. I have successfully created a separate Explorer process and can
set a few properties in IExplorer, etc.--the simple stuff. I cannot figure
out how to Navigate however. The problem I'm having is with null arguments
of the type <variant*> in FO Dylan. The method signature looks like this:
function IWebBrowser/Navigate (arg-URL :: <string>, /*optional*/
arg-Flags :: <VARIANT*>, /*optional*/ arg-TargetFrameName ::
<VARIANT*>, /*optional*/ arg-PostData :: <VARIANT*>, /*optional*/
arg-Headers :: <VARIANT*>) => (), name: "Navigate", disp-id: 104;
I have tried calling this like this:
IWebBrowser2/Navigate($0, "www.yahoo.com", $2, $2, $2, $2);
where $0 is an instance of <iwebbrowser2> and $2 is what I thought was a
null variant type object created thusly:
=> make( <variant*>);
$2 = {<lpvariant>}
=> $2.vt-type := $vt-empty;
This doesn't work when the supposedly empty variant object is passed to the
function. What is the correct way to do this?
TIA.
John Whittaker
Follow-Ups: