//1.获取模块的完整路径。 
            string path1 = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
            Console.WriteLine("path1:" + path1);

            //2.获取和设置当前目录(该进程从中启动的目录)的完全限定目录 
            string path2 = System.Environment.CurrentDirectory;
            Console.WriteLine("path2:" + path2);

            //3.获取应用程序的当前工作目录 
            string path3 = System.IO.Directory.GetCurrentDirectory();
            Console.WriteLine("path3:" + path3);

            //4.获取程序的基目录 
            string path4 = System.AppDomain.CurrentDomain.BaseDirectory;
            Console.WriteLine("path4:" + path4);

            //5.获取和设置包括该应用程序的目录的名称 
            string path5 = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
            Console.WriteLine("path5:" + path5);

            //6.获取启动了应用程序的可执行文件的路径 
            string path6 = System.Windows.Forms.Application.StartupPath;
            Console.WriteLine("path6:" + path6);

            //7.获取启动了应用程序的可执行文件的路径及文件名 
            string path7 = System.Windows.Forms.Application.ExecutablePath;
            Console.WriteLine("path7:" + path7);

输出结果

path1:D:\Test\bin\Debug\test.vshost.exe
path2:D:\Test\bin\Debug
path3:D:\Test\bin\Debug
path4:D:\Test\bin\Debug\
path5:D:\Test\bin\Debug\
path6:D:\Test\bin\Debug
path7:D:\Test\bin\Debug\test.EXE