|
HmJre.dllで正規表現を行うソフトを作りたいのですが、初期化の時点でつまづいて
います。Visual C++.NETのプロジェクトで"jreusr.h"をインクルードして、DLLをプ
ロジェクトと同じフォルダに入れ、JRE.dllのヘルプを元に以下のコードを書いてみ
ました。
LPJRE2OPEN lpJre2Open;
JRE2 jreData;
HINSTANCE hDll;
if (NULL == (hDll = LoadLibrary("HmJre.dll")))
{
return FALSE;
}
if (NULL == (lpJre2Open = (LPJRE2OPEN)GetProcAddress(hDll, (LPCSTR)"Jre2Open
")))
{
FreeLibrary(hDll);
return FALSE;
}
if ( (*lpJre2Open)((LPJRE2)&jreData) )
{
return TRUE;
}
else
{
int x = jreData.nError;
return FALSE; //ここに行ってしまう
}
FreeLibrary(hDll);
困ったことに、LoadLibraryとGetProcAddressは成功しますが、Jre2Open実行でFLASE
が返ってしまいます。 jreData.nErrorの値は-858993460です。メモリも十分ありま
すし、エラーを起こす要因はまったく考えられないのですが・・・。
もしかするとプロジェクトの設定が間違っているのかもしれませんし、上記コードに
ミスがあるのかもしれません。何が原因なのか、解決法は存在するのかお教えくださ
い。
|
|