在C#中最简单的方法找出如果一个应用程序从网络驱动器上运行?最简单、应用程序、器上、方法

2023-09-03 00:22:07 作者:万般努力,只为出人头地。

我希望以编程方式找出是否我的应用程序从一个网络驱动器上运行。什么是这样做的最简单的方法是什么?它应该同时支持UNC路径( \\ 127.0.0.1 \ D $ )和映射的网络驱动器(Z:)。

I want to programmatically find out if my application is running from a network drive. What is the simplest way of doing that? It should support both UNC paths (\\127.0.0.1\d$) and mapped network drives (Z:).

推荐答案

这是我目前这样做的方法,但感觉应该有一个更好的办法。

This is my current method of doing this, but it feels like there should be a better way.

private bool IsRunningFromNetworkDrive()
    {
        var dir = AppDomain.CurrentDomain.BaseDirectory;
        var driveLetter = dir.First();
        if (!Char.IsLetter(driveLetter))
            return true;
        if (new DriveInfo(driveLetter.ToString()).DriveType == DriveType.Network)
            return true;
        return false;
    }