[6358]
       Windowsのフォルダ名の名変
      投稿者:RUNA さん
        2000-03-10 15:22:01
    
    
      Windows95から98にアップグレードしました。
95のときに、システムがWin95というフォルダだったため、98にアップしても、フォルダ名は、Win95のままです。
システムフォルダ名を変更する方法、教えてください。
    
    
    - 
      SILPHEED@今日は村岡綾佳ちゃんの誕生日 さん
        2000-03-10 15:24:17
      
         再インストールした方がはやいし確実です。「Win95」から「Win98」に変える(文字数を変えない)なら、バイナリエディタ使ってWindows関連の全てファイル中の“Win95”という文字列を“Win98”と置き換えれば可能かもしれません。
      
     - 
      まりも さん
        2000-03-10 16:39:50
      
         レジストリからなにから全部書き換えするのは、死ぬほど大変です(^^;。昔、A:Windows→C:Windowsに書き換えたことはありますが(^^;。レジストリはバイナリ書き換えすると、「壊れている」と判断されてしまうみたいなので(何かチェックさむでも見てるのか)、一旦regeditでテキストファイル.reg にしてから書き換えて再構築しないとだめなようです。
      
     - 
      RUNA さん
        2000-03-10 16:44:44
      
        都合のいい、フリーソフトありませんか?
レジストリをTXTにかき出し、Win95の文字を書き換え、レジストリ読み込みすれば、OKなのですか?
MSDOS.SYSとかの書き換えも、必要ですよね?
      
     - 
      aya@lesqua さん
        2000-03-10 16:55:27
      
        自分がやったときもまりもさんと同じくドライブレターの変更でしたが、いったんテキストファイルに吐き出してからその.regファイルで再構築で動いていたようでした。
ただ、アプリケーションが独自の情報ファイルを自分のディレクトリにもっていたりする行儀の悪いものだとこの方法では不具合が生じることがあるでしょうね(^^;
MSDOS.sysの書き換えも当然必要になると思います。
      
     - 
      まりも さん
        2000-03-10 17:00:40
      
         そのようなソフトを作ろうかと思ったことはあります(^^;。しかしレジストリに手を出すとだめということで諦めました。書き換えが必要なのは、MSDOS.SYSの記述のほか、(あれば)config.sys, autoexec.batですね。Windows(Win95)フォルダには、レジストリ以外に、*.INIという多数ありますが、これの中身もよく確かめて書き換える必要があります。でないと特定のアプリが新Windowsフォルダを見つけられず走らないことになります。その他ショートカットファイルも書き換えた方がよいのですが、これはあちこちに存在しているので、手作業で探すのは大変ですね。スタートアップフォルダとSendToフォルダ以外のものは作り直した方がよいかも…。さらに言えば、Windowsフォルダの位置を固定的に覚えてしまっている各種アプリは、動かなかったら書き換えるなど、結局手作業になると思います。
      
     - 
      いーとん さん
        2000-03-10 18:48:37
      
        私も同じ様なことをやりましたが、バグ(笑)つぶしに時間を取られすぎます。
当時の結論は「再インストールした方が早いし安定する」と言う事に落ち着きました。
      
     - 
      エマティ さん
        2000-03-10 18:54:55
      
        私もフォルダの移動をやりました。
regeditで書き出して、
エディタで読み込み[A:\]を[C:\]に置換して、
.regの拡張子でセーブし、
そのファイルを結合すると、
レジストリの変更はできます。
ショートカットはExplorer.exeで、
lnkファイルを検索し、
これをテキストに落とし、
あとはこのテキストから1行読んでは、
ファイル名を切り出して、
そのファイルをバイナリ読み込みし、
書き換えたいフォルダ名を置換し、
バイナリ書き込みする。
というコンバータを作りました。
あとは個別に対応しました。
これを全部自動でやるソフトを作るのは大変ですしょうね。
得に個別の方が。
      
     - 
      まりも さん
        2000-03-10 19:51:51
      
         プログラムと言えば、私のやりたかったのはA:WindowsをC:Windowsという置換でしたので、レジストリ以外のファイルは、バイナリでそういう文字列リストを与えると書き換えるというプログラムで対処しました。エディタの置換でも良いのですが、¥の文字がちと厄介で…。レジストリファイル中でも、エマティさんがお書きのように¥¥と重なっていますんで、結構厄介なんですよね…。それから、「C:」だけのような文字列でドライブ名を置き換えるのは実は危険です。レジストリのデータ中には、ドライブレターとして意味を為していないのにA:とかC:とかいう文字列がありました。
      
     - 
      エマティ さん
        2000-03-10 22:24:37
      
        >レジストリのデータ中には、(中略)A:とかC:とかいう文字列がありました。 
私もそれに気がついて、
さらにA:も不具合があったので、
A:\と書いたわけです。
同じように正規表現を使う言語のスプリクトの場合も気をつけなければなりません。
またレジストリだけでなく、
各アプリケーションのプログラムのバイナリコードの中にもたまたま、
C:とかC:と続いたコードがあるかもしれないので、
書き換えの必要なファイルのみ個別対応しました。