2017-11-07 9 views
0

私は、空白のユニティプロジェクトを作成しUWPのためにそれを構築し、1行のコードを追加:Unity UWP File IOは、デスクトップなどへのアクセスを拒否しますか?

File.ReadAllText(@"C:\\Users\jtth\Desktop\cntrlRcrds-013.txt"); 

をそして、私は戻って取得、

An unhandled exception of type 'System.UnauthorizedAccessException' occurred in mscorlib.ni.dll 

Additional information: Access to the path 'C:\Users\jtth\Desktop\cntrlRcrds-013.txt' is denied. 

私が持っている:
を確認しましたファイアウォール
をチェックパス内のすべてのフォルダ/ファイルは読み取り専用ではありません
ルートCへの変更パス:\
Appsデータフォルダへの試行パス
ランUnity & VS as admin
コンピュータを再起動しました

何がありますか?お知らせ下さい。
注:私はHoloLensではなく、「ローカルマシン」でこれを実行しています。 HoloLensにはさまざまなアクセス許可の問題があります。

+0

UWPのファイルまたはフォルダを処理する際に重要なルールの1つは、[パスをスキップ:StorageFileに固執する]です(https://blogs.msdn.microsoft.com/wsdevsol/2012/12/04/skip-the -path-stick-to-the-storagefile /)。 –

答えて

0

UWPは非常に

File.ReadAllText(System.IO.Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "cntrlRcrds-013.txt")); 

を試してみて、場所にファイルを置く...あなたは本当にアプリケーションを介して、ほとんどのフォルダやファイルにアクセスすることはできません、サンドボックス化されたWindows.Storage.ApplicationData .Current.LocalFolder.Pathがポイントします。

これが役に立ちます。

+0

UWPアプリはサンドボックス化されています。 – jtth

+0

私の提案はうまくいきましたか?私のUWPアプリは、記載されている場所からファイルを読むのに問題はありません。 –

+0

はい、私はそれを謝罪する必要があります。私は、ファイルパスを必要とするプラグインを持っていて、これはアプリケーションサンドボックス内では可能ではないと考えています...残念ながら、これは私が回避策を実装する必要があることを意味します。何かのように、統一は私のファイルを収容するサーバ上で実行されているWebサービスを呼び出します。 Webサービスは、ファイルをbyte []として返します。これは、妥当性に応じて、サンドボックス内に「新しい」ファイルとして書き込まれます。要するに、このパスをフィードして目的の結果を得ること。 – jtth

関連する問題