vc++でアプリケーション開発をしていますが

ファイルのアップロード/ダウンロードをhttpもしくはhttpsでおこないたいのですが、比較的簡単の利用できるAPIはあるのでしょうか?winstockはなにかと面倒だときいたのですが・・・

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/09/16 16:08:58
  • 終了:--

回答(2件)

id:redcherry No.1

redcherry回答回数135ベストアンサー獲得回数02005/09/16 16:43:00

ポイント25pt

http://frog.raindrop.jp/knowledge/archives/000287.html

MFC の WinInet クラスで HTTP を実装してみる:.knowledge - frog.raindrop.jp

VCのバージョンや.NET Frameworkなどのことはさておいて、とりあえずVC++のMFCで行うとするならこんなのでどうでしょう?


WinInetのCHttpConnectionでHTTP接続をして、CHttpFileでHTTP Request送信と受信データをファイル化できます。

(IEがあれば)特別に何かをインストールする必要もない筈です。


例に挙げた事例はConsoleアプリですが、CHttpConnectionやCHttpFileで検索を掛ければいくらでも他の事例が見つかると思います。


httpsへの対応はINTERNET_FLAG_SECUREを使えば出来ます。


ファイルのHTTPによるアップロードはサーバとの連携があるので一概には言えませんが、HTTPプロトコルをよく理解していないと難しいかもしれません。

id:ohmix1 No.2

ohmix1回答回数235ベストアンサー獲得回数142005/09/16 16:45:06

ポイント25pt

私は上記クラスをよく利用しています。

内部ではWININET.DLLを利用しているので、比較的古いWindowsでも安心です。


ダウンロードは、GETまたはPOSTした後のResponseをファイルに書き出すだけです。

アップロード処理はサンプル「Synchronized HTTP POST multiparts/form-data」のとおりです。


ところで、HTTPでアップロードするにはサーバ側にもCGIなどの処理が必要なことはご存知ですよね。


http://shamegami.moe-nifty.com/sexy/2005/week7/

ココカシコ: 2005年2月14日 - 2005年2月20日

XMLコンポーネントを利用する方法もありますが、

アップロードは面倒だし、MSXML(IE)のバージョンに依存したりします。

※上記URLはVBScriptですが...

id:masa14149

参考になりました

サーバーサイドのプログラムはphpで実現できないか

検討しているところです

2005/09/16 17:35:23

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません