DOBON.NET DOBON.NETプログラミング掲示板過去ログ

複数のプロジェクトをまとめるとコンテンツファイルがインストールされない

環境/言語:[Windows7 Pro SP1 x64, VB.NET(2012 Express)]
分類:[.NET]

お世話になっております。

次のことをすると、既存ツールで使用している画像ファイル等が呼び出せなくなりました。
多分設定なのだろうと思うのですが、どこを設定すればいいのかわかりません。
対処法を教えてください。

■以下、問題が発生する最小構成
1.IntegrationChildというプロジェクトを作成。
    1−1.logo.png をプロジェクト内に配置。
            ビルドアクション:コンテンツ
            出力ディレクトリにコピー:新しい場合はコピーする
    1−2.Form1にPictureBox1を置き、Load時に
            Dim imgPath As String = IO.Path.Combine(My.Application.Info.DirectoryPath, "logo.png")
            PictureBox1.ImageLocation = imgPath  とする。
    1−3.クリックワンスインストーラを作成(D:\IntegrationChild\)
     インストールし、実行するとフォームが表示されるときにlogo.pngが表示されることを確認
2.IntegrationParentというプロジェクトを作成。
    2−1.IntegrationParentにIntegrationChildプロジェクトを追加し、参照設定を行う。
    2−2.Form1にButton1を配置し、Clickイベントに
            Dim childForm As New IntegrationTestProject.Form1
            childForm.Show() とする。
    2−3.クリックワンスインストーラを作成(D:\IntegrationParent\)
     インストールし、実行するとIntegrationChild.Form1を表示した際にlogo.pngが表示されない。

IntegrationParent\bin\Releaseフォルダ内には、logo.pngが存在するが、
D:\IntegrationParent\Application Files\IntegrationParent_1_0_0_0\には、logo.png.deployが存在しない。
もちろん、インストール先のフォルダにも、logo.png は存在しません。
一部自己解決しました。
画像に関しては、画像をリソース管理にすることで解決できました。

情報の小出しで申し訳ないのですが、
IntegrationChild側で、
・エクセルのテンプレート用ファイルを開く
・開いたエクセルファイルに値を吐き出す
・シートに画像を貼り付ける
・名前を付けて保存する
以上の処理も必要になるのですが、その場合だとリソース管理ではクリアできません。

引き続き情報をお持ちの方、よろしくお願いします。
自己レスです。

どうやっても子プロジェクトのコンテンツファイルをクリックワンスインストーラに
含めることができなかったので、
親プロジェクトで管理することにしました。

とりあえずこれにて解決とします。
ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板