C#中 System.Windows.Forms.Application并不包含“StartupPath”的定义

2024-11-21 21:05:43
推荐回答(5个)
回答1:

智能设备里面Application没有StartupPath属性的获取路径的方法1.asp.net webform用“Request.PhysicalApplicationPath获取站点所在虚拟目录的物理路径,最后包含“\”; 2.c# winform用 A:“Application.StartupPath”:获取当前应用程序所在目录的路径,最后不包含“\”; B:“Application.ExecutablePath ”:获取当前应用程序文件的路径,包含文件的名称; C:“AppDomain.CurrentDomain.BaseDirectory”:获取当前应用程序所在目录的路径,最后包含“\”; D:“System.Threading.Thread.GetDomain().BaseDirectory”:获取当前应用程序所在目录的路径,最后包含“\”; E:“Environment.CurrentDirectory”:获取当前应用程序的路径,最后不包含“\”; F:“System.IO.Directory.GetCurrentDirectory”:获取当前应用程序的路径,最后不包含“\”; 3.c# windows service用“AppDomain.CurrentDomain.BaseDirectory”或“System.Threading.Thread.GetDomain().BaseDirectory”;用“Environment.CurrentDirectory”和“System.IO.Directory.GetCurrentDirectory”将得到“ system32”目录的路径;如果要使用“Application.StartupPath”或“Application.ExecutablePath ”,需要手动添加对“System.Windows.Forms.dll ”的引用,并在程序开头用“using System.Windows.Forms”声明该引用;本文来自CSDN博客,转载请标明出处: http://blog.csdn.net/zlb789/archive/2009/01/21/3849045.aspx

回答2:

添加命名空间的引用。
using System.Windows.Forms;
using System.IO;

如果是 Console 程序要使用AppDomain.CurrentDomain.BaseDirectory

回答3:

建议你把程序不要放在桌面,很有可能是文件夹路径过长或者路径中含有中文。你把程序放到c盘根目录下试试

回答4:

A、B肯定不对、C、D你是不是少写东西了比如说分号,末尾有分号是语句没有分号的是表达式

回答5:

我在引用如下两个命名空间时发生了这个异常

using System.Windows.Forms;

using Microsoft.Office.Interop.Excel;

后经发现去除 using System.Windows.Forms;即可解决问题