[戻る]
一括表示

アクセスする権限のないフォルダーに対する挙動 投稿者:sasazo 投稿日:2023/02/27(Mon) 02:40:45 No.449

おやぶん様、いつもお世話になっております。

今日、バックアップ用のハードディスクを久しぶりに接続して、DWで開いてみたところ、いくつかのフォルダが空っぽになっていました。

それで、いくつかの空っぽのフォルダを削除してしまったのですが、別の空っぽのフォルダをエクスプローラーで開こうとしたところ、
「このフォルダーにアクセスする許可がありません」
と出てきました。

もう一度DWでそのフォルダーを開いてみたのですが、警告はでずに空っぽのままでした。

フォルダのプロパティで権限を設定しなおしてみたところ、空っぽに見えたフォルダにもファイルが入っていました。
幸い、削除したフォルダの元ファイルは残っていたため、ファイルは消失せずにすみました。

そこでお願いなのですが、読み取り権限のないフォルダをアクセスした場合には空っぽのフォルダのようにせずに、エクスプローラーと同じようにアクセス権限がないと、警告を出していただきたいのです。

どうぞよろしくお願い致します。

Re: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/02/27(Mon) 23:06:44 No.450

アクセス権がない場合、ファイルの検索APIが失敗するので、空っぽになっています。
空なのか判断が難しい場合があるので、仕様を検討してみます。

Re: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/02/28(Tue) 22:09:35 No.451

アクセス権限がないことがわかるように、機能を追加しました。
確認をお願いします。
アクセス権限がないときには、ダイアログを表示して、ウィンドウに"ACCESS DEFINED"と表示します。
ウィンドウでアクセス権限が無いことがわかるので、ダイアログは不要でしょうか?

仕様未決定なので、ソフトは参照先に仮版としておいてあります。

Re^2: アクセスする権限のないフォルダーに対する挙動 投稿者:sasazo 投稿日:2023/03/01(Wed) 19:51:05 No.452

> アクセス権限がないことがわかるように、機能を追加しました。
> 確認をお願いします。
> アクセス権限がないときには、ダイアログを表示して、ウィンドウに"ACCESS DEFINED"と表示します。
> ウィンドウでアクセス権限が無いことがわかるので、ダイアログは不要でしょうか?
>
> 仕様未決定なので、ソフトは参照先に仮版としておいてあります。

Re^3: アクセスする権限のないフォルダーに対する挙動 投稿者:sasazo 投稿日:2023/03/01(Wed) 19:57:05 No.453

> > アクセス権限がないときには、ダイアログを表示して、ウィンドウに"ACCESS DEFINED"と表示します。
> > ウィンドウでアクセス権限が無いことがわかるので、ダイアログは不要でしょうか?

機能のご追加、ありがとうございます。
確かに、「アクセスが拒否されました」とでますので、そのフォルダを開いて「Access Dinied]とする必要はなかろうかと思います。

ちなみに、エクスプローラですと、
このフォルダーにアクセスする許可がありません。

と出て、更に
[続行]をクリックすると、このフォルダーへの永続的なアクセスを取得します。

が出ます。
ここで[続行]をクリックすると、アクセス権を設定して、アクセスできるようになります。

DWもこのような挙動をしてくれるとありがたいのですが、難しいでしょうか?

もしくは、アクセスを拒否された時点で、そのまま自動的にエクスプローラで開くようにするというのはいかがでしょうか?
もちろん、ダイアログを出すだけにするか、エクスプローラで自動的に開くかを設定できるようであれば尚よろしいかと思います。

Re^4: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/03/02(Thu) 08:06:56 No.454

> 機能のご追加、ありがとうございます。
> 確かに、「アクセスが拒否されました」とでますので、そのフォルダを開いて「Access Dinied]とする必要はなかろうかと思います。
>
> ちなみに、エクスプローラですと、
> このフォルダーにアクセスする許可がありません。
>
> と出て、更に
> [続行]をクリックすると、このフォルダーへの永続的なアクセスを取得します。
>
> が出ます。
> ここで[続行]をクリックすると、アクセス権を設定して、アクセスできるようになります。
>
> DWもこのような挙動をしてくれるとありがたいのですが、難しいでしょうか?


確認ありがとうございます。
"ACCESS DENIED"はダイアログを閉じたあとでも、アクセス権の有無をわかるようにと表示しています。
表示でわかるのでダイアログを出すのをやめようかと考えていたのですが現状のままにします。
(アクセス権の設定のためのセキュリティタブを開くボタンを追加するため)

アクセス権の設定ですが、ダイアログにセキュリティタプを開くかどうかのボタンを追加しようと考えています。
(設定できる/できないの判断ができないので、必ずボタンを表示してしまいますが)
週末にでも修正する予定なので、ちょっとお待ち下さい

Re^4: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/03/05(Sun) 20:17:27 No.455

エラー時のダイアログにプロパティのセキュリティを開く機能を追加しました。
確認をお願いします。
(セキュリティで設定できないダイアログもボタンは有効になっているのは仕様です)

Re^5: アクセスする権限のないフォルダーに対する挙動 投稿者:sasazo 投稿日:2023/03/08(Wed) 23:35:29 No.456

おやぶん様

遅く成りましたが、03/05版の確認をしてみました。
フォルダへのアクセスが拒否された場合に、セキュリティを開くボタンが作動すること、確認できました。


エクスプローラの場合ですと、

@
このフォルダーにアクセスする許可がありません。
[続行]をクリックすると、このフォルダーへの永続的なアクセスを取得します。

が出て、[続行]を押すとアクセス権を取得しようとします。
しかし、アクセス権の取得ができなかった場合に、ここで

A
このフォルダーにアクセスする許可が拒否されています。
このフォルダーへのアクセスを取得するにはセキュリティタブを使用する必要があります。

が表示され、セキュリティタブを開くようになります。

いきなりセキュリティタブを開くのではなく、一度@のようにアクセス権の取得を試みるようにするのは難しいのでしょうか?

Re^6: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/03/09(Thu) 22:37:52 No.457

> いきなりセキュリティタブを開くのではなく、一度@のようにアクセス権の取得を試みるようにするのは難しいのでしょうか?

調べ直したのですが、C++の関数を調べるとGetFileSecurity/SetFileSecurityを使用すればできるかもしれません。
ちょっとこの2つの関数を使ってできるか調べてみます。

無理だったら現状の仕様のままとします。

Re^6: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/03/13(Mon) 23:12:16 No.458

> エクスプローラの場合ですと、
>
> @
> このフォルダーにアクセスする許可がありません。
> [続行]をクリックすると、このフォルダーへの永続的なアクセスを取得します。
>
> が出て、[続行]を押すとアクセス権を取得しようとします。
> しかし、アクセス権の取得ができなかった場合に、ここで

ここの部分のエクスプローラーの仕様は続行を押すと、
ユーザー名でセキュリティにユーザー名を追加し、アクセス許可をフルコントロールにしているようです。

拒否設定などは特に続行では変更されません。

また、続行ボタンは、everyoneで読み込みが拒否設定になっていると非表示になっているようです。

現状、ユーザー名の追加方法について調査中です。(拒否設定をなくすなどは比較的簡単なんですが・・・)

Re^6: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/03/16(Thu) 22:21:56 No.459

エクスプローラーと同じような動作をするように修正しました。
参照先に仮ソフトをおいてあるで、確認をお願いします。

Re^7: アクセスする権限のないフォルダーに対する挙動 投稿者:sasazo 投稿日:2023/03/18(Sat) 13:47:30 No.460

> エクスプローラーと同じような動作をするように修正しました。
> 参照先に仮ソフトをおいてあるで、確認をお願いします。

おやぶん様、遅く成りましたが、3/16版の検証をしてみました。
ちょっと面白い?挙動をします。

work1フォルダを作ります。
グループ名またはユーザー名には、所有者である sasazo だけがあり、
アクセス許可を全て拒否にします。


〇エクスプローラでこのwork1フォルダを開こうとすると

・このフォルダーにアクセスする許可がありません。
 [続行]をクリックすると、このフォルダーへの永続的なアクセスを取得します。

・[続行]

 このフォルダーにアクセスするアクセス許可が拒否されています。
 このフォルダーへのアクセスを取得するにはセキュリティタブを使用する必要があります。

となります。


〇DW β63(2023/03/16)でこのwork1フォルダを開こうとすると、

・アクセスが拒否されました。
 [アクセス権の付与] [OK]

・[アクセス権の付与] → フォルダ内のアクセスOK
・[OK] → ACCESS DENIED


と、エクスプローラの挙動と違い、アクセス権の付与が出てきます。



work2フォルダを作ります。
グループ名またはユーザー名には、Everyone があり、
アクセス許可を全て拒否にします。


〇エクスプローラでこのwork2フォルダを開こうとすると
 先ほどのwork1フォルダと同じように、

・このフォルダーにアクセスする許可がありません。
 [続行]をクリックすると、このフォルダーへの永続的なアクセスを取得します。

・[続行]

 このフォルダーにアクセスするアクセス許可が拒否されています。
 このフォルダーへのアクセスを取得するにはセキュリティタブを使用する必要があります。

の挙動をします。



一方、
〇DW β63(2023/03/16)でこのwork2フォルダを開こうとすると、

・アクセスが拒否されました。
 [OK] → ACCESS DENIED

と、今度はアクセス拒否だけが出てきます。


とりあえず、アクセス権のないフォルダは開けなくなっていますし、(エクスプローラとは違う挙動であるものの)アクセス権の付与も出来ていますので、目的は果たせているかと思います。

Re^8: アクセスする権限のないフォルダーに対する挙動 投稿者:おやぶん 投稿日:2023/03/18(Sat) 21:58:31 No.461

確認ありがとうございます。
うーん、エクスプローラーの仕様と完全に合わせるのはちょっと難しそうです。
everyoneで拒否設定がされていると、基本拒否されているものかどうかの判断がつかないです。(ProgramDataのApplication Dataとかとの違いがわからないので)
everyoneの拒否設定がされている場合も、セキュリティ設定ができるように、[アクセス権の付与]ボタンと、[セキュリティタブ]を開くボタンの2つを表示するのが良いと考えました。
最初に表示するダイアログに、[アクセス権の付与]ボタンと、[セキュリティタブ]を開くボタンを出したソフトを次版で出そうと思います。

Re^9: アクセスする権限のないフォルダーに対する挙動 投稿者:sasazo 投稿日:2023/04/02(Sun) 15:18:20 No.463

おやぶん様

年度末でいろいろ忙しく、確認が大変遅くなり申し訳ございません。
やっと、3/19版の動作確認させて頂きました。
アクセス権の付与/セキュリティタブの表示が出来、大変使いやすくなっております。
いつも、ご丁寧がご対応、ありがとうございます。


> 確認ありがとうございます。
> うーん、エクスプローラーの仕様と完全に合わせるのはちょっと難しそうです。
> everyoneで拒否設定がされていると、基本拒否されているものかどうかの判断がつかないです。(ProgramDataのApplication Dataとかとの違いがわからないので)
> everyoneの拒否設定がされている場合も、セキュリティ設定ができるように、[アクセス権の付与]ボタンと、[セキュリティタブ]を開くボタンの2つを表示するのが良いと考えました。
> 最初に表示するダイアログに、[アクセス権の付与]ボタンと、[セキュリティタブ]を開くボタンを出したソフトを次版で出そうと思います。

- WebForum -