Если основное сетевое подключение является вашей основной проблемой, вы можете попробовать проверить сетевое подключение до этого:
[DllImport("WININET", CharSet = CharSet.Auto)]
static extern bool InternetGetConnectedState(ref int lpdwFlags, int dwReserved);
public static bool Connected
{
get
{
int flags = 0;
return InternetGetConnectedState(ref flags, 0);
}
}
Затем определите, является ли путь UNC-путем, и верните false, если сеть не подключена:
public static bool FolderExists(string directory)
{
if (new Uri(directory, UriKind.Absolute).IsUnc && !Connected)
return false;
return System.IO.Directory.Exists(directory);
}
Ничто из этого не помогает, когда хост, к которому вы пытаетесь подключиться, находится в автономном режиме.В этом случае у вас все еще 2-минутный тайм-аут в сети.