人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

IPメッセンジャーを自作してみたいと思っています。
言語はVisual Basic 2005 Express Editionを使うつもりです。
LAN内にいるPCを探すところからして見当がつきません。
参考になるソースを公開しているURL、もしくはおおよそのステップを教えてください。

●質問者: memo77
●カテゴリ:コンピュータ インターネット
✍キーワード:EXPRESS IP LAN pc URL
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● b-wind
●28ポイント

IP Messenger 開発研究室

IP Messenger ってそもそもソース公開されていると思うんですが、これでは不足でしょうか?

◎質問者からの返答

ああ・・・コメント書き忘れた私が馬鹿ですね。

C#ならなんとか読めるし参考にもなると思うんですが、.netだとその元ソースよりもラクできるんじゃないかと思ってるんです(^-^;

.net Remotingは使えてるので、相手先の列挙とかそのあたりが一番知りたいですね。


2 ● cx20
●100ポイント ベストアンサー

VB6 から「IP Messenger」にメッセージを送るサンプルがありました。


■ 「IP Messenger」互換通信サンプル1(VB)

http://www.comel.or.jp/~akira/soft/msg_s1/msg_s1.html


通信部分は、

・UDP で 2425 番ポートを使用
・コマンド書式は「Ver(1):Packet番号:自User名:自Host名:Command番号:追加部」の形式

というあたりがポイントのようです。

サンプルのソースコードは結構短いので(数百行程度)、読むのはそんなに苦にならないと思います。


IP Messenger がホスト一覧を取得する方法は、

1. 起動時に、IPMSG_BR_ENTRY コマンドをブロードキャストし、すでに立ち上がっているメンバに、新規参加を通知。
2. このブロードキャストにより、すでに立ち上がっているメンバは、自分の送信先リストに新規参加メンバの情報を追加。
3. IPMSG_ANSENTRY コマンドを新規参加メンバに対し、返信。
4. 新規参加メンバは、この IPMSG_ANSENTRY を受信することにより、すでに立ち上がっている全メンバの情報を取得。
(詳細は、ipmsg206src.lzh 内の PROTOCOL.TXT を参照のこと)

と、なっているようです。


<参考情報>

■ IP Messenger プロトコルメモ

http://smart-pda.net/isourou/ipmsg/doc/ipmsg_protocol.html

■ UDPによりデータの送受信を行う: .NET Tips: C#, VB.NET, Visual Studio

http://dobon.net/vb/dotnet/internet/udpclient.html

◎質問者からの返答

なるほどー。UDPを使うのがミソということですね。

問題はブロードキャストだけど、これは192.168.255.255とかで投げちゃうっていう解釈でいいんでしょうか。

ブロードキャストで調べたんですが、まだピンときてません。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ