0

Python 2.7 を使用して Windows 32 用のファイル シュレッダーを開発しています。望ましい機能の 1 つは、すべてのごみ箱の内容を細断処理できることです。

その他のファイルについては、ごみ箱以外に、ファイルの内容をゴミで上書きし、ファイルを削除する「シュレッド」機能を実装しました。

しかし、この「細断」機能をごみ箱の中身に利用するために、このライブラリの利用を検討しました。このライブラリを使用すると、最初にアイテムの削除を取り消し (復元)、次に細断処理できます。ただし、この方法は次の理由で適切ではありません。

  1. 細断処理中にファイル システムにリサイクル コンテンツが再び表示される可能性があるため、ごみ箱の内容を細断処理す​​るユーザーを混乱させる可能性があります。

  2. 復元機能の実行中は、Windows に [Resotring] ダイアログ ボックスが表示されます。これは望ましくありません。

ごみ箱シュレッダーの実装方法に関するアドバイスはありますか?

4

1 に答える 1

2

Pywin32 のシェル モジュールを使用して、実際のパスを取得できます。

from win32com.shell import shell, shellcon
idl = shell.SHGetSpecialFolderLocation(0, shellcon.CSIDL_BITBUCKET)
d = shell.SHGetDesktopFolder()
sf = d.BindToObject(idl, None, shell.IID_IShellFolder)

for i in sf:
    print sf.GetDisplayNameOf(i, shellcon.SHGDN_NORMAL)
    print sf.GetDisplayNameOf(i, shellcon.SHGDN_FORPARSING)
于 2013-02-22T03:45:39.103 に答える