• 締切済み

VB6 Vistaへのインストール時に互換性タブを自動でXPにしたい

現在VB6にて開発、保守を行っています。 開発したプログラムのインストールにはVisual Studio Installerを使ってきました。 開発したプログラムのVista上での動作確認を行ったところ、 exeのプロパティで「互換性タブ」を「WindowsXP(SP2)」にすれば大丈夫なことを確認しました。 ここで質問なのですが、この「互換性タブ」の「WindowsXP(SP2)」にするのをインストール時またはインストール後のバッチなどで自動的に設定することは可能でしょうか? 現在、調査中ですがご存知の方がおられましたら、よろしくお願いします。

みんなの回答

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.3

インストール時にレジストリに直接書くとか。 Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

参考URL:
http://www.microsoft.com/japan/msdn/windowsvista/general/AppComp.aspx
PandaPengin
質問者

お礼

ありがとうございます。 ちょっと難易度が高くてどうしたらいいかわからないですけど、勉強してみます。

回答No.2

うーん、やったことねぇ(汗 Sysmain.sdbとかCompatAdmin.exeとかがキーワードになるかもしれない VS.NETの話になっちゃっているけど、この辺も参考になるかも・・・ http://www.microsoft.com/japan/technet/windowsvista/deploy/appcompat/acshims.mspx#EUAAE

PandaPengin
質問者

お礼

ありがとうございます。 まだ、理解途中ですがこの辺が確かに鍵のような気がします。

回答No.1

VISTA上でVB6稼動の理由にもよるのですが、 Virtual PCなどを利用して仮想PC上でXPなどの OSを動かしてとはいかないのでしょうか?

PandaPengin
質問者

補足

今読むと質問がわかりずらいかもしれません(^^; VB6(非Vista PC上)で開発したプログラムをVistaで動作させます。 このプログラムはVista上ではインストール後に プログラムのexeのプロパティで「互換性タブ」を「WindowsXP(SP2)」にすれば動作することを確認済みです。 この”「互換性タブ」を「WindowsXP(SP2)」にする”作業をインストール時に行うか、別途バッチなどで自動で行う方法を知りたいです。 プログラムを使うユーザーに「エクスプローラーを開いて、右クリックでプロパティを出して、上記の作業を行ってください」と言いたくないのです。