MBUILD コマンドを実行すると DLLRegisterServer エラーとなるのはなぜですか?
6 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2015 年 3 月 10 日
回答済み: MathWorks Support Team
2015 年 3 月 10 日
MATLAB Compiler を使用する前に、C または Fortran コンパイラを選択するために MBUILD コマンドを実行しようとしていますが、以下のようなエラーとなります。
--> ""C:\MATLAB71\bin\win32\mwregsvr"
"C:\MATLAB71\bin\win32\mwcomutil.dll""
Error: DllRegisterServer in
"C:\MATLAB71\bin\win32\mwcomutil.dll" failed
Undefined subroutine &mexsetup::expire called at
C:\MATLAB71\/bin\mexsetup.pm line 752.
??? Error using ==> mbuild
Unable to complete successfully
採用された回答
MathWorks Support Team
2015 年 3 月 10 日
このエラーは現在のユーザーがレジストリの更新を行うために必要なアクセス権を持っていないことが原因です。MBUILD コマンドは MWREGSVR コマンドで 2 つの COM コンポーネントのレジストリを行います。
この現象がアクセス権の問題であることを確認するために、コマンドプロンプト (DOS 窓)を起動し、以下のようなコマンドを実行します。
R2009b 以前の場合:
cd $MATLABROOT$\bin\$ARCH$
regsvr32 mwcomutil.dll
R2009b以降の場合
cd $MATLABROOT$\runtime\$ARCH$
regsvr32 mwcomutil.dll
ここで、$MATLABROOT$ は MATLAB インストールされたフォルダです。また、$ARCH$ は WIN32 または WIN64 となります。そのまま実行しますと以下のようなエラーとなります。
ERROR: DllRegisterServer in mwcomutil.dll failed. Return code was: 0x80070005
Windows 7以降の場合、コマンドプロンプトまたは MATLAB 起動時に起動アイコンを右クリックし、「管理者として実行」を選択して起動することにより解決します。
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で MATLAB Compiler SDK についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!