[過去ログ] ネットワークプログラミング相談室 Port4 (1001レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(2): Unassigned [] 02/10/10 16:55 AAS
主にソケットに関しての質疑応答スレです。
Programming UNIX Socket FAQ (日本語訳)
http://www.kt.rim.or.jp/~ksk/sock-faq/indexj.html
Winsock Programmer's FAQ
http://tangentsoft.net/wskfaq/
過去スレ:
ネットワークプログラミング相談室
2chスレ:tech
ネットワークプログラミング相談室 Port2
2chスレ:tech
ネットワークプログラミング相談室 Port3
2chスレ:tech
902: デフォルトの名無しさん [sage] 02/12/13 14:49 AAS
無いね。「may not」なら「完了しないこともある」だが、
「cannot」だからね。必ずSOCKET_ERRORが返る。
903(1): 900 [sage] 02/12/13 14:54 AAS
>>888より
> いつもエラーリターンでそ? recv とか send とかも。
904: 900 [sage] 02/12/13 14:56 AAS
おっと、connect直後にFD_WRITEが来るから
send()が成功するのは当てはまらないと言われるかな。
905(1): デフォルトの名無しさん [sage] 02/12/13 14:56 AAS
要するに>>896が知ったかということだろ。
906: 900 [sage] 02/12/13 14:57 AAS
connectに関しては全く異論はないよ。
907: 900 [sage] 02/12/13 15:01 AAS
しつこいから最後。
俺には>>896が知ったかだったのではなく、>>898がよく読んでなかっただけに見えるけどね。
あ、俺は>>896ではないよ。
908(1): デフォルトの名無しさん [sage] 02/12/13 15:08 AAS
888がバカなのは確かだが。
909(3): デフォルトの名無しさん [sage] 02/12/13 15:24 AAS
nonblockingなソケットの場合
1. connect()は必ずWSAEWOULDBLOCK.が返ってくる。
2. recv()やsend()とかはいきなり正常終了する可能性がある。
connect()する時は相手からの応答を待つから、即座の復帰はありえない。
recv()やsend()ではバッファの関係で正常/WSAEWOULDBLOCK.両方の可能性がある。
ごっちゃにしたのが混乱の原因(w
910: デフォルトの名無しさん [sage] 02/12/13 15:27 AAS
乙
911: デフォルトの名無しさん [sage] 02/12/13 16:10 AAS
そうそう、send()が一番わかりやすいから書いたけど、
recv()もconnect後にFD_READが来る前でも成功する可能性がある。
そうなると、次にFD_READが来てからrecv()しても、WSAEWOULDBLOCKになる可能性がある。
また、FD_READの処理部で複数回recv()することも出来る。
そして、2回目以降が成功する場合もある。
この場合も次のFD_READで何も受信できない場合が多い。
これは、1回目のrecv()後にバッファにデータが残っていたら、
recv()からの復帰前にFD_READが送られるから。
だったはず。
確か、FD_CLOSEの後にFD_READが来る可能性もあったはず。
912(1): デフォルトの名無しさん [sage] 02/12/13 18:04 AAS
>確か、FD_CLOSEの後にFD_READが来る可能性もあったはず。
普通はおきないけど、FD_CLOSE 前のFD_READ が届いたときに
(ソケットバッファ未満の?)小さな recv() しかしない場合に、
発生する可能性ありなんだっけ?
winsock 側としては、
FD_READ
FD_CLOSE
をポストして、お役御免と思っていたら、FD_READ 時に全部 recv()
してくれないものだから、そこで、あわてて FD_READ を再発行って
印象。
それ以外のシチュエーションでも、FD_CLOSE後のFD_READなどが
ポストされる場合って、あるのかな?
913: デフォルトの名無しさん [] 02/12/13 20:22 AAS
Mobile IPv6 に対応したプログラムくみたいんですけど、誰か参考になる
ソースとかのありかおしえてくれませんか?
914: デフォルトの名無しさん [sage] 02/12/13 23:28 AAS
>>912
前スレで同じ話があったと思う。
915(1): デフォルトの名無しさん [sage] 02/12/14 04:28 AAS
蒸し返すようだけど、>>885-888の話の流れからして、
888は「WSAEWOULDBLOCKを知らせる時には(sendやrecvも)いつもSOCKET_ERRORを返す」
ということを言いたかったんじゃないかと思う。
とすると、888も896も898以降も、みんなわかってるのに言葉のあやでひっかかってただけかも。
日本語勉強しないとね>俺も
916: 名無しさん@接続しっぱなし [] 02/12/14 12:43 AAS
>>845
http://www.cs.rice.edu/~gaurav/papers/usenix99.ps
これ読むと、select(2)のkernel内bottle neckは、
bit操作であることが分かるよ。
だからkqueue/keventとまではいかずに、poll(2)や/dev/pollでも、
selectよりもかなり改善が期待できる。(C10Kな状況では)
http://www.kegel.com/dkftpbench/Poller_bench.html
にベンチマークがある。
917(1): デフォルトの名無しさん [] 02/12/14 12:57 AAS
ウイルスをください
もちろんダウンロードしたときに
こっちのパソコンが感染しないように
してほしいです。
ダウンロードさせてくれるサイトの紹介でも
いいです。
918: デフォルトの名無しさん [] 02/12/14 13:17 AAS
>>917
何に使うの?
919(2): 888 [sage] 02/12/14 17:58 AAS
885=888です。
>>891 非同期と聞いてノンブロッキングと短絡的に考えてました。本で読んだばっかりなのに・・・鬱。
>>915 ふぉろーさんくす・・・言葉足らずだったばっかりに。許して>896,900,903,905,908
>>909 localhostの場合はすぐconnect完了するかもしれんので、必ずじゃないかも(UNIXの本にはそう書いてありました)。
あと、UNIXではEWOULDBLOCKじゃなくてEINPROGRESSだと知りました・・・いろいろ勉強不足。ごめ。もっと修行します。
920(1): デフォルトの名無しさん [sage] 02/12/14 19:27 AAS
>非同期と聞いてノンブロッキングと短絡的に考えてました
って?非同期=ノンブロッキングではないってこと?
http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=%E9%9D%9E%E5%90%8C%E6%9C%9F+%E3%83%8E%E3%83%B3%E3%83%96%E3%83%AD%E3%83%83%E3%82%AD%E3%83%B3%E3%82%B0+%E3%82%BD%E3%82%B1%E3%83%83%E3%83%88&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
とか見ると「非同期(ノンブロッキング)」とか書いてあるけど…。
921(2): 919 [sage] 02/12/14 19:40 AAS
>>920
>って?非同期=ノンブロッキングではないってこと?
ないです。891さんの言うとおり、やっぱりよく間違えられるんでしょう。
「UNIXネットワークプログラミング第2版Vol1」によると、入出力を扱う手法はブロッキング、ノンブロッキング、多重化(select と poll のこと)、シグナル駆動I/O、非同期I/O という5つの方法があって、
非同期I/O は aio_read、aio_write とかいうものを使う方法だそうです。Windows ではたぶん WriteFileEx と ReadFileEx で OVERLAPPED を指定した状態が、それに相当するのではないかと。
922: デフォルトの名無しさん [sage] 02/12/14 19:47 AAS
>>921
あ、そうなんですか。
うーん。何やら難しいですね。。。
923: 909 [sage] 02/12/14 22:40 AAS
>>919
俺はMSDNに書いてある記述の要約をしただけで、
Unix系の実装について触れた覚えはないんだが。
大抵の場合はlocalhostに関してもエラーが帰ってくる可能性が高いだろ。
connect(2)が完了するためには相手がaccept(2)するためにコンテキストスイッチが
発生するから、それを待たずに即座に復帰するよう実装するんじゃないか?
それでも、nonblockingでもconnect(2)が常に失敗することを仮定して
実装すべきではないと思う。つーか、エラーチェックくらいしろ、と。
あと、Unix系ではEAGAIN、EWOULDBLOCK、EINPROGRESSの三種類がある。
Linuxでは、manページによるとconnect(2)はEINPROGRESS、recv(2), send(2)は
EAGAINまたはEWOULDBLOCK(実際は同じ値)を返すらしい。
924(1): 909 [] 02/12/14 22:40 AAS
>>921
使い分けだと3種類だな。
同期: ブロッキング
多重化: ノンブロッキング + (select or poll)
非同期: シグナル駆動I/O or 非同期I/O
Windowsの場合も同様。
ブロッキング、ノンブロッキング、select()、Windowメッセージ、イベント、重複I/Oに分かれる。
WSAEventSelect()ではWindowメッセージかイベントに対して通知をし、
OVERLAPPED渡すやつではイベントか、コールバックに通知をする。
同期: ブロッキング
多重化: ノンブロッキング + (select or event)
非同期: 重複I/O(イベント使わずコールバック)
MsgWaitForMultipleObjectsEx()使えば、スレッドの終了イベントを待機しながら、
Windowsメッセージを処理し、さらにI/Oを完全な非同期で処理することを1スレッドで
実装することも不可能ではない。
925(1): 名無しさん@接続しっぱなし [sage] 02/12/15 01:35 AAS
ネットワークや分散の世界で、
非同期メッセージ通信というと、requestとacknowledgementが分かれていて、
acknowledgmentを別途取得するタイプのメッセージ通信のことです。
例えばDNSを引く時に、gethostbyname(3)を使うと、
関数呼び出しと値返しが同時に起きるので、同期メッセージ通信になります。
WSAAsyncGetHostByName(win32)だと非同期メッセージ通信です。
非同期I/Oは、kernelとのやり取りにおいて、
I/Oの結果をAPI呼び出し時に即座に返えさないタイプのI/Oです。
どのレベルのinteractionについて、同期/非同期を言っているのか、
混同している人は意外に多いようです。
926(2): デフォルトの名無しさん [sage] 02/12/15 01:40 AAS
APIレベルの話なんでねえの?
927: 名無しさん@接続しっぱなし [sage] 02/12/15 01:42 AAS
>>924
Stevens本はpthreadを視野に入れてないので、
(というかStevensの使っているUNIXにはまともなthreadがなかった)
> 多重化(select と poll のこと)
でもいいのですが、Windowsの場合は、
> 多重化: ノンブロッキング + (select or event)
だけじゃなくて、多重化を実現する方法に、
マルチスレッドも入るんじゃないでしょうか?
(それからノンブロッキングは必須でない。多重化をより稼げるけど)
928: 名無しさん@接続しっぱなし [sage] 02/12/15 01:45 AAS
>>926
gethostbyname(3)もsend(2)もどっちもAPIじゃん?
929: 名無しさん@接続しっぱなし [sage] 02/12/15 01:51 AAS
>>926
ん?
「send/recv(write/read)レベルの話なんでねえの?」
「UNIXでいうところのsystem callレベルの話なんでねえの?」
と言っているのかな?
そこに限ってしまうと同期/非同期と
ブロッキング/ノンブロッキングの区別がなくなるから、
同期/非同期はもう少し大きい枠組みで理解しよう、
というのが、分かりにくかったかも知れないけど>>925の主旨でした。
930: デフォルトの名無しさん [sage] 02/12/15 02:07 AAS
このスレで扱ってる同期/非同期は、
「指示した動作の、完了を知る方法の違い」
でしかないと思った。
TCP/socketはネットワークアクセスのためのAPIだけど、
APIになった瞬間にネットワークの存在は関知しなくてもいいでしょ。
というか、知りえないでしょう。
925の言う「どのレベルでのinteractionか」というくだりの、
レベルの違いっていうのが、プログラムから見て意味あんのか疑問。
931: コロ助 [コロッケ大好きナリ] 02/12/15 12:10 AAS
すいません。WinSockの質問をしたいのですが。
サーバーにHTTP接続を試みているのですが、うまく接続できません。
ソース
sock[n]=socket(AF_INET,SOCK_STREAM,0);
WSAAsyncSelect(sock[n],hW,SM_ASYNC,FD_CONNECT|FD_CLOSE|FD_READ|FD_WRITE)
lpServEnt = getservbyname("http", "tcp");
if(lpServEnt==NULL)
{
ser.sin_port=htons(80);
}
else
{
ser.sin_port=lpServEnt->s_port;
}
lpHostEntry=(LPHOSTENT)bufHostEnt;
ser.sin_family=AF_INET;
ser.sin_addr=*((LPIN_ADDR)*lpHostEntry->h_addr_list);
if(SOCKET_ERROR!=connect(sock[n],(LPSOCKADDR)&ser,sizeof(SOCKADDR_IN)))
HTTPだと駄目なのですが、SMTPやFTPならうまく接続できて、データも転送できます。
なぜ、HTTPだけ接続できないのでしょうか?
932(1): デフォルトの名無しさん [sage] 02/12/15 12:20 AAS
> うまく接続できません
> HTTPだと駄目
どこでどんなエラーが出てるのか、
またはエラーが出てないが応答がこないのか、
明示しないお前にコロ助を名乗る資格はない。
933(1): コロ助 [コロッケ大好きナリ] 02/12/15 12:34 AAS
>>932
唯一、エラーが出ているのは、サーバーと接続(connect)したときで、
エラー
if(SOCKET_ERROR!=connect(sock[n],(LPSOCKADDR)&ser,sizeof(SOCKADDR_IN)))
{
MessageBox(hW,"connect","成功",0);
}
else
{
if(WSAGetLastError()!=WSAEWOULDBLOCK)
{
MessageBox(hW,"connect","失敗",0);
}
}
connect関数はSOCKET_ERRORを返しエラーとなりますが、その後の、if(WSAGetLastError()!=WSAEWOULDBLOCK)には引っかかりません。
そのほかはエラーは全く出ていません。
934(1): コロ助 [コロッケ大好きナリ] 02/12/15 12:37 AAS
lpServEnt = getservbyname("http", "tcp");
でhttpを指定すると接続されないのですが、ftp、smtpだとうまく接続されます。
WinSockはhttp接続の際なにか特別な処理をしないといけないのでしょうか?
935(1): デフォルトの名無しさん [sage] 02/12/15 12:41 AAS
>>933
WSAGetLastError() ぐらい知らんのかよ...。
936: デフォルトの名無しさん [sage] 02/12/15 12:43 AAS
>>934
gethostbyname()
937: 935 [sage] 02/12/15 12:43 AAS
すまん勘違いだった。
938: デフォルトの名無しさん [sage] 02/12/15 13:36 AAS
( ●∀●) コロ助にSYNパケットを送るモナ
939(1): デフォルトの名無しさん [sage] 02/12/15 14:21 AAS
実は80はwell-known-portに含まれず、servicesにhttpが書いてない罠。
940: デフォルトの名無しさん [sage] 02/12/15 14:36 AAS
>>939
その時は、80 をセットするようにしてるみたいだけど ?
ちゃんと見てないけど、ロジックがおかしいのか ?
941(1): デフォルトの名無しさん [ sage ] 02/12/15 14:51 AAS
で、結局WSAGetLastError()は何を返してるんだ?
それと、相手はちゃんと存在するのか?
942: デフォルトの名無しさん [] 02/12/15 14:52 AAS
っつーか、ネットワークプログラミングしてるくらいなら、
パケットダンピングくらいしろよ。
943: デフォルトの名無しさん [sage] 02/12/15 14:58 AAS
>>941
取りあえず、WSAEWOULDBLOCK じゃねーのか ?
WSAAsyncSelect() で Non-Blocking-Mode にしちゃってるから、当たり前だと思う。
ftp/smtp がちゃんと動いている方が不思議だ。
944: rubyist@カラアゲうまうま [ewgfjwefjew] 02/12/15 15:18 AAS
とっとと教えればキレることもねーんだよ馬鹿
俺が下手に出て教えてくれっていってんだから
すぐ書けばいいだろボケ
945: デフォルトの名無しさん [sage] 02/12/15 15:29 AAS
いつみてもワラタ
946(2): デフォルトの名無しさん [sage] 02/12/15 19:41 AAS
inet_ntoa()とかマルチスレッドで使うときどうしてます?
inet_ntoa_r()無いので結局内部バッファ使わないのを自作してしまったんだけど
これ程度でmutexなどで排他かけるのもモタイナーイ気がして・・
947(2): デフォルトの名無しさん [sage] 02/12/15 20:00 AAS
>>946
環境は ? マルチスレッドサポートしてるシステムなら、普通 inet_ntoa() もスレッドセーフになってると思うが。
948(2): デフォルトの名無しさん [sage] 02/12/15 20:06 AAS
>>947
Solaris2.5/8,AIX4.3です
949: デフォルトの名無しさん [sage] 02/12/15 20:31 AAS
>>948
5年も前の環境じゃしょうがないかも知れないな。
素直に、排他制御しとくべし。
950: 948 [sage] 02/12/16 00:28 AAS
やっぱりみなさん当時はそうしてたんでしょうかね・・
951: デフォルトの名無しさん [sage] 02/12/16 00:46 AAS
つーか、普通その手のライブラリってTLS(TSS)に内部バッファ確保するようになってないか普通?
5年前の段階でTLSもないのがまともなOS面してたとも思えないんだが。
952: デフォルトの名無しさん [sage] 02/12/16 00:50 AAS
TLSはwin95にすらあったねえ。
953: デフォルトの名無しさん [ sage ] 02/12/16 00:50 AAS
なんでそのマシンでmanして調べてみないの?
954: デフォルトの名無しさん [] 02/12/16 05:45 AAS
windowsでは バークレーソケットではパフォーマンスでないのかな。。。
http://www-6.ibm.com/jp/developerworks/linux/020208/j_l-rt6.html#1
たしかに ab(ApacheBench) で windows上の apache と Linux上の apacheで
速度を計測してみると、ハードウェアは Windowsの方が上なのに3倍近く差が
でたしなぁ。。。 こんなの変ですよ!ゲイツさん!
955: デフォルトの名無しさん [sage] 02/12/16 05:53 AAS
Apacheのバージョンが不明だが、もし1.3系ならWin32で遅いのは
socketよりむしろApacheがタコだから
956: デフォルトの名無しさん [sage] 02/12/16 10:39 AAS
>>947
『スレッドセーフ』は各スレッドで排他制御無しで使えるって意味ではないという罠。
957: デフォルトの名無しさん [sage] 02/12/16 12:17 AAS
そろそろ新スレの季節ですが、、、
だれかテンプレまとめて。
なんならスレを立ててもいいから。
958: デフォルトの名無しさん [] 02/12/16 22:36 AAS
>>946
inet_ntop()を使うべし
959: デフォルトの名無しさん [] 02/12/16 23:25 AAS
rawソケットはどうして管理者権限でなければ使えないんでしょうか・・・
960(1): デフォルトの名無しさん [sage] 02/12/16 23:43 AAS
DoSアタックとかに使えるからでないの.
961(1): デフォルトの名無しさん [sage] 02/12/16 23:48 AAS
あ、技術的な問題じゃなかったんですか
962(1): デフォルトの名無しさん [sage] 02/12/17 00:01 AAS
詳しくはないけど、セキュリティ的に問題アリアリなんでないのかな。
あるいはその可能性があるとか。
963(1): デフォルトの名無しさん [sage] 02/12/17 00:03 AAS
bpfがrootにしか使えないのと似たようなもんだろ
964: デフォルトの名無しさん [sage] 02/12/17 00:04 AAS
>>960-962
パケット盗み見から始まって、IP / MAC アドレス詐称など何でもありありだからだよーん。
965: デフォルトの名無しさん [] 02/12/17 10:45 AAS
>sock_wait_established
>This macro has been deprecated in Dynamic C version 7.20.
>このマクロは動的なCバージョン7.20で大いに非難されました。
質問です。これは使わない方が良いということでしょうか。
たしかにsock_err ラベルにgotoされると構造化し難いですが。
代替関数は何になりますか?
966(1): デフォルトの名無しさん [sage] 02/12/17 12:24 AAS
>>963
bpfは /dev/bpf* がopenさえできればrootじゃなくても使えるよ。
raw socketは要rootだが。
967: デフォルトの名無しさん [sage] 02/12/17 12:42 AAS
>>966
ふつーrootしか開けないようなPermissionになってない?
968(2): 真面目な開発者 [] 02/12/17 20:42 AAS
すいません、質問があります。
たぶん、WINSOCKに関してだと思います。
今日WINDOWSを起動したら、IEでインターネットが見れなくなりました。
ネットスケープやOPERAでは普通に見れるのに、IEだと見れなくなりました。
今WINSOCKの勉強と開発をしています。
もしかしてWINSOCKの開発中に、不適切なプログラムを組んだために、IEにエラーが起こってしまったのでしょうか?
969: デフォルトの名無しさん [sage] 02/12/17 20:52 AAS
開発者を辞めたほうがいいのでは・・・
970: デフォルトの名無しさん [sage] 02/12/17 20:57 AAS
>>968
PC初心者板へどうぞ(藁
971: デフォルトの名無しさん [んなわけねー。] 02/12/17 21:09 AAS
>>968
> もしかしてWINSOCKの開発中に、
結構すごい香具師だな。
972: デフォルトの名無しさん [sage] 02/12/17 21:13 AAS
きっと全角版を開発してるんだろう。
973: デフォルトの名無しさん [ sage ] 02/12/17 21:20 AAS
980の人は次スレたててくらはい
974: デフォルトの名無しさん [sage] 02/12/17 21:37 AAS
ネスケやオペラはwinsock使ってなかったのか。初耳。
975: デフォルトの名無しさん [sage] 02/12/18 08:48 AAS
(;´Д`) ハァハァ
976: デフォルトの名無しさん [sage] 02/12/18 13:09 AAS
winsockのどの部分をどう改造したかおせーろ。
977: デフォルトの名無しさん [sage] 02/12/18 18:10 AAS
SMBの登場以来、スレの流れがおかしい気がする
978(1): デフォルトの名無しさん [age] 02/12/18 18:57 AAS
Win (Winsock) でサーバプログラム(TCP/IP)作ってるんだけど、
特定のクライアントからのコネクションを拒否する方法ってある?
Raw ソケットは使わない前提で。
ちなみに今は accept() にてリモートホストの IP アドレスをチェックして
弾くようにしてるんだけど、それだと一瞬クラアイントとコネクション張ってしまう
状態になっちゃうから、あまりよろしくないので。
979(1): デフォルトの名無しさん [sage] 02/12/18 20:12 AAS
>>978
WSAAcceptで出来たような気がする
980: デフォルトの名無しさん [sage] 02/12/18 21:51 AAS
>>979
ありがとう。
今 Winsock 1.1 使ってるので、そうなると WSAAccept は使えないからダメみたい。
(一応 Win95 もサポートしたいので。)
後に Linux バージョンも作る予定だけど、自アプリでやるのは邪道なのかな?
TCPWrapper や tcpserver とかにフィルタリングさせる方が一般的なんだよね?
981(1): デフォルトの名無しさん [sage] 02/12/18 22:02 AAS
逆に聞きたいけどLinuxだと出来るの?
982: デフォルトの名無しさん [sage] 02/12/18 22:12 AAS
>>981
まだ調べてないからわかんない。詳しい人教えて〜。
やるなら Raw ソケットで直にIPパケット使うことになるかも。
でもそこまでするのは面倒になりそうだから自前でやるのやめようかなと思ってる。
983(1): デフォルトの名無しさん [ sage ] 02/12/18 22:12 AAS
95でもwinsock2は使える。
984: デフォルトの名無しさん [sage] 02/12/18 22:19 AAS
>>983
>95でもwinsock2は使える。
ホント?
IE とか何らかのソフトインストールすればってこと? 教えて。
その手順が簡単なら考えてみたい。(PC に不慣れな人が出来るレベルなら)
可能なら自アプリのインストーラに組み込めればベストかな。
985(1): デフォルトの名無しさん [ sage ] 02/12/18 22:28 AAS
http://www.microsoft.com/japan/windows/dun1_3/
986(1): デフォルトの名無しさん [ sage ] 02/12/18 22:31 AAS
http://www.microsoft.com/windows95/downloads/contents/WURecommended/S_WUNetworking/dunwinsky2k/Default.asp
987(1): デフォルトの名無しさん [sage] 02/12/18 22:36 AAS
http://www.microsoft.com/windows95/downloads/contents/WUAdminTools/S_WUNetworkingTools/W95Sockets2/Default.asp
988: デフォルトの名無しさん [sage] 02/12/18 22:36 AAS
>>985>>986
ありがとう。よく見てないけど後で調査してみます。
989: デフォルトの名無しさん [sage] 02/12/18 22:51 AAS
>>987
重ね重ねお世話さまです。ここからダウロードできるね。
ライセンス等も考慮して検討してみます。
990: デフォルトの名無しさん [sage] 02/12/18 23:05 AAS
Winsock2には再配布可能なバージョンもあるらしいんだけど
リンクが見つからない…
ところで次スレは?
991(1): デフォルトの名無しさん [sage] 02/12/18 23:06 AAS
ネットワークプログラミング相談室 Port5
2chスレ:tech
992: デフォルトの名無しさん [sage] 02/12/18 23:07 AAS
>>991
乙〜
993: ヘッケルリンク [sage] 02/12/18 23:13 AAS
-
994: デフォルトの名無しさん [sage] 02/12/18 23:16 AAS
/
995: デフォルトの名無しさん [sage] 02/12/18 23:39 AAS
-
996: デフォルトの名無しさん [sage] 02/12/19 10:55 AAS
\
997: 次スレ案内 [sage] 02/12/19 11:13 AAS
ネットワークプログラミング相談室 Port5
2chスレ:tech
998: 次スレ案内 [sage] 02/12/19 11:14 AAS
ネットワークプログラミング相談室 Port5
2chスレ:tech
999: 次スレ案内 [sage] 02/12/19 11:14 AAS
ネットワークプログラミング相談室 Port5
2chスレ:tech
1000: 次スレ案内 [sage] 02/12/19 11:15 AAS
ネットワークプログラミング相談室 Port5
2chスレ:tech
1001: 1001 [] Over 1000 Thread AAS
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.298s*