自作のプログラムをフルインストールした直後のWindows Server 2008 R2から起動すると、以下のエラーが発生しました。
System.Runtime.InteropServices.COMException (0x80040154): CLSID {6BF52A52-394A-11D3-B153-00C04F79FAA6} を含むコンポーネントの COM クラス ファクトリを取得中に、次のエラーが発生しました: 80040154。
しかしながら、Windows Media Playerを導入後、自作のプログラムを動作させた場合同様のエラーは出ないことから、インストーラ(Windows Installer)より.NET Frameworkのように判定させれば良いのではないか?と考えたのですが、やり方がわかりません。
私の環境は、Visual Studio 2010 Professional (VisualBasic) + Windows 8 Professionalです。
よろしくお願いいたします。
そういえば昔WMP依存のソフトを作ったなぁ、とプロジェクトを探したところ、
どうやらSystemFolder内をターゲットにしてwmp.dllの有無を確認していました。
セットアップ用プロジェクトの、ソースの一部
"Name" = "8:条件1" "Condition" = "8:FILEEXISTS1" "Message" = "8:最新版のWindows Media Player をインストールしてください。" "InstallUrl" = "8:http://www.microsoft.com/japan/windows/products/winfamily/mediaplayer/default.mspx"
{ "Name" = "8:wmp.dll" "Folder" = "8:[SystemFolder]" "Depth" = "2:0" "FileName" = "8:wmp.dll" "MinVesion" = "8:" "MaxVersion" = "8:" "MinSize" = "8:" "MaxSize" = "8:" "MinDate" = "8:" "MaxDate" = "8:" "Languages" = "8:" "Property" = "8:FILEEXISTS1" }
※直接書くのではなくVS側で追加します。
これだけではWMPのバージョンが不明ですので、特定のバージョン以上でなければ駄目な時は
アプリ内でバージョン確認を行ってください。
試していなくて恐縮ですが、以下のレジストリ起動条件を追加することで、インストール時のチェックが可能かと思われます。
■ 方法 : レジストリ起動条件を使用してターゲット ディレクトリを指定する
http://msdn.microsoft.com/ja-jp/library/vstudio/h0z89y5d(v=vs.100).aspx
リンクをクリックではなく、「http://~.aspx」をURL の入力ボックスに貼り付ければ、表示されますよ。
ありがとうございます、読めました!
参考にしてみます。
そういえば昔WMP依存のソフトを作ったなぁ、とプロジェクトを探したところ、
どうやらSystemFolder内をターゲットにしてwmp.dllの有無を確認していました。
セットアップ用プロジェクトの、ソースの一部
"Name" = "8:条件1" "Condition" = "8:FILEEXISTS1" "Message" = "8:最新版のWindows Media Player をインストールしてください。" "InstallUrl" = "8:http://www.microsoft.com/japan/windows/products/winfamily/mediaplayer/default.mspx"
{ "Name" = "8:wmp.dll" "Folder" = "8:[SystemFolder]" "Depth" = "2:0" "FileName" = "8:wmp.dll" "MinVesion" = "8:" "MaxVersion" = "8:" "MinSize" = "8:" "MaxSize" = "8:" "MinDate" = "8:" "MaxDate" = "8:" "Languages" = "8:" "Property" = "8:FILEEXISTS1" }
※直接書くのではなくVS側で追加します。
これだけではWMPのバージョンが不明ですので、特定のバージョン以上でなければ駄目な時は
アプリ内でバージョン確認を行ってください。
ぽけっとしすてむさんありがとうございます。
参考にさせていただきます。
ぽけっとしすてむさんありがとうございます。うまくいきました!
今回はバージョン指定は不要だと考えていたので、ぽけっとしすてむさんをベストアンサーにしました。
ありがとうございました。
ぽけっとしすてむさんありがとうございます。
2013/08/02 23:12:45参考にさせていただきます。
ぽけっとしすてむさんありがとうございます。うまくいきました!
2013/08/06 22:15:50今回はバージョン指定は不要だと考えていたので、ぽけっとしすてむさんをベストアンサーにしました。
ありがとうございました。