msiインストール時の2755エラーを回避する

Apolloランタイムを入れようとしたらエラーが出た。

指定されたデバイスまたはファイルを開けません。 

The installer has encountered an unexpected error
installing this package. This may indicate a problem
with this package. The error code is 2755. 

以前にも同じようなエラーが出てインストールを断念したことがあった。その時は他のアプリケーションで代替が可能だったので引き下がったが、さすがに今回はそうはいかない。

解凍してみる

50種類以上ものありとあらゆるファイルを解凍できる「Universal Extractor」

このUniversal Extractorはzip圧縮ではないmsiファイルにも対応しているので、強引に取り出してインストールできないものかと思ったが無理だった。

ぐぐる

.NET Framework のインストール時にエラー メッセージ “指定されたデバイスまたはファイルを開けません” が表示される

マイクロソフトのサポートページ。これを頼りにTempフォルダの暗号化部分を見てみたが、暗号化はされていなかった。

・・・もしかして暗号化が鍵なのか?

msiの暗号化を解除

msiファイルを右クリック>プロパティ>属性部分の詳細設定ボタン>「内容を暗号化してデータをセキュリティで保護する」項目は・・・チェックされてる!

チェックを外して再度インストール・・・・・・通った! そしてApolloも無事に動作!

戦い終わって ~神々の黄昏~

結局は暗号化ソフトがフル回転していたから起きたエラーであり、暗号化を全く行っていない環境ならそもそも発生しないエラーだったというわけか。今度から気をつけることにする。

余談:インストーラーの解凍

一部のインストーラーや特殊なケースを除いて基本的にzipやrar等のお馴染みの形式で圧縮されてるので、アーカイバに渡して必要なファイルを抜き出して起動テスト。安全に動くならそのまま利用する。

こうすることによって、無駄な情報がレジストリに書き込まれることも無く、インストール時にゴミファイルを作られることも無くなる。