VS2008にてSetup.exeのインストールについて

[戻る]
umi 2010/01/07(木) 10:26:28
お世話になります。
開発環境は Visual Studio2008 90日お試し版、OSはXP です。

現在、VB6.0のプロジェクトをVisual studio2008にアップグレードしました。
その後のSetup.exeの[発行]の件で、どなたかご教授頂きたいです。

出来上がったSetup.exeを他のPCで実行させてみると、
インストールするかしないかの2択になり、インストールが終了すると、
プロジェクトはスタートプログラムに書き込まれています。

ですが、*.exeがどこにあるのかわからず、スタートプログラムにあるアイコンを
右クリックしてもexeのリンク先の表示がされていません。
*.exeをどこかに直に書き込むようなことはしないのでしょうか?
このexeは、同一フォルダのiniファイルを読み込むものなので、
現在exeの場所がわからず、iniファイルが無いというエラーで止まってしまいます。

また、インストールするユーザーがexeのインストール先ディレクトリを
自由に決められるように、インストール時に保存先を指定できるするように
するには、発行前にどのように設定するとできるのでしょうか?

お忙しい中、申し訳ありません。どうぞ宜しくお願い致します。

umi 2010/01/08(金) 10:12:36
[[解決]]
自己レスですが...すみません。

Setup.exeのインストール先フォルダをユーザーが選択できる設定があるのかは、
まだ勉強中ですが、
インストールした実行ファイルは、C:\Documents and Settings\....のかなりの下層に
見つけることができました。
隠しフォルダ内に設定されていたので、初めから検索で隠しフォルダも見るように
設定していたらよかったです(;;)

Setup.exeのインストールで、iniファイルを実行ファイルと同一フォルダに設置できるように
勉強します。

また、何かあったらよろしくお願いします。
では失礼致します。

aetos 2010/01/08(金) 13:26:56
> 右クリックしてもexeのリンク先の表示がされていません。
> *.exeをどこかに直に書き込むようなことはしないのでしょうか?

いいえ、exe は書き込まれています。
ただ、ショートカットがそのパスの情報を持っていないだけです。
では、どうやってリンク先を実行しているのかというと、パス文字列ではなく別の方法
で exe の場所を特定しているのです。

> Setup.exeのインストールで、iniファイルを実行ファイルと同一フォルダに設置
> できるように勉強します。

その ini にはプログラムから書き込みを行うのですか?
読み込み専用ならいいですが、書き込みも行う場合、かつ、exe を Program Files 以下
にインストールしようとしているのなら、exe と ini を同じフォルダに置くのは推奨し
ません。

umi 2010/01/08(金) 17:00:14
aetos様
ご返信頂きありがとうございます。


> その ini にはプログラムから書き込みを行うのですか?

いいえ、読み込み専用で使用しています。
レジストリのフォルダを明記しておき、読み込むものです。
もしも、書き込むような時は、exeが動かなくなったりするような
不具合が起きる危険もありますか?


それと、exeファイルのあるディレクトリですが、
"C:\Documents and Setting\ユーザ\Local Settings\Apps\2.0\..\..\..\"
にありました。
そして、VS2008でiniのプロパティにて
ビルドアクション     → コンテンツ
出力ディレクトリにコピー → 新しい場合はコピーする
に設定し発行後にSetup.exeをインストールすると、iniも同一フォルダに配置することが
できました。

ですが、システム全体で見た場合に、今のままだとシステムが動かないので、
ご教授頂きたいのですが...

本来の構想は、c:\program files\A(仮dir)\に、exe も ini も保存したいのです。
他のシステムが c:\program files\A(仮dir)\exe にリンクするのです。
手動で、exe と ini を c:\program files\A\ に配置するしかないのでしょうか?
このシステムを納品する際は私ではないので、ややこしい下層のディレクトリだと
他の人が分かりづらいので...
Setup.exe のインストールで本来のディレクトリへ一度で保存できるように、インストール時にディレクトリを
選択できるように設定することは可能なのでしょうか?

MSDNのホームページを調べていますが、まだわかりません。

申し分けありませんが、どうぞよろしくお願い致します。

aetos 2010/01/11(月) 21:59:42
VB6からのアップグレードを試したことがない(試せる環境もない)ので、Setup.exe が
どういう風にできているのかわかりません。
2008でセットアッププロジェクトを作り直せば、まだアドバイスもできるのですが。

umi 2010/01/18(月) 09:32:04
aetos様
ご返信頂きありがとうございます。

私の勉強不足で、Setup.exeを作るのではなく、インストーラパッケージの
.msiの作成でファイルシステムの設定で、iniやexeの配置フォルダの指定ができました。

ご迷惑をおかけしました。大変お世話になりました。

古いスレッドには追加発言できません。