クロネコの送り状発行ソフトB2が動かなくなったので調べてみた。

某ある方から
「宅急便の送り状のソフトが動かなくなったからちょっとこい」
と突然電話があったのでそのときの対応メモ。

少し前に運送屋と連携した宛名出すソフトが便利だとか聞いていたのでたぶん、そのことだろうと思っていたんだけど、さすがに何もわからないまま行っても厳しそうだったので電話で聞いてみると

「運送屋と連携している送り状のソフトが動かなくなった」
「ハードディスクがいっぱいだったから『圧縮して節約』みたいなの使ったのがあかんらしい」
「繁忙期なのではよ来い」

ということで、悲しくもゴールデンウィークに楽しい予定がない僕は翌日に行くことに。

とりあえずマニュアルとかないか聞いてみたけど、今時そんなものはないらしいのでオンラインで情報をとりあえず確認してみる。

どうも問題となっているのは
クロネコヤマトの送り状発行ソフト「B2」というのが動かなくなったらしい。

送り状発行ソフト 「B2」

「B2」は契約したときのセットアップファイルをダウンロードするらしい。
ありがたいことに、「導入マニュアル」や「よくある質問」なんかもあるので
とりあえず、安心してサポートセンターに連絡。

しようと思ったら、携帯からはつながらんらしい。
運が悪いことにその部屋には固定電話が引いていなかったので固定で電話して携帯にかけ直してもらうことに。

経緯を聞いていると

ハードディスクがいっぱいになってきた
「圧縮して容量を節約する」で空きをつくろうとする
「B2」動かなくなる
サポートに連絡、「『圧縮して容量を節約する』が原因ですね。アレを消してもういちどインストールすれば直るかもしれませんがコンピュータの操作になれていないと危険です」と言われる
僕が呼ばれる←いまここ

とりあえず、ダメ元でセットアップファイルを起動してセットアップを開始すると


  1. .Net Frameworkをインストールし始める

  2. SQL Server 2005をインストールし始める

  3. SQL Serverがインストールできなくてコケる

SQL Serverまわりが怪しい。
そういえばサポートのお姉さんも、「SQLの関連ファイル3つぐらい消して、もう一度試してください」とか言ってたのでとりあえず、コントロールパネルの「プログラムの追加と削除」から削除してもういちどセットアップファイルを起動してみる。

それでも、またインストール途中でコケる。
エラーが出たときの画面を確認してみるとSQL Serverのインストールにも失敗しているんだけど、もうひとつMSXMLとかいうのでもインストールに失敗しているのでこれはなんぞやと調べみると、MicrosoftのXMLエンジンらしい

とりあえず、もういちど中途半端にインストールしてしまったSQL Server関連ファイルに加えてMSXMLをアンインストールしてみる。が、なぜかMSXMLがアンインストールできないのでもうちょっとだけ調べみると、Windows Installer CleanUpというので削除できるらしい。

Windows Installer CleanUp ユーティリティについて

実際に起動してみると、Windows のセキュリティセンターが暴発しまくって困ったけどとりあえず、SQL Server関連ファイルとMSXMLを削除してもう一度セットアップを走らせる。

なんだか今度は順調に進んでいるので、「これでオッケー?」とか思っていたら、SQL Serverのインストール中に「おっとこのディレクトリが圧縮機能が有効になってるからインストールできないぜ!どうする?」みたいに聞かれたので、インストール画面はそのままにSQL Serverがインストールされようとしてディレクトリを確認しにいくと案の定、圧縮機能が有効なっている青い文字になっていたのでプロパティを確認してく圧縮機能を外してみる。

ドライブやファイルを圧縮してハードディスクの容量を節約する方法

インストール画面に戻って続けてみると問題なくセットアップ完了。

多分正常にもどった。(中身のデータ以外は)

整理してみると


  • 「B2」が使っているデータベースがSQL ServerでそのSQL ServerがWindowsのディレクトリ圧縮機能のもとでは正常に動かない。

  • さらに、依存しているXMLエンジンがアンインストールするためにWindows Installer CleanUpがないと削除できない場合がある。

「B2」の依存関係が激しすぎてさらに依存しているのがレガシーっぽく、問題が起こったときの対応がかなりイレギュラーなことをしないといけないので、サポートのお姉さんも電話を介して説明できないんだろうな。

ライブラリに依存するのも善し悪しだけど、「とりあえず動く」というのも考えものだな。