[IronPython] Weird Anomoly with SetStandardOutput

Dino Viehland dinov at exchange.microsoft.com
Tue Apr 3 00:33:25 CEST 2007

This seems to work for me:

from IronPython.Hosting import PythonEngine
from System.IO import Stream

class C(Stream):
    def CanRead(self): return False
    def CanSeek(self): return False
    def CanWrite(self): return True
    def Position(self): return 0
    def Write(self, chars, offset, count):
            from System import Console
    def Flush(self): pass

py.Execute('print 3')

I stuck to Console.WriteLine just to avoid having to think about sys across engines.

Just out of curiosity - do you use the multiple engine support extensively?

-----Original Message-----
From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Michael Foord
Sent: Monday, April 02, 2007 3:09 PM
To: Discussion of IronPython
Subject: Re: [IronPython] Weird Anomoly with SetStandardOutput

Michael Foord wrote:
> Michael Foord wrote:
>> Hello all,
>> If I create a subclass of 'Stream' from IronPython - and set it onto a
>> PythonEngine using 'SetStandardOutput', then it fails with the following
>> message:
>> Traceback (most recent call last):
>>   File C:\Python Projects\modules in
>> progress\ironpython\embeddingDivert.py, lin
>> e 32, in Initialize
>>   File , line 0, in SetStandardOutput##94
>> TypeError: issubclass: arg 1 must be a class
>> If I define an empty class, and set this then I get the expected error
>> 'AttributeError: 'Diverter' object has no attribute 'get_CanSeek'.
>> [snip...]
>> Unfortunately this problem is going to block us very rapidly at
>> resolver. We can probably get round it by creating the stream subclass
>> in C# - but what is the problem with doing it from IronPython ?
> Except that I realise that you may not have anticipated your users
> passing .NET subclasses from one IronPython engine to another...
> Can this be fixed ?
Oh, and :


Embedding IronPython in IronPython.

Michael Foord

> Michael
> _______________________________________________
> users mailing list
> users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

users mailing list
users at lists.ironpython.com

More information about the Ironpython-users mailing list