ターミナルサーバーのVB 6.0が起動します“インストールの準備”非管理者ユーザー向けのWindowsインストーラー
-
03-07-2019 - |
質問
これはITの質問のように思えるかもしれませんが、私が尋ねたほとんどのITスタッフは私を助けられませんでした。 私が働いている場所には、 Windows 2003サーバーがあり、複数の開発者がRDPを介して接続しています。一部のユーザーの権限をダウングレードしました(管理者でした)。そして、 Visual Basic 6.0 を起動すると、Windowsインストーラー「インストールの準備」を取得します。ダイアログ。約2分後に消えますが、それは迷惑で時間の無駄です。 system32およびdllcacheで msi.dll の名前を変更するなど、いくつかのことを試しました。開発者はレジストリおよび c:\ Program Files 、しかし何も機能していないようです。
ご協力いただければ幸いです。
ありがとう
ネルソンマーモル
解決 4
ここで提供された解決策のどれも問題を解決しませんでした。ご協力いただきありがとうございます。さらに調査を重ねた結果、記事でこの手順を見つけ、問題を解決しました。 1)C:\ Windows \ System32フォルダーに移動し、msi.dllを探します。
2)msi.dllの名前を他の名前に変更します。
3)C:\ Windows \ System32 \ dllcacheフォルダーに移動し、 msi.dll の名前も変更します。
この手順を実行しなかった場合、System32フォルダー内のmsi.dllが自動的に再作成されます。
このdllcacheフォルダーが見つからない場合、フォルダーオプションでプロパティを変更する必要がある場合があります。
Windowsエクスプローラーで-> [ツール]メニューに移動->フォルダオプションを選択-> [表示]タブをクリックします->オプションのチェックを外す" 保護されたオペレーティングシステムファイルを非表示にする(推奨)"。
4)VB6を起動すると、エラーメッセージが表示されることなくVB6を起動できるようになりました。
5)System32フォルダーおよび dllcache フォルダーでファイルの名前を msi.dll に変更します。
他のヒント
VBの起動方法を変更してみます。 vb6.exeへのリンクを作成し、インストーラーによって作成された既存のリンクの代わりに使用します。
サーバーで ProcessMonitor を起動し、フィルターを設定します特定のユーザーログインの場合、通常どおりログインするようにします。これにより、特定のファイルにアクセスしようとしたときに失敗したアクセス許可が表示される場合があります。
msi.dllの名前変更/削除は、このような問題の原因となる解決策ではありません。これは問題を覆い隠すだけです。
通常、2つの原因が考えられます:
-
ターミナルサーバーの一部のドライブ、権限のないユーザーはアクセスできません-このドライブルートフォルダーへの読み取りアクセスを許可します。
-
誤ってインストールされたコンポーネント(前回はmscomctl32.ocxでした)、イベントログを調査できるもの(通常、欠落しているコンポーネントのGUIDのみが記録されますが、実際のファイルを見つけるのは必ずしも簡単ではありません)欠落/誤って登録されている)。