[MonoDevelop] Import Visual Studio .NET Projects

Ben Motmans Ben Motmans <ben.motmans@gmail.com>
Tue, 15 Mar 2005 18:48:49 +0100


------=_Part_665_3017950.1110908929543
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On Tue, 15 Mar 2005 08:01:53 -0600, Francisco T. Martinez
<martinf@mfconsulting.com> wrote:
> To import a Visual Studio Solution
> while no longer in VS and without access to the originating system's
> registry and absolute paths is a job that requires a lot of guessing.
> Often, these guesses get you very close to what it should be, but is
> less than perfect.
> 

I was thinking of an extra dialog while importing a VS.Net project (see mockup).

In the VS.Net .csproj files, you can get the names of the references
<Reference Name = "gtk-sharp" ...../>
Use the name and some code based on gacutil to create a list of all
possible versions of the dll, and add those to a dialog.

[/my idea]

-- Ben

------=_Part_665_3017950.1110908929543
Content-Type: image/png; name="vsdotnetimport.png"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="vsdotnetimport.png"

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
XdTx/4AkQq8gHDYdAAAAAElFTkSuQmCC
------=_Part_665_3017950.1110908929543--