VB.NET

DLLがついているプログラムで、他のパソコンで動作確認済みの物を頂いたのですが、動きません。

■現象
(1)VisualStudio .Netでソースを開きます。
(2)ソリューションエクスプローラの参照設定から****.dllを削除します。
(3)メニューのプロジェクトで参照の追加を選択します。
(4)参照の追加画面でCOMタブを選択します。
(5)参照ボタンをクリックし、System32フォルダ内より****.dllを
選択します。
(6)「選択されたコンポーネント」のリストにに****.dllが存在することを
確認
(7)OKボタンをクリックします。←ここでエラーがでます


■エラー
『’C:¥WINDOWS¥system32¥xxxxxx.dllへの参照を追加できませんでした。タイプライブラリを読み込めませんでした。タイプライブラリ/DLLの読み込みエラーです。』

作成者に問い合わせたところ原因はわからないそうです。ちなみに作成したDLLはVB6.0で作成していまして、DLLつきの.NETプログラムはその作成者から頂きました。作成者の環境では普通に動いているようです。

どなたか教えてください><めちゃくちゃ困ってます

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:aki73ix No.1

回答回数5224ベストアンサー獲得回数27

ポイント40pt

似たような現象が、うちのパソコンでもありました

その時は、VS.NetのCDで一度 .Net FrameWorkをインストールしてある環境でプログラムを開いたのですが、

Windows Updateで .Net FrameWork1.1SP1/日本語版1.0SP3が入っていないのが原因でした


そのエラーの出る環境のPCではちゃんとWindowsUpdateできてるでしょうか?


状況から察するにDLLのバージョンが古くてDLLの関数に違いがあるのが原因のようです


WindowsUpdateでも解決しない場合は、そのプログラムが動くパソコンのDLLを同じOSからコピーすると動く場合があります

ただ、SystemフォルダのDLLを置き換えるのは危険なので、上書きしてしまわないで、バックアップを取っておくのが無難でしょう

単にプログラムを動かすだけならば、System32フォルダに上書きしてしまわずに、カレントフォルダに新しいDLLをコピーして取り込めば、そのプログラムだけが参照するようにすることもできます

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません