Wine & .NET app

Reece Dunn msclrhd at googlemail.com
Mon Sep 6 18:02:08 CDT 2010


On 6 September 2010 23:00, Vassilis Virvilis <vasvir at iit.demokritos.gr> wrote:
>
> Hi everybody,
>
> My name is Vassilis Virvilis and I am trying to get .net app to run under wine.
> The objective of the questions below is to determine what needs to be
> implemented in wine in order to support the app.
>
> So the app bring its window momentarily and then it crashes with a 'Unsupported color conversion request'
>
> How difficult to implement are the following error messages?
>
> 1) Where is the code that prints 'Unsupported color conversion request'. I can't find it

Googling the error indicates that it is coming from libjpeg:

JMESSAGE(JERR_CONVERSION_NOTIMPL, "Unsupported color conversion request")

You probably want the windowscodecs trace output to see where it is failing.

> 2) JpegDecoder_Frame_GetResolution doesn't look terribly difficult to implement. Am I completely misguided?

Looking at the parameter names they indicate that the resolutions are
in dots per inch (DPI), so that may complicate things a bit. As
always, this will need test coverage.

> 3) URL_ParseUrl lives in in dlls/shwapi/url.c around 1979. The implementation looks fleshed enough. What is the problem?

URL_ParseUrl is being passed a URL like "System.Xml" -- the function
is not handling this as a valid URL.

Here, tests will be needed to see how Windows behaves and the wine
implementation should then be improved to cover that/those cases.

> 4) The GUID are referring to IManaged, IProvideClassInfo, IMarshal, IRpcOptions. What is the implementation scope of these?

Looking at the fixme's -- fixme:ole:OLEPictureImpl_QueryInterface ()
-- those interfaces are being requested for and not found in the
OLEPicture implementation.

NOTE: A test case will need to be added for each of these to check if
Windows actually implements those interfaces for the OLEPicture
object.

Something along the lines of:

    IUnknown *picture = ...; /* OLEPicture object from existing tests. */
    IManaged * managed = NULL;
    HRESULT hr;
    int refcount;

    hr = picture->QueryInterface(&IID_IManaged, (void **)&managed);
    ok(hr == S_OK, "OLEPicture should support IManaged: expected S_OK,
got 0x%08x\n", hr);

    IUnknown_AddRef(picture);
    refcount = IUnknown_Release(picture);
    ok(refcount == 2, "Expected there to be 2 references to
OLEPicture, got %d\n", refcount);

    text_picture_managed(managed); /* test IManaged methods */

    IUnknown_Release(managed);

> Here is the log:
> fixme:actctx:parse_manifest_buffer root element is L"asmv1:assembly", not <assembly>

Manifest parsing should support xmlns:name="..." qualifiers for
elements as well as xmlns="..." qualifiers. This will need tests.

> fixme:sync:CreateMemoryResourceNotification (0) stub
> fixme:shell:URL_ParseUrl failed to parse L"Microsoft.VisualBasic"
> fixme:shell:URL_ParseUrl failed to parse L"System"
> fixme:shell:URL_ParseUrl failed to parse L"System.Windows.Forms"
> fixme:shell:URL_ParseUrl failed to parse L"System.Drawing"
> fixme:shell:URL_ParseUrl failed to parse L"System.Runtime.Remoting"
> fixme:shell:URL_ParseUrl failed to parse L"System.Configuration"
> fixme:shell:URL_ParseUrl failed to parse L"System.Xml"
> fixme:shell:URL_ParseUrl failed to parse L"mscorlib.resources"
> fixme:shell:URL_ParseUrl failed to parse L"mscorlib.resources"
> fixme:shell:URL_ParseUrl failed to parse L"System.Drawing.resources"
> fixme:shell:URL_ParseUrl failed to parse L"System.Drawing.resources"
> fixme:gdiplus:GdipGetFamilyName No support for handling of multiple languages!
> fixme:shell:URL_ParseUrl failed to parse L"LMA.resources"
> fixme:shell:URL_ParseUrl failed to parse L"LMA.resources"
> fixme:shell:URL_ParseUrl failed to parse L"LMA.resources"
> fixme:gdiplus:GdipCreateHalftonePalette stub
> fixme:shell:URL_ParseUrl failed to parse L"System.Xml.XmlSerializers"
> fixme:shell:URL_ParseUrl failed to parse L"LMA.resources"
> fixme:wincodecs:JpegDecoder_Frame_GetResolution (0x16d2dc,0x32dd48,0x32dd40): stub
> fixme:shell:URL_ParseUrl failed to parse L"LMA.resources"
> fixme:ole:OLEPictureImpl_QueryInterface () : asking for un supported interface {c3fcc19e-a970-11d2-8b5a-00a0c9b7c9c4}
> fixme:ole:OLEPictureImpl_QueryInterface () : asking for un supported interface {b196b283-bab4-101a-b69c-00aa00341d07}
> fixme:ole:OLEPictureImpl_QueryInterface () : asking for un supported interface {00000003-0000-0000-c000-000000000046}
> fixme:ole:OLEPictureImpl_QueryInterface () : asking for un supported interface {00000144-0000-0000-c000-000000000046}
> fixme:wincodecs:JpegDecoder_Frame_GetResolution (0x1a9924,0x32de38,0x32de30): stub
> Unsupported color conversion request
>
> Thanks in advance
>
>      Vassilis Virvilis
>
>
>



More information about the wine-devel mailing list