0

私は現在、差し込み印刷用の Microsoft Word 2007 など、多数の外部依存関係を持つ Microsoft Access 2000 基幹業務アプリケーションをサポートしています。アプリケーションはバッチ スクリプトを使用して、次のスクリプトのように、ユーザーのコンピューター上の各 DLL をコピーして (必要に応じて) 登録することにより、外部参照を最新の状態に保ちます。

COPY "\\fileshare\references\fileX.dll" "C:\WINDOWS\system32\fileX.dll"
regsvr32 "C:\WINDOWS\system32\fileX.dll"

影響を受ける DLL は次のとおりです。

  • comdlg32.ocx (登録済み)
  • mscomctl.ocx (登録済み)
  • stdole2.tlb
  • MS09.dll
  • MSACC9.OLB
  • msoutl.olb
  • MSWORD.OLB
  • VBE6.DLL (登録済み)
  • dao360.dll (登録済み)
  • msado21.tlb

多くの場合、バッチ スクリプトは単純にユーザーの DLL を同じバージョンの同じ DLL に置き換えます。しかし、何らかの理由で、このバッチ スクリプトが実行され、ユーザーが Office 2007 でドキュメントを開こうとすると、構成ウィザードがポップアップし、ドキュメントからフォーカスが奪われ、終了するには再起動が必要になります。

これは実際には重大な作業停止の問題ではありませんが、確かに厄介です。Office 2007 DLL の 1 つであることは明らかですが、どの DLL が原因であるかを特定することはできませんでした。

どんな入力でも大歓迎です!

4

1 に答える 1

0

OLB ファイルを配布するべきではないことは理解しています。これらは Office のインストールに含まれており、Office がインストールされているワークステーションには既に存在します。

また、ADO、DAO、またはその他の MDAC/WDAC コンポーネントを手動でインストールしないでください。古い OS の場合はMDAC_TYP.EXE、データ アクセス コンポーネントのセット全体をインストールするインストーラ ( ) を実行する必要があります。詳細については、グーグルで検索しMDAC installerてください。新しい OS では、WDAC は Windows の一部としてインストールされます。

あなたのリストの中で、配布しても安全だと私が考える唯一のファイルは次のとおりです。

comdlg32.ocx
mscomctl.ocx
stdole2.tlb  (although, this REALLY shouldn't be necessary)

他のすべてのファイルは Office の一部であり、既にボックスに含まれているか、WDAC/MDAC の一部です。

どうしても必要な場合は、Access 2000 ランタイムをいつでもインストールできます。これにより、Access 2000 をインストールしていないユーザーでもアプリケーションを起動できるようになります。

于 2013-03-07T16:04:57.040 に答える