[Python.NET] getting started - can't import a simple dll

Jason Awbrey jason at awbrey.net
Wed Dec 15 03:20:32 CET 2010


I recompiled using .NET 2.0 and now I can load the DLL.  Is there any
support for frameworks after 2.0?  I'd hate to lose the ability to use LINQ.

Also, you mentioned Python.Runtime.dll.config.  I don't have this file.
What's in it?

thanks for your help

On Tue, Dec 14, 2010 at 8:06 PM, Laszlo Sebo <
laszlo.sebo at primefocusworld.com> wrote:

> When you import the assembly it will be referenced by the assembly name
> defined in the project settings (which is what the dll will be named as).
> GAC isn't required ( i never do that ).
>
> I just did a quick test here. Made an empty Class project via Visual Studio
> 2008.
>
> Then tweaked the source to add 2 functions:
>
> using System;
> using System.Collections.Generic;
> using System.Linq;
> using System.Text;
>
> namespace ClassLibrary1
> {
>    public class Class1
>    {
>        public string Function1()
>        {
>            return "Test Function Called";
>        }
>        public void Function2()
>        {
>            Console.WriteLine("Hello World");
>        }
>    }
> }
>
> I built it with all default settings (as a class library), then copied the
> dll to the python / lib / site-packages folder, along with the clr.pyd,
> Python.Runtime.dll and Python.Runtime.dll.config files
>
> Then from python:
>
> Python 2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel
> win32
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import clr
> >>> clr.AddReference('ClassLibrary1')
> <System.Reflection.Assembly object at 0x01DF5580>
> >>> import ClassLibrary1
> >>> myObject = ClassLibrary1.Class1()
> >>> myObject.Function1()
> u'Test Function Called'
> >>> myObject.Function2()
> Hello World
> >>>
>
> Note that the "import ClassLibrary1" is the namespace not the assembly (it
> just happens to be the same since its all default values).
> I wonder if your issue is somehow related to VS2010? Could it be adding
> some default references? What references are listed in VS?
>
>
> cheers,
> laszlo
>
>
>
>
> On 14/12/2010 5:47 PM, Jason Awbrey wrote:
>
>> Thanks.  I tried creating a test assembly with just a default constructor
>> and no other dependencies, and I get the same error when I try to import it.
>>
>> I also tried setting the path variable, through windows as well as in
>> code, and get the same result.
>>
>> Assuming my dll is named "TestLib.dll", I should be able to do
>> clr.AddReference("TestLib"), correct?
>>
>> Do I have to strong name my assemblies, or put them in the GAC?  Or is
>> that optional?
>>
>> Any other suggestions of how to track this down?
>>
>
> _________________________________________________
> Python.NET mailing list - PythonDotNet at python.org
> http://mail.python.org/mailman/listinfo/pythondotnet
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pythondotnet/attachments/20101214/9c7f0330/attachment-0001.html>


More information about the PythonDotNet mailing list