フォルダがロックされる現象について
-
次の手順を行うと、フォルダがロックされた状態になります。
1.フォルダA内のファイルBを開く。
2.新規テキストを開く(CTRL+N)
3.ファイルBを編集
4.ファイルBを閉じる。(保存しない)
5.フォルダAの名前を変更しようとするとMeryがつかんでいる。
6.Meryを終了させるとフォルダAの名前が変更できる。検索したところ既出の話題は見つけられませんでした。
OSはWindows11
Meryのバージョンは3.7.6
マクロは使用していません。仕様なのか、不明ですがちょっと不便なので報告させていただきました。
希望としては、上記ファイルBを閉じた時にフォルダAのロックが解除されるようになるとありがたいです。| GH | 返信 -
ご報告ありがとうございます。
これは Mery がフォルダーをロックしているわけではなく、Windows の仕様ですね。
Windows のアプリは、それぞれのプロセス (たとえば Mery.exe) に必ず 1 つの作業フォルダー (カレントディレクトリ) が割り当てられます。
ショートカットから Mery を起動している場合は、ショートカットの [プロパティ] に設定されている [作業フォルダー] が使われます。
このフォルダーはアプリの「ベース」となるフォルダーで、アプリが動いている間は削除できません。
また、エクスプローラーでテキストファイルをダブルクリックしたり、関連付けから Mery を起動した場合、そのファイルがあるフォルダーが自動的に [作業フォルダー] になります。
この場合も、Mery (Mery.exe) を終了しない限り、そのフォルダーは削除できません。
この問題を避ける方法はいくつかあります:
・Mery をショートカットから起動する
ショートカットに設定されている [作業フォルダー] が使われるので、フォルダーが削除できない問題を避けられます。
・Mery をトレイアイコンとして常駐させる
インストーラーを使って、Mery を Windows の起動時にトレイアイコンに常駐させると、作業フォルダーはデフォルトのフォルダー (Mery.exe の場所) に固定されます。
これなら、関連付けでファイルを開いても作業フォルダーが変更されることはなく、削除できない問題が解決します。
・作業フォルダーを変更する
以下のようなマクロを使って、作業フォルダーを別の場所に変更することもできます:
new ActiveXObject("WScript.Shell").CurrentDirectory = "C:\\Program Files\\Mery";
| Kuro | 返信