1

dlopen、dlsym ロード ライブラリ関数を使用します。プログラムを実行すると、この問題に遭遇しました:</p>

  1. dlopen load 関数を使用し、正しい関数を呼び出しますが、結果は正しくありません
  2. dlopen を使用せず、関数を直接呼び出すと、正しい結果が得られます

どうすれば問題を見つけることができますか?

例:</p>

void *dl_handle = NULL;
char *error = NULL;

/* Open the shared object */
dl_handle = dlopen(pLibraryName, RTLD_LAZY );
if (!dl_handle) 
{
     return -1
}

char* error = NULL;
pFunc = dlsym( dlHandle, "mysql_rollback");
error = dlerror();
if (error != NULL)\
{
    return -1
}
4

0 に答える 0