【发布时间】:2012-08-18 23:57:30
【问题描述】:
我正在尝试检测我们的应用程序是否从 DVD 运行(因为这会禁用/启用逻辑中的功能)。到目前为止,我已经想出了下面的代码 sn-p 似乎可以工作,但我真的想知道是否有检测到这一点的最佳实践。
public static bool IsDVDInstallation()
{
try
{
string location = Assembly.GetExecutingAssembly().Location;
var info = new DriveInfo(Path.GetPathRoot(location));
return info.DriveType == DriveType.CDRom;
}
catch
{
return false;
}
}
【问题讨论】:
-
为什么需要检测这个?是你要写文件的原因吗?然后只需检查当前位置是否可写。
-
@EsbenSkovPedersen 我们想要检测到这一点的原因是这是一个轻型安装程序客户端,它需要知道它是应该在本地(dvd)查找文件还是从网络下载它们。在本地运行时,一些登录功能也会被禁用。
标签: c# system.reflection driveinfo