TortoiseSVN(TSVNCache.exe)が、ファイル or フォルダをつかんでいる件

2018年2月18日

この記事は最初の投稿日から18年経過しています。内容が古い可能性があります。

Subversion のリポジトリと作業コピーを TrueCrypt のドライブに入れて使っています。

常に有効になっているとは限らないドライブにリポジトリ/作業コピーを置くのはいかがなものか?とも思いますが、とりあえずそれは置いておいて・・・。

そういう使い方をする場合、TrueCyrpt のドライブをマウントしてからリポジトリ/作業コピーを使い、使い終わったらアンマウントすることになります。*1

リポジトリ/作業コピーを TrueCrypt のドライブに置いてから、ドライブのアンマウト時に

ファイル or フォルダをアプリケーションがつかんでいるからやばいかもしれないけど、無理矢理アンマウントするか?

という警告が出るようになってしまいました。

そこで、どのアプリケーションがつかんでいるのか調べてみました。

Process Explorer というツールを使います。

  • アンマウント時に警告が出た時に、Process Explorer を起動し、Find → Find Handle or DLL… を選びます。
  • Handle or DLL substring: に、対象のドライブレターを入れて検索します。
  • すると、1件引っかかりました。プロセス名は、TSVNCache.exe。

これを、google で検索すると、わらわらとひっかかります。どうやら有名人のようです。

この exe は、オーバーレイアイコンをスムースに表示するために、作業コピー内のファイルの変更監視をしているとのこと。

さらに、TSVNCache.exe は普通は画面上に何も表示されないのですが、これをトレイアイコンに表示する設定もあるとのこと。(via TSVNCache.exeがどのパスをcrawlしているのかを知る方法)

この設定をすると、TSVNCache.exe がトレイアイコンに出てきました。

さらに、このアイコンを右クリックすると Exit というメニューが出てきてプロセスを終了できるようになります。

ということで、TrueCrypt のドライブをアンマウントする前に TSVNCache.exe を Exit すればアンマウントできるようになり、解決しました。

*1:だいたいは起動時にマウントし、シャットダウン前にアンマウントするので、そんなに煩雑ではありません。

Subversion

Posted by toshyon