サポート情報の目次に戻る

Vista上のBSch3VをVersion 0.65にアップグレードしたら設定が保存できない


  BSch3V Version 0.64をVistaで普通に使えていたのに、Version 0.65にアップグレードしたら設定が保存できなくなる、という現象についてです。
  BSch3Vでは、各種設定をBSCH3.INIファイルに書き込みます。このINIファイルは次の順に検索します。

  1. カレントフォルダ
  2. ユーザーの特別なフォルダ
  3. bsch3v.exeと同じフォルダ

  どこにも見つからない場合は、3の場所に作成します。

  もし、

…というような場合、3の場所にはINIファイルを作成することはできませんので、設定の保存に失敗します。

  これがVistaでは事情が変わります。ユーザーフォルダ外にBSCH3.INIファイルを書き込もうとすると、そこに書き込む代わりに

C:\Users\[ユーザー名]\AppData\Local\VirtualStore

というフォルダの下にINIファイルを生成します。

  この仕組みで、bsch3v.exe を "C:\Program Files" の下に置いても設定の保存ができていました。
  ところが、このしくみが働くのは、Visual Studio 2005までで作ったプログラムであって、Visual Sdudio 2008で作ったプログラムはこのようには動作しないそうです。(何か工夫すれば良いのかもしれませんが、未調査です)
  Visual Sdudio 2008で作ったプログラムは、ユーザーフォルダ外にINIファイルを作ろうとしたら失敗するだけです。
  BSch3V Version 0.64までは、Visual Studio 2003で作成し、Version 0.65以降は、Visual Studio 2008で作成しているため、Version 0.65を境にこの現象が発生します。


対策
  一番簡単なのは、bsch3v.exeも周辺ソフトウェアも、ユーザーフォルダ下に保存することです。


  もうひとつの方法は、ユーザーの特別なフォルダに予めBSCH3.INIを作成しておくことです。
 「ユーザーの特別なフォルダ」については BSch3Vを制限ユーザーで使うと設定が保存できない をご覧ください。 

  ただし、同じようにINIファイルを使うLCoVがこの方法に2009/05現在で未対応です。
  LCoVはINIファイルにウィンドウのサイズを保存して、次回起動時にこれを再現するのですが、Vistaではこのしくみが働かず、起動ごとにデフォルトのウィンドウサイズになってしまいます。