OCX 内で UNLHA32.DLL を使いたいのですが。


prophet  2004-03-20 00:29:54  No: 53324

あるOCXを作成中で、そのメソッド関数内でUNLHA32.DLLをロードしてUnlha()を呼び出そうとしています。
するとこの関数の実行中にシステムエラーを起こしてしまいます。ソースは次の通りです。

typedef int (WINAPI *LPFNUNLHA)(const HWND, LPCSTR, LPSTR, const DWORD);

short CTEST1Ctrl::Compress(LPCTSTR szCmdLine) 
{
  HMODULE      libhandle;
  LPFNUNLHA    lpfnUnlha;
  int        rtn;
  
  // TODO: ここにディスパッチ ハンドラ コードを追加してください。
  // UNLHA32.dll 呼び出し
  libhandle = LoadLibrary("UNLHA32.DLL");
  if ( libhandle == NULL ) {
    return 1;
  }

  // Unlha() 呼び出し
  lpfnUnlha = (LPFNUNLHA)GetProcAddress(libhandle, "Unlha");
  if ( lpfnUnlha == NULL ) {
    FreeLibrary(libhandle);
    return 2;
  }
  rtn = lpfnUnlha(NULL, szCmdLine, "C:\\TEST.TXT", 1024);
  if ( rtn == NULL ) {
    FreeLibrary(libhandle);
    return rtn;
  }

  // UNLHA32.dll 呼び出し
  FreeLibrary(libhandle);

  return 0;
}

どこかおかしいでしょうか?なおこの OCX は ASP ファイル内で使用していまして、JavaScript からメソッド呼び出しをしています。


たく  2004-03-22 20:20:51  No: 53325

どういったエラーなんでしょうか?


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加