Hi,
I know PythonNet has been specially designed to handle .NET/CLR compatibility
but because of some other restrictions I want to use Python 2.3 to access a C#
function.
First of all is it possible? I am trying with following piece of code in
C# (Server app) and python (client app).
This is a class library in C# which is compiled and
registered with following commands.
csc /target:library Class1.cs
regasm Try2005.dll /tlb:Try2005.tlb
using System;
using System.Runtime.InteropServices;
namespace Try2005
{
public class TestingCSBC
{
[Guid("1EB394AB-2D4A-4a52-9F22-E8ACAED4800F")]
public interface IManagedInterface
{
int PrintHi(string name);
}
[Guid("2FD76301-489A-4dc3-BF6B-5DF6FCE96CB8")]
public class InterfaceImplementation : IManagedInterface
{
public int PrintHi(string name)
{
Console.WriteLine("Hello,
{0}!", name);
//TestCSBCClass obj = new
TESTDLLCOMLib.TestCSBCClass();
//obj.Displaymessage("In C#
application!!");
return 33;
}
}
}
}
Python code:
import win32com.client
try:
serverObj =
win32com.client.Dispatch("Try2005.TestingCSBC")
except Exception,e:
print
"Dispatch error",e
try:
serverObj.PrintHi("But will it work on Tribon??")
except Exception,e:
print
"Error while Calling C# function",e
After running the above Py script I am getting following error output.
Dispatch error (-2147024894, 'The system cannot find
the file specified.', None, None)
Error while Calling C# function name 'serverObj' is not
defined
Any pointers would be greatly appreciated.
Thanks in advance.