2

私のメインアプリはwin32アプリで、管理者として実行されます(UACは起動時にプロンプ​​トが表示されます)。

cleanmgr を実行する必要があります。

私はcreateprocesscleanmgrを起動するために使用します。

 GetStartupInfo(stinfo);
  stinfo.wShowWindow := SW_SHOWNORMAL;
  CreateProcess(nil,PChar(ExpandEnvironment('%systemroot%') + '\System32\cleanmgr.exe  /sagerun:3'),nil,nil, False,DETACHED_PROCESS,  nil,PChar(ExpandEnvironment('%systemroot%')),stinfo,procinf);

XP 32 ビットでは動作しますが、Win7 64 ビットでは動作しません。Cleanmgr はcleanmgr.exe /sageset:3、ごみ箱をクリーンアップするように構成されています。

上記のように使用するCreateProcessと、XP ではごみ箱が空になりますが、Win7 では空になりません。

実行中cleanmgrですが、ごみ箱には影響しません。

なんで ?

4

0 に答える 0