SharpDevelop Community

Get your problems solved!
Welcome to SharpDevelop Community Sign in | Join | Help
in Search

SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

Last post 09-07-2006 5:34 PM by MattWard. 6 replies.
Page 1 of 1 (7 items)
Sort Posts: Previous Next
  • 08-18-2006 2:35 PM

    • david2
    • Not Ranked
    • Joined on 08-18-2006
    • Posts 3

    SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    Hello,

     I'm using SharpDevelop 2.0, and specified "compiler 1.1" in my project properties. Then I've added resource files to the project, both default and language-specific. When building the project I get my main dll and several resource dlls. Which is OK. The problem is when I try to use these dlls on a 1.1 environment : the main dll works fine, but it looks like the satellite resource dlls have been compiled with 2.0, and thus do not work.

  • 08-18-2006 3:09 PM In reply to

    Re: SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    I'm assuming your resource files are .resx files. At the moment SharpDevelop does not correctly compile them into 1.1 .resources. You might want to take a look at Microsoft's MSBuild Extras since this has a custom GenerateResources task that should correctly generate .NET 1.1 resources. The MSBee package needs the .NET 1.1 SDK's ResGen.exe to generate these resources.
  • 08-18-2006 3:31 PM In reply to

    • david2
    • Not Ranked
    • Joined on 08-18-2006
    • Posts 3

    Re: SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    No, I'm using .resources files (available under new file/misc). From that .resources file, on command-line, you need to use "Al /culture /embed etc" to build the resource dll. I guess that's what is done by SharpDevelop, because when compiling the main dll, resource dlls are also built. But I think it uses Al 2.0 whatever compiler version was set in the project properties.

     

  • 08-18-2006 7:57 PM In reply to

    Re: SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    I believe if you edit the .resources file in SharpDevelop2 it becomes .NET 2.0 specific. I am not sure if Al.exe does anything with it apart from maybe embedding it into your assembly. I tried something similar when upgrading a WinForms app from SharpDevelop 1.1, as long as I did not modify the form, which indirectly altered the .resources, then the app would compile and run under .NET 1.1, but as soon as the form was edited or the .resources modified then the resources became.NET 2.0 specific. You can either edit the .resources in SharpDevelop 1.1 or switch to .resx files and use MSBee. I suggest you test whether MSBee handles your project properly with a small test, it should work.
  • 08-24-2006 10:30 AM In reply to

    Re: SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    MattWard:
    I believe if you edit the .resources file in SharpDevelop2 it becomes .NET 2.0 specific. I am not sure if Al.exe does anything with it apart from maybe embedding it into your assembly. I tried something similar when upgrading a WinForms app from SharpDevelop 1.1, as long as I did not modify the form, which indirectly altered the .resources, then the app would compile and run under .NET 1.1, but as soon as the form was edited or the .resources modified then the resources became.NET 2.0 specific. You can either edit the .resources in SharpDevelop 1.1 or switch to .resx files and use MSBee. I suggest you test whether MSBee handles your project properly with a small test, it should work.

     

    I've had the same problem here with some .net 1.0 projects. I couldn't find a way to get #develop to generate 1.1 resources properly so I switched to using Nant to build my projects.

    Also another problem I had is when using a web reference. #develop generates 2.0 specific code (partial classes and some attributes) so I've been using wsdl manually there too.

    In general #develop on it's own is not a good solution when u try to use resource files and/or web references on a 1.1 project (also the intelli sense always suggests 2.0 stuff so u sometimes get auto completion on properties not existing in 1.1 yet - or being sealed, private,...)

    Filed under:
  • 09-07-2006 2:34 PM In reply to

    • david2
    • Not Ranked
    • Joined on 08-18-2006
    • Posts 3

    Re: SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    Does that mean there is no hope that this will work under SharpDevelop2, one day ? If I want to use resources and target a .Net1.1 environment, I have to use another tool (than SharpDevelop2) ?
  • 09-07-2006 5:34 PM In reply to

    Re: SharpDevelop 2.0, Compiler 1.1 and satellite assemblies

    We'd like to get everything working in SharpDevelop with the older frameworks. At the moment, the forms designer, resources and code generation (i.e. web references) are tied to .NET 2.0. Daniel Grunwald recently modified SharpDevelop2 so you can get code completion for the framework you are targeting. How feasible it is to get everything working and how long it will take is another question.
Page 1 of 1 (7 items)
Powered by Community Server (Commercial Edition), by Telligent Systems
Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.