IsDirectoryWritable() の前に IsDirectory() を使用してパスが存在することを確認します。 ディレクトリが存在しない場合 (スペルミスなど)、IsDirectoryWritable はエラーではなく false を報告します。 IsDirectory() は、不正な名前に対して false を報告します。 おそらくドライブマッピングの問題でしょうか?
私の簡単なテストでは、この関数は実際にはエンドツーエンドのテストを行っているのではなく、Windows のアクセス許可をテストしているようです。 VirtualBox に接続されている Linux ドライブの場合、Linux 権限に関係なく、常に true (書き込み可能) と報告されます。
私が見たものは次のとおりです。
User PermissionsUser Permissionsユーザー権限
Admin PermissionsAdmin Permissions管理者の権限
管理者ではなくユーザーとして実行しており、書き込み権限のないフォルダーには isDirectoryWritable==false が設定されています。
最後に、関与していないと思われる古代のオプションがあります。
Directories don't really have a read-only attribute.Directories don't really have a read-only attribute.ディレクトリには実際には読み取り専用属性はありません。
その四角は 3 番目の状態であり、チェックされているかチェックされていないものではありません。
https://superuser.com/questions/1580751/folders-created-with-read-only-attribute-and-i-cannot-remove