var di = new DirectoryInfo(Root);
var diList = di.GetDirectories();
上記は、ネットワーク上にあるテキスト パス 'Root' にアクセスするとクラッシュします。I は、ユーザーが最初に Windows 7 にログインしたときにのみ発生します (他の OS ではテストされていません)。ユーザーが Windows エクスプローラーを使用して指定されたパスに移動すると、di はディレクトリを取得できます。
Windowsエクスプローラーを開いてパスに移動するリンクをクリックするようにキャッチしてユーザーに促すことはできますが、回避策はありません。Windows エクスプローラーで最初にネットワーク パスへの接続を確立しなくても、プログラムでネットワーク パスへの接続を確立できるようにしたいと考えています。
例外:
System.IO.IOException: The network name cannot be found.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator`1.CommonInit()
at System.IO.FileSystemEnumerableIterator`1..ctor(String path,string originalUserPath,
String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler,
Boolean checkHost)
at System.IO.DirectoryInfo.InternalGetDirectories(String searchPattern,
SearchOption searchOption) at Controls.ValidationControl.LoadDBox(Object sender,
RoutedEventArgs e)
in c:\Controls\ValidationControl.xaml.cs:line 1010
ジョン、ご支援ありがとうございます