Visual Basic 実行時エラー

実行時エラー'339'、コンポーネント '???.OCX'、またはその依存関係のひとつが 適切に登録されていません。ファイルが存在しないか、あるいは 不正です。

最終更新日:2004/10/23

OCX を利用するには、レジストリに登録する必要があります。通常はプログラムのセットアップを行えばレジストリに登録されるはずなので、このエラーは発生しません。 エラーが発生するとしたら、次の2つの原因が考えられます。

  1. EXE ファイルをコピーしただけなどの理由で、レジストリに OCX が登録されていない。
  2. レジストリに OCX を登録しようとしたが失敗した。
問題は 2. の方です。OCX の登録は Regsvr32 コマンドを使えば手動でもできるのですが、Windows XP でこれを実行しても失敗する OCX がありました。その名前を聞くと imgedit.ocx。 VB に付属の OCX ではないので開発元を検索してみると、Windows 95 から 2000 まで標準装備されていた Kodak社製のイメージングというソフトに付属する OCX であることが判明しました。それをほかのソフトで利用して Windows XP に登録するのは、ライセンス上の問題があるのでは…。

※MSDN ライブラリのエラー番号の一覧に載っていない番号です。


<関連URL>
Kodak Imaging for Windows は Windows XP に含まれない