1

PySideモジュールを使用してPythonで記述された簡単なプログラムを実行して、Webサイトのスクリーンショットを撮ってみました。このプログラムは、OpenSSL(既にインストールされている)を使用するWindows7で実行しています。

次のエラーが発生しました。

QSslSocket: cannot call unresolved function SSLv3_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function SSL_library_init
QSslSocket: cannot call unresolved function ERR_get_error
4

1 に答える 1

0

私は単純なグーグル検索をしてhttp://codeblog.vurdalakov.net/2009/11/solution-qsslsocket-cannot-call.htmlに出くわしたので、私は決してこの解決策を信用しません

ライブラリ内の変更により、エラーは少し異なると思います。

問題

QSslSocketまたはクラスでHTTPSURLを開こうとするとQNetworkAccessManager、次のエラーが発生します。

QSslSocket: cannot call unresolved function SSLv3_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function ERR_get_error
QSslSocket: cannot call unresolved function ERR_error_string

解決

OpenSSLWin32またはWin64バイナリをインストールする必要があります。

  1. Win32OpenSSLインストールプロジェクトページを開きます。
  2. 「Win32OpenSSLv0.9.8lLight」など、最新の「light」Win32またはWin64インストールパッケージをダウンロードします。
  3. 任意の場所にインストールします。「MicrosoftVisualC++ 2008再頒布可能パッケージ」の警告を無視し([OK]をクリック)、OpenSSL DLLを「OpenSSLバイナリ(\ bin)ディレクトリ」にコピーすることを選択します。
  4. \binフォルダからまたはが配置されているのと同じ場所にコピーlibeay32.dllしてください。ssleay32.dllQtNetwork4.dllQtNetworkd4.dll
于 2013-01-08T11:55:20.567 に答える