VS2010 で簡単なコンソール アプリを作成して、ネットワーク上の場所からディスク上の指定された場所にファイルをコピーしました。プログラムは Windows では正常に動作しますが、Mac にコピーして Mono ランタイムに対して実行すると、ネットワーク共有を開くのに問題があるようです。
DirectoryInfo オブジェクトを作成するコードは次のようになります。
var dir = new DirectoryInfo(@"\\nameofserver\location\to\file");
Windows では、これはネットワーク共有に正しく解決されます。Mac では、バイナリへの相対パスが表示されます (デスクトップから実行していました)。
/Users/username/Desktop/\\nameofserver\location\to\file
私はそれを少しグーグルで調べましたが、私のパスはsmb://...
. ただし、これを行う場合でも、次のようにDirectoryInfo
解決します。
/Users/username/Desktop/smb://nameofserver/location/to/file
ネットワーク共有にアクセスできるようにするために欠落している構文があるか、OSX ではそれほど単純ではないかのいずれかがあると思います。いずれにせよ、ネットワーク共有に接続してファイルをダウンロードする方法を知りたいです。
ありがとう!
編集:
やってみ//nameofserver/location/to/file
ました。これは、パスがローカルのものであると想定する代わりに、ネットワーク共有参照をまだ解決していないことを除いて、いくらか役に立ちました。
/nameofserver/location/to/file