HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
1208
佐世保ネットワークを使ってパソコン間で画像送信の方法を教えてください10解決


佐世保

リンク

2007/12/8(Sat) 10:14:27|NO.12714

インターネット回線を使ってパソコン間で画像のやり取りをしたいのですが、hspsockでは文字データしか送信できないようなのでやり方がわかりません。
方法を知っている方、教えていただけるとうれしいです。



この記事に返信する


f

リンク

2007/12/8(Sat) 13:42:21|NO.12716

バイナリデータも送れるんでね?



佐世保

リンク

2007/12/8(Sat) 20:38:44|NO.12717

返信ありがとうございます。
バイナリデータで画像を送信できるんですか?



Begriff -いくす-

リンク

2007/12/8(Sat) 21:08:34|NO.12720

どうも Begriff -いくす- です.


できます。

バイナリとしてファイルを読み込んで (bload)
バイナリとして送ればいいです。 (sockputb)

受け取るときも

バイナリとして受け取って (sockgetb)
バイナリとしてファイルに保存すればいいです。 (bsave)

こんな感じだと思います。



佐世保

リンク

2007/12/8(Sat) 22:59:18|NO.12724

fさん、 Begriff -いくす-さん、ありがとうございます。やってみます。
それと、新たな壁にぶつかってしまったのですが、スクリーンショットをバイナリデータとして読み込むことは可能でしょうか?
また、保存せずにHSPのウィンドウ上にバイナリデータで取得した画像を表示させることは可能ですか?



f

リンク

2007/12/9(Sun) 03:46:17|NO.12732

最初画面を送りたいのかと思ったら、受けたデータを表示したいのか。

bmpやjpgやgifなら一度保存した方が手っ取り早いだろ。
VRAMのデータを送っているならVRAMに書き込めば良いんでね。
VRAM扱う時は送信側と受信側で画面サイズが違う可能性が有る事と
書き込み終わったらredrawしないと実際の画面に反映しない事を覚えとくと良いぞ。



佐世保

リンク

2007/12/9(Sun) 11:19:26|NO.12739

ありがとうございます!やってみます。



佐世保

リンク

2007/12/9(Sun) 20:57:35|NO.12743

gdi32.dllを使用してデスクトップを保存後、その保存したbmpをbloadで読み込んで
sockputbで送信後、sockgetbで受信してbsaveしてみたのですが、送信側で保存されたbmpは
ちゃんとデスクトップをキャプチャーできているのですが、受信側で保存されたbmpデータを
開いてみると、サイズなどは正しくて開くことは出来るのですが、真っ黒で
何も写っていない画像が保存されます。どのようにすればちゃんと保存されるでしょうか?



f

リンク

2007/12/9(Sun) 21:06:25|NO.12744

どんな処理をしているのか内容も見せずに、それに答えろと申すか。



f

リンク

2007/12/9(Sun) 21:09:10|NO.12745

とりあえず送信前のファイル内容と受信したファイル内容を直接比較してみりゃ良いんでね。



佐世保

リンク

2007/12/9(Sun) 21:19:00|NO.12747

fさんありがとうございます!txtにして比較してみたところ、受信されたファイルが
途中で内容が途切れていたのでスクリプトを確認してみたところ、受信側のsockgetbは
受信サイズを3200000にしていたのですが、送信側のsockputbでサイズ設定を
していなかったためでした。解決しました。本当にありがとうございましたm(_ _)m



ONION software Copyright 1997-2023(c) All rights reserved.