2012-11-05 12 views
7

アンドロイド携帯からWindows共有にファイルを読み込もうとしています。私は今、以下のようにStreamWriterを使用しています:ネットワーク共有/ SMBクライアント

StreamWriter outfile = new StreamWriter(@"\\10.16.68.253\sam\AllTxtFiles.txt"); 
outfile.WriteLine("TESTGENREOIADNIWAN"); 

私はアクセスが拒否されます。私は既にマニフェストにパーミッションを追加しました。そして、私はESファイルエクスプローラを使って共有をテストしました(誰もがアクセスできます)。私はWPFアプリケーションで同じコード行を使用していますので、問題はAndroidアプリにあります。

私は既にES、smb://10.16.68.253/sam/AllTxtFiles.txtのような接続文字列を変更しようとしましたが、運はありません。

誰でもこれを達成しましたか?

Tks!

答えて

1

私のために私はこの "smb:// username:password @ local ip /"のような文字列をサーバのWindows共有のルートに設定しなければなりませんでした。

1

すべてのファイルにアクセスする前に、SMB共有への接続が認証されていることを確認する必要があります。これはAPI呼び出しを使用して行う必要があります。これは、マネージコード外のWin32レイヤーで行われるためです。

ここでスタートだ:

http://www.pinvoke.net/default.aspx/mpr/WNetAddConnection.html

0

はあなたが誰でもアクセスできる権限でESFileExplorerを使用して/書き込みファイルを読み取ることができますか? Windowsは非常に安全なOSです。特定のプロファイルにアクセス許可を与える必要があります。 例:

  1. Windowsで新しいプロファイル名を作成します。
  2. 新しいプロファイル名をパスワードに指定します。 (何かを共有するためのパスワードが必要です)
  3. そのプロファイルへのアクセスを共有するための1つまたは複数のアクセス権をパスワードで指定します。
  4. プロファイルのユーザ名とパスワードとともにsmbを使用してフォルダにアクセスします。など "SMB://ユーザ名:ローカルIP @パスワード"

    StreamWriter outfile = new StreamWriter(smb:\\username:[email protected]"\\10.16.68.253\sam\AllTxtFiles.txt"); 
    outfile.WriteLine("TESTGENREOIADNIWAN");