Hey Bruce,
So using all of your very fine documentation on the subject, I've created a .NET assembly and made it COM callable. However, I'm still missing something likely in my C# code.
Here is a very basic example of my issue. Here is the C# code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
namespace WcfServiceLibrary2
{
public class Service2
{
private String applicationName;
public String ApplicationName
{
get { return applicationName; }
set { applicationName = value; }
}
public void DoWork()
{
}
public bool DoWork2()
{
return true;
}
public int Sum(int a, int b)
{
return a + b;
}
}
}
And here is my PowerScript:
lnv_singlesignin = CREATE oleobject
li_return = lnv_singlesignin.ConnectToNewObject('WcfServiceLibrary2.Service2')
IF li_return <> 0 THEN
DESTROY lnv_singlesignin
RETURN ''
END IF
la_any = lnv_singlesignin.DoWork()
lnv_singlesignin.ApplicationName = 'applicationname'
lb_return = lnv_singlesignin.DoWork2()
The ConnectToNewObject returns a 0 - so it is obviously finding the .dll.
Only the call to the DoWork() method doesn't result in an error.
For both the ApplicationName property and the DoWork2() function I get error accessing external property/function... etc.
So the only difference between the DoWork() and the DoWork2() is that the DoWork() returns a VOID.
So what am I missing? Any ideas what I should be looking for?
Again, thanks in advance for all you've done.
Greg