• ベストアンサー
  • すぐに回答を!

インストール時に入力したユーザー情報の表示方法

はじめて投稿させていただきます。 VBで開発したプログラムをVisual Studio Installer1.1にてインストーラー(msi)を作成しているのですがインストール中にユーザー情報として名前と会社名を入力しています。この名前と会社名をインストールされるアプリ上に表示させる方法を教えて下さい。 よろしくお願いします。

共感・応援の気持ちを伝えよう!

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • taseki
  • ベストアンサー率66% (155/233)

やり方はいろいろあると思いますが、msiつまりWindows Installerオブジェクトを介してインストールされたアプリの情報にアクセスする方法です。 まずアプリからWindows Installerにアクセスします。参照設定で「Microsoft Windows Installer Object Library」への参照を設定します。次に CreateObject("WindowsInstaller.Installer") でWindows Installerオブジェクトが作成されます。このオブジェクトから、様々な情報にアクセスしたり操作することができるようになります。 目的のProductCodeがわかっていれば、ProductInfoメソッドで各情報を取得できます。 たとえば以下のように。 --------------------- Public Function GetInfoByProductCode(sProductCode As String, sInfoName As String) As String Dim objInstaller As WindowsInstaller.Installer Set objInstaller = CreateObject("WindowsInstaller.Installer") GetInfoByProductCode = objInstaller.ProductInfo(sProductCode, sInfoName) End Function --------------------- これで、 --------------------- ?GetInfoByProductCode("{123456789-XXX-XXX-XXX-XXX}", "RegCompany") 株式会社○○○ --------------------- のように使えます。"RegCompany" の部分は、Publisher、PackageName、RegOwner、VersionString、InstallDate…などなどで各情報が返ります。 バージョン共通で使えるようにするには、ProductCodeではなくUpgradeCodeをもとに検索するといいです。メソッドRelatedProducts(UpgradeCode)で、同じUpgradeCodeのアプリが複数返されます。 これを順にVersionStringを比較し、最新バージョンだけを特定したりします。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ありがとうございます。 さっそく試してみたいと思います。

その他の回答 (2)

  • 回答No.3
  • taseki
  • ベストアンサー率66% (155/233)

同じ質問を分割すると違反になるので、 ↓こちらは削除したほうがいいと思いますよ。 http://okweb.jp/kotaeru.php3?q_id=1557565 削除方法 http://feedback.okweb.ne.jp/fQA.php?qid=13039 > 登録はインストーラが行なっているのではないのですか。登録の方法はどうするのでしょうか ユーザーがインストール時に値を入力して、MSIにて「RegisterUser」アクションが実行されれば登録されます。

共感・感謝の気持ちを伝えよう!

  • 回答No.2
  • taseki
  • ベストアンサー率66% (155/233)

> RegCompanyとRegOwnerの情報だけ空文字になって返って来ません。 こちらの質問が締め切られていなかったので、こちらに投稿します。 同じ質問を分割すると違反になると思うので、 ↓こちらは削除依頼を出してください。 http://okweb.jp/kotaeru.php3?q_id=1557565 で、空文字が返る件ですが、単純に登録されていないだけなのでは? まずはその点を確認してください。 参考までに、取得できる属性は以下のとおりです。 HelpLink HelpTelephone InstallDate InstallLocation InstalledProductName InstallSource LocalPackage ProductID Publisher PackageName RegCompany RegOwner URLInfoAbout URLUpdateInfo VersionMinor VersionMajor VersionString

共感・感謝の気持ちを伝えよう!

質問者からのお礼

早急な御回答ありがとうございます。 違反の件はよく理解できていなくて申し訳ありません。 登録はインストーラが行なっているのではないのですか。登録の方法はどうするのでしょうか

関連するQ&A

  • インストーラ作成について

    開発環境:VB6sp2 OS   :W2000sp2 VSI   :VSI1.1 はじめて投稿させていただきます。 VBで開発したプログラムのインストーラを作成しています。 Visual Studio Installer1.1にて インストーラー(msi)を作成したのですが、 Windows2000の管理者権限でのインストールはできるのですが 、 制限ユーザーでは、Administratorのアカウントをきかれます 。 Administratorのパスワードをしらないユーザーは、 インストールができません。 制限ユーザーでこの手続きなしにインストールできる ようにする方法はあるのでしょうか? MSのサイトのVSIについてのドキュメントには、 以下の記述がありました。 http://www.microsoft.com/japan/msdn/vstudio/ downloads/vsi/default.asp (「ロック ダウン」マシンでのインストール プログラム の実行機能) この記述をみて、VSIでできるのではないかと方法を 探っています。 もしご存知でしたらお知恵をいただけないでしょうか? よろしくおねがいいたします。

  • VB6で作成したアプリを配布するため、インストーラーを作成したいのです

    VB6で作成したアプリを配布するため、インストーラーを作成したいのですが、 「Visual Studio Installer」がダウンロードできません。 「Visual Studio Installer」はどこから入手すればよいでしょうか? ご存知の方、ご教授願います。

  • VB6(SP6)のセットアップ作成について

    ご存じの方ご教示下さい。 VB6でアプリと、セットアップを作成したのですが、インストールしたユーザーでは正しく動作するのですが、他のユーザーではスタート→プログラム→自作アプリ名がでてきません。 オールユーザー対応でセットアップしたいのですが・・・ ご存じのかたご教示願えないでしょうか? 尚、Visual Studio Installer で作成しました。 以上、宜しくお願い致します。

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

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

  • .NET2003でのインストーラについて

    Microsoft Visual Studio .NET 2003で「Setup.msi」といった感じのインストーラを作成しました。 開発言語はVBです。 このインストーラを使用して他のパソコンにインストールする際に、Windowsインストーラのバージョンはどれが入っていればいいのでしょうか? また、最新の3.0でないとダメなのでしょうか。 よろしくお願いいたします。

  • VB6のインストールでDCOMユーザーアカウントが作成できない

    前に一度アンインストールVB6ですが、急遽VB6が必要になり、 VB6をインストールしようとしたのですが、CDキーを入力する画面で、 名前と会社名が前に入力したものと、同じものが表示されていて おかしいな?と思ったのですが、そのまま作業をつづけていたのですが、 コピーが終わり設定処理のところで、 DCOMユーザアカウントが作成できませんでした。 とエラーメッセージが表示され、インストールできませんでした。 レジストリをいじらなければ、いけないような気がするのですが、 どのようにすればインストールできるかご教示をお願いいたします。 PS:ビジュアルスタジオ6.0エンタープライズ版からVB6のみをインストールしようとしています。

  • Visual Studio Installer 1.1を入手したい

    Visual Studio Installer 1.1を使用していました。 新しいパソコンにVisual Studio Installer 1.1をインストールしたいのですが、ダウンロード先がありません。 Visual Studio Installer 1.1の入手方法あるいはかわりの Installerを教えていただけないでしょうか。 使用言語はVB6です。

  • インストーラ実行中にエラーが発生

    初歩的なことかもしれませんが教えて下さい。 Windows2000のVB6.0で開発したアプリをディストリビューションウィザード(Visual Studio6.0)でインストーラを作成しました。実際に、このインストーラでインストールを実行すると、インストールの最初で以下のエラーが発生してインストールできません。但し、インストールするPCによっては正常にインストールできる場合もあります(OSはWin98、2000で出来たり出来なかったり)。なぜこういった現象が発生するのか教えて下さい。 エラー:インストールで指定された'パス\ファイル名'が見つかりません。

  • W-Zero3アプリを作ろうと思っています/VB6.0

    http://www.gihyo.co.jp/dennou/article.php/v113/10/ Windows Mobile 5.0のアプリを作りたいのですが、 Visual Studioをもっていません。 しかし、開発環境Visual Basic 6.0なら昔購入しました。 ひさびさにアプリを作ろうと思います。 SDKなどインストールすれば、VB6.0で開発できますか? Visual StudioでできることなのでVB6.0で開発できる気が するのですが、そういう記事がなく心配なところです。 作り出してインストール後などで駄目だったということ にならないでしょうか? ちなみに Advanced esのw+infoのようなToday画面にニュースを表示する アプリを開発したいと考えています。

  • 【VB2005】.NET Frameworkがインストールされているかチェックする方法求ム

    23歳男性です。 visual studio 2005で開発しております。 vb.netで「.NET Framework」がインストールされているか、いないかをチェックするメソッドはあるのでしょうか? ご存知でしたらご教授願います。