2011年12月4日日曜日

VistaでBorland C++ が使えるか?

昔作ったソフトを修正する必要があるとき、古い環境をどう再構築するか悩ましいことがあります。今回は、Borland C++ 5.02J (C++ビルダーでは無い) が必要となり、Vista上での再構築にチャレンジした記録をここに残すことにしました。

用意するもの

  • Borland C++ 5.01J CD-ROM
  • 5.02Jアップデートパッチ

手順

まず、Borland C++5.01J をインストールする
具体的には、CD-ROMルートのSETUP.EXEを起動し、Borland C++ 5.01と書かれたボタンをクリックする。
その後はインストーラの指示に従う。
インストーラのウインドウ切替が少し遅く感じるが、作業を進めることは出来る。
今回は用途が限定されているので、カスタムインストールを選択した。
インストールディレクトリはデフォルトとした。やたらと長い名称や日本語名称のディレクトリへのインストールは避けた方がよいかも知れない。
ターゲットプラットホームは 32bit Windowsのみとした。
インストールするグループでは、使用見込みがないので Borland Database Engine を外した。
また、Turbo Debugger も使ったことがないので今後も使わないだろうと言うことで外した。
ライブラリでは、データベース関係はやらないので Visual Database Tools を外した。
サンプルは無くても動作には影響ないが、何かと参考になるので必要なものはインストールした。ちなみに外したのは、MFCのサンプル。Borlandのコンパイラをわざわざインストールする人がMFCなんて使いません(^^;;
ヘルプについても同様に不要なものを外しておく。

さて、特に問題なくインストールできたようです。
ただし、Windows95にインストールしたときは、スタートメニュー上でヘルプファイルをまとめたサブフォルダを生成してその下にヘルプが配置されましたが、Vistaではサブフォルダが生成されず、すべて Borland C++ 5.01 フォルダに配置されました。動作には影響ないですが、気になる場合は手動で直すしかないです。ただし、手動でいじるとアンインストール時にゴミとして残る可能性があります。その場合は、手動で消せば良いです。

次に、5.02Jへのアップデートパッチを当てます。
まず、インストーラメニューを終了します。
次に、5.02Jアップデートパッチに含まれている、UPDATE.BAT に、Borland C++ 5.01J をインストールしたパスを引数として指定して実行します。
インストーラのデフォルトディレクトリへインストールした場合は、
UPDATE C:\BC5
となります。
※ 詳しくは、UPDATE.TXT に説明されています。

さて、単純に上記のようにアップデートを実行しようとすると、
"アクセスが拒否されました。"
のオンパレードになってしまいます。。。
原因は、BC5ディレクトリ以下が『読取専用』属性になってしまっているからです。
ここはインストーラがうまく処理できなかったようです。 単なるコピーとして処理してしまったのでしょうか。CD-ROM上のファイルは属性が『読取専用』であるため、属性がそのままコピーされてしまったものと考えます。

というわけで、BC5ディレクトリの読取専用属性を解除しましょう。



BC5ディレクトリ以下すべてを対象に、読取専用属性を外します。

さて、再チャレンジ。。。

まただめだ・・・
あ、わかった! コマンドプロンプトを管理者権限で実行する必要がありました!

・・・ まただめ?
ああ、そうか、CD-ROMから直接起動したからだめなのでした。
普通、パッチはネットからダウンロードしてくるので、自然とHDDからの実行になり問題になることはあまり無いのですが、私の場合、CD-ROMに保存していたため、ついそのまま実行したのでした。
このUPDATEツールは、実行フォルダにログを保存しようとするため、CD-ROMに書き込めずエラーになるのでした。
というわけで、アップデートパッチ一式をHDDへコピーして再実行!

今度はうまくいきました。
なお、5.02Jパッチを当てても、スタートメニューのフォルダ名は5.01のままです。

気になる人は手動で修正です。ただし、アンインストール時は・・・、まあいいですよね。手動で消せますから。

では、起動してみましょうか。
念のため再起動しておきます。
さて、Borland C++ 5.02J を起動!
あれ? BDT52CF.DLL が無い、と怒られました。
データベース関係のオプションは外してインストールしたのでいらないはずですが、チェックしてしまっているようです。
仕方がないので、CD-ROMのBC5\BINディレクトリから、 BDT50CF.DLL をコピーして、再度UPDATEを実行し、 BDT52CF.DLL を生成させます。
これで Borland C++ 5.02J を起動したところ、エラー表示が出なくなりました。

過去の適当なプロジェクトをロードして・・・
はい、コンパイル成功!


結論

Vistaでも動作可能であることが判明しました。
100%は保証できませんが、大抵のことは出来るのではないでしょうか。

なお、関連付けによるide起動は、うまくいかないようです。

2011年1月12日水曜日

電源交換にあたって

ここ1~2年の間で、PCが不安定になった。最近になって、電源がヘタってきたことが判明した。BIOSの表示で5Vと12Vの電圧が動いているのが不思議なくらい低かったため、テスターで測定したところ5V系が4.6V程度、12V系が10.5V程度しかなかった。
電源交換にあたり、最近の電源には「-5V」が無いことが判明。当方のマザーボードはMS-6728(865G)だが、一部、「-5V」が無いから動かなかった的な記載のあるWEBページがあり、真偽のほどを確かめるため、試しに20pin電源コネクタから-5V(18番pin)を抜いてみた。(抜くの大変だった)
この状態でコネクタを戻して電源ONしてみたが、全く問題なく動く。この結果から、MS-6728においても「-5V」は不要であることが確認できた。
前述のWEBページの不具合原因は-5Vの可能性を指摘しただけではないかと考える。
これで、心おきなく電源ショッピングを楽しめ(?)る。

2008年2月23日土曜日

ThunderbirdからOutlookへメールデータを移管する方法

会社都合で電子メールの環境をMS Office の Outlook にせざるを得ず、メールデータの移管に苦労されている方も結構いらっしゃるようです。
別段、Outlookの使用を推奨するつもりはさらさらありませんが、小生がThunderbirdのメールデータをOutlookへ移管することに成功しましたので、その方法を記します。
準備するものは、次の通りです。

・ 現在使用中のMozilla Thunderbird(小生はVer.2.0.0.9を使用)
・ アドオン(拡張機能)“ImportExportTools
・ OutlookExpress
・ Outlook2003(他のバージョンでは試していません)

まず、ThunderbirdにImportExportToolsをインストールします。
次に、Thunderbirdエクスポートしたいフォルダを右クリックし、「読み込み・書き出し」-「フォルダにあるすべてのメッセージを書き出す」-「EML形式」を選択します。
「フォルダの参照」ウインドウが表示されるので、一時保存するフォルダを指定します。
ステータスバーに書き出しの進捗が表示されます。これが消えれば書き出し終了です。
次に、OutlookExpressの出番です。(ThunderbirdからOutlookへは直接エクスポートできない。。。)
一時保存したemlファイルをOutlookExpress上の適当なフォルダへドラッグアンドドロップします。
作業用のフォルダを作っておくと便利です。
これで一旦OutlookExpressにメールデータが取り込まれます。
で、いよいよOutlookへのエクスポートです。
このとき、Outlookのインポート機能は不具合があるため使いません。
OutlookExpressのエクスポート機能を使います。
「ファイル」-「エクスポート」-「メッセージ」を選択します。
「メッセージをOutlookExpressからMicrosoftOutlookまたはMicrosoftExchangeへエクスポートします」
とメッセージが表示されるので、OKをクリックします。
次に、すべてをエクスポートするかまたは特定のフォルダのみエクスポートするか聞いてきますので、ユーザの都合に合わせて指定します。
今回の場合、OutlookExpressは普段使っているメーラーではなく、単なる中継用ですので、中継用に作成した作業用フォルダを指定するのがよいでしょう。でないと、OutlookExpressにデフォルトで入っているようこそメールまでエクスポートされてしまいます。
これで、Outlookにメールデータが取り込まれました。
個人用フォルダの配下にOutlookExpress上で作成した作業用フォルダと同一名称のフォルダができて、その中にメールデータがあります。
あとは必要に応じてフォルダ名を変更したり、フォルダの位置を変えるなどしてください。
以上の作業を、必要なフォルダ分だけ繰り返します。
Thunderbird上のすべてのフォルダを一気に移管するうまい方法は今のところ発見できていません。

2008年1月2日水曜日

あけましておめでとうございます。
今年はおとなしく自宅で新年を迎えました。

2007年12月9日日曜日

FirefoxだけDNSが引けなくなった!

ある日突然、DNSが引けなくなった。
「サーバが見つかりません」だって。
IEだとアクセスできる。おなじDNSを使っているのにそんな馬鹿な!
Firefoxを再インストールしてもだめ。
OS(Vista)再インストールを覚悟しつつ、それは最後の手段とし、その日はあきらめ。
翌日、使用ライセンス切れになっていたKaspersky Internet Security 7.0をアンインストールしたところ、正常に戻った。
うーん、ウイルス検知性能がいいのは認めるけど、こういうトラブルが多い気がする。