2

不思議なことに、以前はこれが機能していましたが、システムを再インストールし、w7にアップグレードしたところ、このコードをコンパイルできないようです。

問題は、ほとんどのアプリケーションでwinhttp.hを使用していることですが、wininet.h機能を使用して作成した単純なFTPクライアントオブジェクトがあります。どのヘッダーをどこにどのように含めても、アプリケーションをコンパイルできないようです。

現在、stdafx.hにあります:

#include <winhttp.h>

そして私のftpクライアントでは.c

#include <wininet.h>

これにより、次の場合に失敗するFTPクライアントオブジェクトを除いて、すべてのオブジェクトが正常にコンパイルされます。

c:\ Program Files \ Microsoft Platform SDK \ Include \ WinInet.h(52):警告C4005:'BOOLAPI':マクロの再定義c:\ Program Files \ Microsoft Platform SDK \ Include \ winhttp.h(45):前の定義を参照'BOOLAPI'のc:\ Program Files \ Microsoft Platform SDK \ Include \ WinInet.h(270):エラーC2143:構文エラー:'(' c:\ Program Files \ Microsoft Platform SDK \ Include\WinInetの前に'}'がありません.h(270):致命的なエラーC1903:以前のエラーから回復できません;コンパイルを停止します

何かアドバイス?

4

2 に答える 2

3

最後に、winhttp includeをcppファイルに移動し、wininetをftpクライアントヘッダーに配置することで、わかりました。

于 2009-10-30T16:46:26.473 に答える
2

おそらく、winhttp.hとwininet.hの間の衝突です。

于 2009-10-31T11:39:33.633 に答える