問題タブ [installshield]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
installation - MSI がアンインストールを続行するために元の .msi ファイルを必要とするのはなぜですか?
お気づきの方も多いと思いますが、MSI パッケージをアンインストールするときに、Windows は元の.msi
ファイルを要求します。何故ですか?
私はそれに対する欠点しか見ることができません:
- ネットワークの変更に対する回復力がありません。
- ローカル ディスクの変更に対する回復力がありません。
- ユーザーの予想外。
- 通常、ユーザーは自分のデスクを離れて正しい CD を入手するためのキャンペーンを開始する必要があります。
- インストールが自己完結型ではないことを証明します。
- msizap などの安全でないツールの使用を促進します。
- これにより、「次回は zip ファイルを使用する」という考え方が促進されます。
誰かがこれに光を当てることができますか?
sql-server-2005 - InstallShield を使用して SqlServer 2005 Express をインストールし、一意の名前付きインスタンスを作成する
Installshield 2008 Express を使用してインストール パッケージを作成しています。私のアプリケーションは、Sql Server 2005 Express Edition に依存しています。再配布可能タブで「microsoft sql server 2005 Express」の前提条件を確認できることはわかっています。ただし、これではインストールは完全にエンド ユーザーの手に委ねられます。エンド ユーザーが最初から最後まで既定値を選択すると、名前付きインスタンス SqlExpress を使用したインストールになってしまいます。少なくとも、MyCompany という名前のインスタンスをデフォルトとしてインストールを続行したいと考えています。
どうすればこれを達成できますか?
installshield のより強力なバージョンにアップグレードする必要がありますか?
deployment - プログラムでユーザー権限を引き上げる
私はしばらくインストールを維持してきましたが、私は専門家ではありません。今、私はこれに対する解決策を考え出すように求められました:
当社のソフトウェアは、非常に管理された環境で実行する必要があるため、常にコンピューターと一緒に販売されています。インストーラーを実行するには、管理者権限が必要です。これまでのところ、管理者権限を持つユーザーと管理権限のないユーザーの 2 人のユーザーがいました。当社の顧客サービスは管理者としてログインし、ソフトウェアをインストールしてマシンを再起動し、ユーザーが通常のユーザーとしてアクセスできるようにします。
ここで、ユーザーが自分でソフトウェアをインストールできるようにしたいのですが、変更してはいけないものを変更できるため、管理者としてアクセスできるようにしたくありません。
それで、インストール中にプログラムでユーザー特権を上げ、その後それらを下げる方法はありますか? インストーラーは InstallShield を使用して作成されていますが、vbscript を使用していくつかの前提条件を確認しています。
installation - 機能がアップグレードされないようにする
InstallShieldインストーラー(MSIではなくInstallScript)を自動的に作成するツールがありますが、現時点での主な問題は、インストールをアップグレードするときに、機能がアップグレードされないようにする方法が必要なことです。インストール中に、ターゲットシステムにインストールされているexeファイルのバージョンを確認したいのですが、これに応じて、アップグレードするファイルのセットから特定の機能を除外できるようにしたいと思います。
FeatureSelectItem(feature, FALSE)
機能のOnInstalling
イベントハンドラーを呼び出してこれを実装しようとしましたが、これにより機能全体がアンインストールされます。これは私が望んでいることではありません。機能をアップグレードから除外したいだけです。
これを行う方法はありますか?
unicode - InstallShield2009 Unicode サポート
当社のインストール プログラムは InstallShield2009 を使用して作成されており、認定要件の一部として、全体で Unicode をサポートする必要があります。
アプリケーション自体は .NET であるため、Unicode をネイティブにサポートしていますが、中国語の文字セットを使用してインストールをテストすると、InstallShield ダイアログによって問題が発生することがわかります。
簡単なグーグルを行ったところ、誰かが IS2008 にはユニコードのサポートがないと見なした関連記事が 1 つ見つかりました。
私もAcressoに直接メールを送りましたが、私は思いやりのある開発者なので、他の誰かが同じ問題を抱えている場合に備えて、将来の参考のためにここに質問を投稿すると思いました.
誰かが過去にこの問題に遭遇したことがある場合は、助けていただければ幸いです。ありがとう。
vbscript - InstallShield セットアップで VBS カスタム アクションを実行しようとすると、1720 エラーが発生するのはなぜですか?
カスタム アクションは次のように構成されます。
カスタム アクション名: MyCustomAction
VBScript ファイル名:
<PathVar01
>\MyFolder\MyVBSfile.vbsScriptFunction : MyFunction
リターン処理: 同期 (終了コードを確認)
スクリプト内実行: 即時実行
これは、次の InstallScript コードを介して実行されています。
セットアップが InstallScript のその行に到達すると、インストーラーは次のようなエラー アラートを表示します。
「エラー 1720。この Windows インストーラー パッケージには問題があります。このインストールを完了するために必要なスクリプトを実行できませんでした。サポート担当者またはパッケージ ベンダーにお問い合わせください。」
MsiDoAction によって返される結果コードは '1603' であり、winerror.hによると、次のようになります。
なぜこうなった?ファイルが適切に含まれているかどうか疑問に思い始めていました。それでも、私は正しいファイルを指しています.InstallShieldサポートファイルを介してVBSを含めようとしました.これにより、ファイルがセットアップに存在することが保証されると考えましたが、同じ結果です.
installation - InstallShield でプログラムによって INSTALLDIR を設定する
InstallShield v8.02 で INSTALLDIR をプログラムで変更しようとしています (バージョンについては何もできません)。
私のコードは、このコードの 3 行目に「不明なエラー」という例外でクラッシュします (C#)
助言がありますか?
windows-installer - 連鎖したmsi/Bootstrapper /前提条件?
エンドアプリケーションを形成するために一緒にインストールする必要があるいくつかのコンポーネントMSIパッケージがあります。
問題は、パッケージを構成するコンポーネントを更新して、コンポーネントをhttpファイルサーバーで再起動できることです。どのようなアプローチを取るべきですか?
私が書いているインストーラーは「マスター」インストーラーです。その1つのコンポーネントでのみアップグレードを実行するには、クライアントマシンにインストールされている各コンポーネントのバージョンを読み取ることができる必要があります。
また、アプリケーションを初めてインストールする場合、インストーラーは必要なすべてのコンポーネントをダウンロードしてインストールします。
Installshield2009を使用しています。
チェーンされたMSIを調べましたが、マスターインストーラーが空です。できるだけ軽量にする必要があるからです。
ブートストラップアプリケーションの作成方法がわかりません。私の会社では、installshieldを使用してインストーラーを作成することを望んでいます。
私は調査しました-そして明らかに前提条件はアンインストールされることを意図されていません。
バージョン番号を変更して、ダウンロードで必要なコンポーネントのみをダウンロードし、インストーラー全体をダウンロードしないようにすることで、マイナーアップデートを実行できると思います。現在、私はあなたが提案した方法(sascha)を実装しており、私の会社はInstallShieldを通じて提供されるFLEXnet接続サービスを使用している。私が言及した「コンポーネント」(開発者が使用するのが大好きな用語)は、InstallShieldのコンポーネントの概念と概念が似ています。ただし、「コンポーネント」を機能によってカプセル化されるように変更したため、リリースのビルド時に、各「機能」がcabファイルにラップされるように選択できます。
これはとても紛らわしいように聞こえます-私にとってさえ。
機能<コンポーネント(サービスを含む)に頼ってきました
私の会社は、Installshieldを除く他のインストーラープログラムの使用を拒否しています。私の推測では、遠い将来に前提条件の要件を更新するには、新しいインストーラーを作成し、アプリケーションをメジャーアップグレードとして再リリースする必要があります。それは私には理にかなっています。
Perermtate、以前にインストールされた前提条件をアンインストールする方法はないと思います。これは、前提条件が他のアプリケーションのプラットフォームとして必要になる可能性があるためです。すべての「前提条件」は、アプリケーションのサードパーティコンポーネントであることが意図されていたためです。 。
ご回答ありがとうございます!
.net - IIS が有効かどうかを検出する
IIS が有効になっているかどうかを検出する方法はありますか?
インストールされているかどうかを確認する方法は知っていますが、インストールされているが有効になっていないかどうかを知る必要があります。
また、これは InstallShield を介してネイティブに実行できますか? カスタム アクションを記述できるため、.NET 経由でこれをチェックすることは許容されますが、IS 呼び出しがある場合はそれが理想的です。
ヒント/ヒントは大歓迎です、ありがとう
installation - Installshieldとユーザーダイアログを使用したMSIアンインストールでの特権の昇格
次のことを実現する必要があります。MSIをアンインストールすると、ソフトウェアを削除する方法を正確に認識しているWindowsインストーラーに基づいてユーザーダイアログが表示されます(この場合、ユーザーはデータベースも削除するかどうかを選択する必要があります)。
実行中、アンインストールプロセスはカスタムアクションもトリガーします。これらのアクションにはすべて、管理者権限が必要です。
そのため、「プログラムと機能」を取得して、「削除」で完全なUIを表示するか、「変更」を押してから削除するときに管理者権限の認証ダイアログを表示する必要があります。
どうすればよいですか?