自己署名付き Java アプレットで System.load() を使用しています。古いバージョンの dll は正常にロードされますが、新しいバージョン (DLL が正常にビルドされていても) はロードされず、例外がスローされず、コードが停止するだけです。そのトラックで。
これを引き起こす原因についてのアイデアはありますか?
これは、jar ファイルをデプロイする html です。
<embed id = "IB"
type = "application/x-java-applet"
width = "{$width}"
height = "{$height}"
code = "{$code}"
archive = "{$archive}"
username = "{$username}"
password = "{$password}"
account = "{$customer_ref}"
debug = "{$debug}"
baseweburl = "{$baseweburl}"
webserviceurl = "{$webserviceurl}"
/>
Dll ファイルを作成するために追加した C++:
ヘッダー (javah 作成)
/*
* Class: i_jni_B
* Method: DeviceOnline
* Signature: ()Z
*/
JNIEXPORT jboolean JNICALL Java_i_jni_B_DeviceOnline
(JNIEnv *, jobject);
Cpp ファイル
JNIEXPORT jboolean JNICALL Java_i_jni_B_DeviceOnline
(JNIEnv *env, jobject)
{
try
{
CDevice* clsDevice = new CDevice();
clsDevice->Initialize();
clsDevice->Release();
return true;
}
catch (System::Exception^ ex)
{
return false;
}
}