Live Chat Software
Emre CIRIK | Visual Studio 2008 Project Convert To Visual Studio 2005 Project

Visual Studio 2008 Project Convert To Visual Studio 2005 Project

by EMRCRK 22. March 2011 12:45

Arkadaşlar bu program visual studio 2008 te yazılan bir projeyi visual studio 2005 e çeviriyor. 

 

İlk olarak yeni bir proje oluşturalım.

Proje adını kendiniz belirleyin.

 

2 Tane buton ekleyin.

Butonlardan birisi dosya seçip , çevirim yapıcak.

 

2. buton ise buyapılan çevrimleri kaydedicek.

 

 

Benim kodum aşağıdaki gibidir :

 

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.IO;

 

namespace VS_2008_2_2005

{

    public partial class FrmAna : Form

    {

 

        string m_SolutionDosyasi;

        string m_ProjectDosyasi;

        StreamReader solutionRead;

        StreamReader projectRead;

        string solutionFile;

        string projectFile;

 

 

        public FrmAna()

        {

            InitializeComponent();

        }

 

        private void btnDosyaSec_Click(object sender, EventArgs e)

        {

            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = "Visual Studio Solution File (*.sln)|*.sln|All files (*.*)|*.*"; // Sadece SLN Dosyalarını görüntüler

            ofd.ShowDialog();

            m_SolutionDosyasi = ofd.FileName;

            solutionRead = new StreamReader(m_SolutionDosyasi);

 

            solutionFile = "";

            int linenr = 0;

            string satir = "";

            while (!solutionRead.EndOfStream)

            {

                satir = solutionRead.ReadLine();

                if (satir == "Microsoft Visual Studio Solution File, Format Version 10.00")

                {

                    solutionFile += "Microsoft Visual Studio Solution File, Format Version 9.00\r\n";//2008 SLN Dosyasını 2005 formatına çevirir

                }

                else if (satir == "# Visual Studio 2008")

                {

                    solutionFile += "# Visual Studio 2005\r\n";

                }

                else

                {

                    solutionFile += satir+ "\r\n";

                }

                if (satir.StartsWith("Project(\"") && (satir.Contains(".csproj") || satir.Contains(".vbproj")))

                {

   //Burada proje dosyasının yolunu .sln dosyası içinden bulur.

                    int baslangic = 0;

                    int bitis = 0;

                    if (satir.Contains(".csproj"))

                    {

                        bitis = satir.IndexOf(".csproj") + 7;

                    }

                    else

                    {

                        bitis = satir.IndexOf(".vbproj") + 7;

                    }

 

                    m_ProjectDosyasi = satir;

                    baslangic = m_ProjectDosyasi.IndexOf(',') + 3;

                    m_ProjectDosyasi = satir.Substring(baslangic, bitis - baslangic);

                    m_ProjectDosyasi=Path.GetDirectoryName(m_SolutionDosyasi) +"\\"+ m_ProjectDosyasi;

 

                }

                linenr++;

            }

 

            solutionRead.Close();

 

            projectRead  = new StreamReader(m_ProjectDosyasi);

            projectFile = projectRead.ReadToEnd();

            projectRead.Close();

    //Proje dosyası için gerekli dönüşümler

            projectFile= projectFile.Replace("<ProductVersion>9.0.30729</ProductVersion>", "<ProductVersion>8.0.50727</ProductVersion>");

            projectFile = projectFile.Replace("<Import Project=\"$(MSBuildToolsPath)\\Microsoft.CSharp.targets\" />", "<Import Project=\"$(MSBuildBinPath)\\Microsoft.CSharp.targets\" />");        

 

 

        }

 

        private void btnDonustur_Click(object sender, EventArgs e)

        {

            StreamWriter sw = new StreamWriter(m_SolutionDosyasi);

            sw.Write(solutionFile);

            sw.Flush();

            sw.Close();

            Application.DoEvents();

            sw = new StreamWriter(m_ProjectDosyasi, false);

            sw.Write(projectFile);

            sw.Flush();

            sw.Close();

            Application.DoEvents();

            MessageBox.Show("Çevrim Tamamlandı!!!");

            //bu andan itibaren visual studio 2005 ile 2008 projesini açabilirsiniz.

        }

    }

}

 

 

VS_2008_2_2005.rar (76,63 kb)

Tags: ,

Add comment




  Country flag
biuquote
  • Comment
  • Preview
Loading






Month List

Calendar

<<  December 2016  >>
MoTuWeThFrSaSu
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

View posts in large calendar