- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:全ユーザのtempフォルダを削除したい)
全ユーザのtempフォルダを削除する方法
このQ&Aのポイント
- 自作ソフトのアンインストール処理で全ユーザのtempフォルダを削除する方法について教えてください。
- GetTempPathなどではアンインストールを走らせているユーザのTempフォルダしか指定できないため、全てのユーザのTempフォルダを取得する方法を知りたいです。
- CSIDLなどを使わずに、ソフトコードで全ユーザのTempフォルダを取得し、削除する方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
http://oshiete1.goo.ne.jp/qa4941735.html の方法で対応するユーザーのレジストリは読み込めたかと思われます。 各ユーザーのtempフォルダのパスはユーザーごとの環境変数TEMPとTMPに設定されています。 # カレントユーザーならHKEY_CURRENT_USER\Environment\TEMPとHKEY_CURRENT_USER\Environment\TMP。 ただし、場所の指定として各ユーザーのプロファイルのパスが指定されている場合があります。 # "%USERPROFILE%\Local Settings\Temp"など……。 カレントユーザーであれば、ExpandEnvironmentStrings()で展開できますが、今回の場合はカレントユーザーではありませんので、自前で展開が必要になるでしょう。 "%USERPROFILE%"の展開だけならば…… HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList 以下のSID名のサブキー内にProfileImagePathというキーがありますので、そちらと置き換えればよいかと。
お礼
お忙しいなかお返事頂きまして本当にありがとうございます。