Hi all,
We use a Microsoft Business Solutions Application - Great Plains. This has a
proprietary language for development - Dexterity/Sanscript.
From Sanscript we can register a call back as an object on the ROT.
From C# I can get access to the running object (Marshal.GetActiveObject) but
can not execute any methods - no type information. The Sanscript support guys
in Fargo couldn't offer me any help apart from the following which is VB6
code passed through a .NET convertor. Can anyone help in how I can provide
type information for the object? I know its something to do with marshaling
the COM object but I cant work it out from documentation/web articles.
Heres the VB6 --> VB.NET code that was generated and worked although it also
seemed to object to missing type info.
Dim obj As Object
Dim i As String
Dim j As String
Dim x As String
i = "abc"
j = "xyz"
obj = GetObject( , "MARS.GenPOs2935")
'UPGRADE_WARNING: Couldn't resolve default property of object
obj.GeneratePurchaseOrders. Click for more:
'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1037"'
x = obj.GeneratePurchaseOrders(i, j)
MsgBox(x & " " & i & " " & j)
'UPGRADE_NOTE: Object obj may not be destroyed until it is garbage
collected. Click for more:
'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"'
obj = Nothing
The "MARS.GenPOs2935" object is a dex object added using hte dex
COM_RegisterRunningObject() and successfully returned my dummy string back.
Thanks in advance.