1

私はOSX開発に不慣れであり、あなたの助けが必要です。

c++で記述されたOSXアプリのmkdirを使用して/private/ var/tmpにフォルダーを作成しようとしています。OSX10.6でXCode3.2.6を使用しています。コマンドはうまく機能します。フォルダはパス/private/ var/tmpに作成されます。

それは私がアプリケーションで行ったことです:mkdir(my_path, 0777);

しかし、フォルダの権限に問題があります。ユーザーはフォルダを変更できます(内部に別のフォルダを作成するなど)が、「全員」や「ホイール」は変更できません。

ここに画像の説明を入力してください

翻訳 :

  • モイ->私
  • Lectureetécriture->読み取りと書き込み
  • 講義のseulement->読み取り専用

ターミナルからフォルダを作成しようとしました。mkdir-m777/private / var / tmp / testと入力すると、フォルダテストに適切な権限があります。

ここに画像の説明を入力してください

翻訳 :

  • モイ->私
  • Lectureetécriture->読み取りと書き込み

私の質問は、フォルダとOSXアプリから書き込み権限を作成するにはどうすればよいですか。

ありがとうございました。

4

1 に答える 1

1

SUISによると

mkdir() 関数は、path という名前の新しいディレクトリを作成します。新しいディレクトリのファイル許可ビットは、モードから初期化されます。モード引数のこれらのファイル許可ビットは、プロセスのファイル作成マスクによって変更されます。

その理由は、システムに定義されているデフォルトのumaskです。

したがって、mkdir を呼び出す前にプロセスからumaskを更新するか、 chownを呼び出して、作成されたフォルダーの属性を更新する必要があります。

于 2013-01-14T09:04:22.813 に答える