1

いくつかのデータ/ファイルをレイアウト フォルダー内に保持する必要があります。私の SharePoint プロジェクトは「MyProject」です。したがって、ディレクトリ構造には以下が含まれます

"C:\Program Files\Common Files\microsoft shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\MyProject"

ここで、「Data」という名前の新しいフォルダーをプログラムで作成する必要があります。しかし、「アクセスが拒否されました」というエラーが表示されます。

SPSecurity.RunWithElevatedPrivileges(delegate
  {
String path = SPUtility.GetGenericSetupPath(String.Empty) + "TEMPLATE\\LAYOUTS\\MyProject\\Data";
bool IsExists = System.IO.Directory.Exists(path);
if (!IsExists)
  System.IO.Directory.CreateDirectory(path);// Access denied!
 });

アクセスが拒否される理由を誰か教えてもらえますか? コードを RunWithElevatedPrivileges 内にラップしたのに?

4

1 に答える 1

0

私はあなたのコードを試してみましたが、うまくいきました。

Window Folder のセキュリティ設定に問題があるはずです。私のフォルダには、読み取り/書き込み権限を持つ次のユーザーがいます:

  1. 作成者の所有者 - 特別な権限
  2. システム - フル コントロール
  3. WSS_ADMIN_WPG - フル コントロールと特別なアクセス許可を除くすべて
  4. 現在のユーザー (ファーム管理者) - フル コントロール

何も解決しない場合は、全員を一時的に読み取り/書き込みアクセスに追加してみてください! 本当にセキュリティの問題かどうかを確認するだけです!

それが役に立てば幸い、

アンドリュー

于 2013-01-31T08:08:36.167 に答える