如何使生成的EXE在所有.NET框架版本中都能运行?

use*_*489 4 c# dll

我对.NET世界很新,我有一个小的控制台项目(非常小)基本上只是引用在delphi中创建的.DLL(大多数重要的代码都是),在我的C#代码上我只有循环,线程睡眠说明和类似的事情.

我的客户使用的是Microsoft Windows XP SP2,Microsoft XP SP3,Microsoft Windows Vista和Microsoft 7.我想以一种在所有这些环境中运行的方式生成.EXE.在我使用C#2010的开发环境中,我有.NET framework 4.0,但我想我客户的一些桌面有3.5和更老的框架.基于这种情况,在新旧版本的.NET中创建最便携的EXE的最佳选择是什么?

由于我是初学者,因此非常欢迎详细的答案.

因为它可能是我的简单代码,所以我在这里粘贴它.

    using System;
    using System.Reflection;
    using System.Threading;
    using System.Web;
    using System.Diagnostics;
    using Redemption;

    namespace test{

class Program
{

    static void Main(string[] args)
    {


        RedemptionLoader.DllLocation64Bit = @"redemption64.dll";
        RedemptionLoader.DllLocation32Bit = @"redemption.dll";

        var ToEmailAddress = args[0];
        var subject = args[1];
        var pathFileAttach = args[2];

        SendMail(ToEmailAddress, subject, pathFileAttach);

    }

    private static void SendMail(string ToMail,string subject,string filePath) 
    {
        var session = new RDOSession();

        try
        {

            session.Logon();

            if (session.LoggedOn)
            {

                var Drafts = session.GetDefaultFolder(rdoDefaultFolders.olFolderDrafts);

                RDOMail msg = Drafts.Items.Add("IPM.Note");

                var body = "Test Redemption.";

                msg.To = ToMail;
                msg.Recipients.ResolveAll();
                msg.Subject = subject;
                msg.Body = body;

                msg.Attachments.Add(filePath);

                msg.Save();
                msg.Send();

                System.Threading.Thread.Sleep(5000);
            }
        }
        finally
        {
            session.Logoff();
            session = null;
        }
    }

}
}
Run Code Online (Sandbox Code Playgroud)

Chr*_*int 6

开发和构建.net 2.0作为目标框架,它将与所有版本兼容.