Microsoft Visual C++ で C モジュールとして記述された JD Edwards ビジネス関数があります。LoadLibrary を使用してサード パーティの DLL にアクセスしています。スタンドアロンのテスト プログラムでは、コードは問題なく実行されます。JDE 内から実行すると、LoadLibrary は NULL を返し、GetLastError は 126 を返します。これはThe specified module could not be found
、MSDN によると意味します。DLL へのフル パスを入力しようとしましたが、パス内の \ 文字を 2 倍にすることを覚えていました。変わりはない。
DLL の読み込みを妨げる依存関係がないことを確認しました。DUMPBIN /DEPENDENTS は次を返します。
WSOCK32.dll
USER32.dll
GDI32.dll
WINSPOOL.DRV
ADVAPI32.dll
KERNEL32.dll
これらは標準の Windows DLL のように見えるので、途方に暮れています。