スレッド: [csharpll:0269] おちゃらかIPC@.NET
スレッド
- 269: cppll/cppll_noviceで "SendMessageによるIPC(Inter Process Communication)" ネタを投下しました。 用意されてお FUKUDA, Fumiki
- └270: WM_COPYDATA をベースにした方が帯域が広くてとれて良いかもです。 として提供されているだけで Hiroaki SHIBUKI
- └271: ぇぇ、やりたい放題できますんでね。 簡潔明快そっけなし (^^ となるとマシンの内外問わずSocke FUKUDA, Fumiki
- └272: simple is beautiful が、C 系言語の特質 ;-) ってなっちゃいますし、実際そうなんですが。。。 ポー Hiroaki SHIBUKI
- └273: FUKUDA, (episteme) Fumiki magical, but never a mogic.... FUKUDA, Fumiki
- └274: port = 0 で bind() すると勝手に空きポートくっつけてくれません? 少なくとも winsock はそれが仕様 Tietew
- └275: あらホント。 んで、このSocketにconnectする側は port#をどうやって知ればいいのかしらん? FUKUDA, Fumiki
- └276: ソケットなら getsockname() なんですけど、なんかプロパティありま せんの? -[ Tietew ]------------------ Tietew
- └277: いたたた、ボロ出してしまいます orz client側ではaddrとport#決め打ちでconnectしてばっかりです。 FUKUDA, Fumiki
- ├278: あっ。クライアントか。 うーんどうしましょう(おいおい ただ,SendMessageにしてもウィンドウハ Tietew
- │└280: あひゃ。 SendMessageはHWND_BROADCASTに投げれば全員に届くもん。 これ使って"あたしのハンドルはコ FUKUDA, Fumiki
- │ └284: ご機嫌麗しゅう。(^^ それはそれでメンドクサイので、ふつー、やんないです。 そういう有名な Shin'ya MORINO
- └279: 教えてくださいまし。ばっくれsocket一般のおはなし、 Passive Socket 側は、たとえば、10000番のポ Hisashi Katayama
- └281: RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。 FUKUDA, Fumiki
- ├282: う〜ん、Thunderbird つかいにくい・・・(慣れてないだけかな) 仮にそういう強要できるものがあ Hisashi Katayama
- └283: それの大層なヤツが UDDI なわけで。。。 名前付きパイプの名前を決める独自の規則を考えれば Hiroaki SHIBUKI
[csharpll:0269] おちゃらかIPC@.NET
- Subject:
- [csharpll:0269] おちゃらかIPC@.NET
- From:
- FUKUDA, Fumiki <epi-@...>
- Date:
- Wed, 25 Jan 2006 22:19:05 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2900.2180
- Message-Id:
- <017d01c621b1$eaab7130$0d00a8c0@epi1st>
επιστημηです。
cppll/cppll_noviceで
"SendMessageによるIPC(Inter Process Communication)"
ネタを投下しました。
後学のために伺いたいのですけど、
..NETではSendMessage並にお手軽なプロセス間通信って、
用意されておるのでしょうか?
Win32API→.NET Framework対応表からSendMessageに相当
するのを引くと WndProc とある…なんで?
そら確かに受ける側はそうだろうけど送る側は?
--- : ------ : ------ : ------ : ------ : ---
FUKUDA, (episteme) Fumiki
magical, but never a mogic....
cppll/cppll_noviceで
"SendMessageによるIPC(Inter Process Communication)"
ネタを投下しました。
後学のために伺いたいのですけど、
..NETではSendMessage並にお手軽なプロセス間通信って、
用意されておるのでしょうか?
Win32API→.NET Framework対応表からSendMessageに相当
するのを引くと WndProc とある…なんで?
そら確かに受ける側はそうだろうけど送る側は?
--- : ------ : ------ : ------ : ------ : ---
FUKUDA, (episteme) Fumiki
magical, but never a mogic....
[csharpll:0270] RE: おちゃらかIPC@.NET
- Subject:
- [csharpll:0270] RE: おちゃらかIPC@.NET
- From:
- Hiroaki SHIBUKI <hidori@...>
- Date:
- Thu, 26 Jan 2006 00:01:29 +0900
- X-Mailer:
- Microsoft Office Outlook 11
- Message-Id:
- <01c201c621c0$38ff4a10$2001a8c0@aries>
- In-Reply-To:
- 269
渋木です。
>"SendMessageによるIPC(Inter Process Communication)"
>ネタを投下しました。
WM_COPYDATA をベースにした方が帯域が広くてとれて良いかもです。
> .NETではSendMessage並にお手軽なプロセス間通信って、
> 用意されておるのでしょうか?
無いです。
.NET 1.x までは TCP or HTTP ベースのチャンネルが、リモーティングのインフラ
として提供されているだけです。
.NET 2.0 では名前付きパイプベースのチャンネルが提供されていますが、これも基
本的にはリモーティングのインフラとしての色彩が濃い物です。
> Win32API→.NET Framework対応表からSendMessageに相当
> するのを引くと WndProc とある…なんで?
所詮、「まったく違うモノ同士」について無理くり作られた対応表なわけで。。。
--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
>"SendMessageによるIPC(Inter Process Communication)"
>ネタを投下しました。
WM_COPYDATA をベースにした方が帯域が広くてとれて良いかもです。
> .NETではSendMessage並にお手軽なプロセス間通信って、
> 用意されておるのでしょうか?
無いです。
.NET 1.x までは TCP or HTTP ベースのチャンネルが、リモーティングのインフラ
として提供されているだけです。
.NET 2.0 では名前付きパイプベースのチャンネルが提供されていますが、これも基
本的にはリモーティングのインフラとしての色彩が濃い物です。
> Win32API→.NET Framework対応表からSendMessageに相当
> するのを引くと WndProc とある…なんで?
所詮、「まったく違うモノ同士」について無理くり作られた対応表なわけで。。。
--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
[csharpll:0271] Re: おちゃらかIPC@.NET
- Subject:
- [csharpll:0271] Re: おちゃらかIPC@.NET
- From:
- FUKUDA, Fumiki <epi-@...>
- Date:
- Thu, 26 Jan 2006 05:28:44 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2900.2180
- Message-Id:
- <01a101c621ed$f02dd8a0$0d00a8c0@epi1st>
- References:
- 270
επιστημηです。 .NETな方がいてくれて心強いわぁ。
>>"SendMessageによるIPC(Inter Process Communication)"
>>ネタを投下しました。
>
> WM_COPYDATA をベースにした方が帯域が広くてとれて良いかもです。
ぇぇ、やりたい放題できますんでね。
>> .NETではSendMessage並にお手軽なプロセス間通信って、
>> 用意されておるのでしょうか?
> 無いです。
簡潔明快そっけなし (^^
> .NET 1.x までは TCP or HTTP ベースのチャンネルが、リモーティングのインフラ
> として提供されているだけです。
となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
--- : ------ : ------ : ------ : ------ : ---
FUKUDA, (episteme) Fumiki
magical, but never a mogic....
>>"SendMessageによるIPC(Inter Process Communication)"
>>ネタを投下しました。
>
> WM_COPYDATA をベースにした方が帯域が広くてとれて良いかもです。
ぇぇ、やりたい放題できますんでね。
>> .NETではSendMessage並にお手軽なプロセス間通信って、
>> 用意されておるのでしょうか?
> 無いです。
簡潔明快そっけなし (^^
> .NET 1.x までは TCP or HTTP ベースのチャンネルが、リモーティングのインフラ
> として提供されているだけです。
となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
--- : ------ : ------ : ------ : ------ : ---
FUKUDA, (episteme) Fumiki
magical, but never a mogic....
[csharpll:0272] RE: おちゃらかIPC@.NET
- Subject:
- [csharpll:0272] RE: おちゃらかIPC@.NET
- From:
- Hiroaki SHIBUKI <hidori@...>
- Date:
- Thu, 26 Jan 2006 08:16:34 +0900
- X-Mailer:
- Microsoft Office Outlook 11
- Message-Id:
- <01ee01c62205$62a8d350$2001a8c0@aries>
- In-Reply-To:
- 271
渋木です。
> 簡潔明快そっけなし (^^
simple is beautiful が、C 系言語の特質 ;-)
> > .NET 1.x までは TCP or HTTP ベースのチャンネルが、リモーティングのインフ
ラ
> > として提供されているだけです。
>
> となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
ってなっちゃいますし、実際そうなんですが。。。
ポート番号を自動的にネゴシエートする仕組みが無いところが、個人的にはかなり
スキじゃないです。
じゃあどする?って言われると、UDDI で。。。とかいう話になって、それはそれで
大げさな気も (-o-;
--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
> 簡潔明快そっけなし (^^
simple is beautiful が、C 系言語の特質 ;-)
> > .NET 1.x までは TCP or HTTP ベースのチャンネルが、リモーティングのインフ
ラ
> > として提供されているだけです。
>
> となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
ってなっちゃいますし、実際そうなんですが。。。
ポート番号を自動的にネゴシエートする仕組みが無いところが、個人的にはかなり
スキじゃないです。
じゃあどする?って言われると、UDDI で。。。とかいう話になって、それはそれで
大げさな気も (-o-;
--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
[csharpll:0273] Re: おちゃらかIPC@.NET
- Subject:
- [csharpll:0273] Re: おちゃらかIPC@.NET
- From:
- FUKUDA, Fumiki <epi-@...>
- Date:
- Thu, 26 Jan 2006 08:30:47 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2900.2180
- Message-Id:
- <020101c62207$5f44fcf0$0d00a8c0@epi1st>
- References:
- 272
επιστημηです。
>> となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
> ってなっちゃいますし、実際そうなんですが。。。
> ポート番号を自動的にネゴシエートする仕組みが無いところが、
> 個人的にはかなりスキじゃないです。
そかそか、空いてるport#を見つけなあきませんもんねぇ。
RegisterWindowMessageみたいに空いたport#を割り振って
くれたらええのにね。
> じゃあどする?って言われると、UDDI で。。。とかいう話になって、
> それはそれで大げさな気も (-o-;
うぇー、ナタで髭剃るよな話 orz
# 大は小を兼ねる? しゃもじは耳掻きにはならんて
--- : ------ : ------ : ------ : ------ : ---
FUKUDA, (episteme) Fumiki
magical, but never a mogic....
>> となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
> ってなっちゃいますし、実際そうなんですが。。。
> ポート番号を自動的にネゴシエートする仕組みが無いところが、
> 個人的にはかなりスキじゃないです。
そかそか、空いてるport#を見つけなあきませんもんねぇ。
RegisterWindowMessageみたいに空いたport#を割り振って
くれたらええのにね。
> じゃあどする?って言われると、UDDI で。。。とかいう話になって、
> それはそれで大げさな気も (-o-;
うぇー、ナタで髭剃るよな話 orz
# 大は小を兼ねる? しゃもじは耳掻きにはならんて
--- : ------ : ------ : ------ : ------ : ---
FUKUDA, (episteme) Fumiki
magical, but never a mogic....
[csharpll:0274] Re: おちゃらかIPC@.NET
On Thu, 26 Jan 2006 08:30:47 +0900
In article <020101c62207$5f44fcf0$0d00a8c0@epi1st>
[[csharpll:0273] Re: おちゃらかIPC@.NET]
"FUKUDA, Fumiki" <epi-@...> wrote:
> >> となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
> > ってなっちゃいますし、実際そうなんですが。。。
> > ポート番号を自動的にネゴシエートする仕組みが無いところが、
> > 個人的にはかなりスキじゃないです。
>
> そかそか、空いてるport#を見つけなあきませんもんねぇ。
> RegisterWindowMessageみたいに空いたport#を割り振って
> くれたらええのにね。
port = 0 で bind() すると勝手に空きポートくっつけてくれません?
少なくとも winsock はそれが仕様のハズ…
....
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemnetsocketstcplistenerclassctortopic3.asp
| If you do not care which local port is used, you can specify 0
| for the port number. In this case, the service provider will
| assign an available port number between 1024 and 5000.
....
TcpListener listen = new TcpListener(IPAddress.Lookback, 0);
これでOK
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
In article <020101c62207$5f44fcf0$0d00a8c0@epi1st>
[[csharpll:0273] Re: おちゃらかIPC@.NET]
"FUKUDA, Fumiki" <epi-@...> wrote:
> >> となるとマシンの内外問わずSocketぶっ挿すのが無難ってことになるんかな。
> > ってなっちゃいますし、実際そうなんですが。。。
> > ポート番号を自動的にネゴシエートする仕組みが無いところが、
> > 個人的にはかなりスキじゃないです。
>
> そかそか、空いてるport#を見つけなあきませんもんねぇ。
> RegisterWindowMessageみたいに空いたport#を割り振って
> くれたらええのにね。
port = 0 で bind() すると勝手に空きポートくっつけてくれません?
少なくとも winsock はそれが仕様のハズ…
....
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemnetsocketstcplistenerclassctortopic3.asp
| If you do not care which local port is used, you can specify 0
| for the port number. In this case, the service provider will
| assign an available port number between 1024 and 5000.
....
TcpListener listen = new TcpListener(IPAddress.Lookback, 0);
これでOK
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
[csharpll:0275] Re: おちゃらかIPC@.NET
- Subject:
- [csharpll:0275] Re: おちゃらかIPC@.NET
- From:
- FUKUDA, Fumiki <fukuda.fm@...>
- Date:
- Thu, 26 Jan 2006 12:12:18 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2800.1506
- Message-Id:
- <010101c62226$51124010$e5d2060a@ncosltcff2>
- References:
- 272 273 274
επιστημηです。
> port = 0 で bind() すると勝手に空きポートくっつけてくれません?
> 少なくとも winsock はそれが仕様のハズ…
> ...
> TcpListener listen = new TcpListener(IPAddress.Lookback, 0);
> これでOK
あらホント。
んで、このSocketにconnectする側は
port#をどうやって知ればいいのかしらん?
> port = 0 で bind() すると勝手に空きポートくっつけてくれません?
> 少なくとも winsock はそれが仕様のハズ…
> ...
> TcpListener listen = new TcpListener(IPAddress.Lookback, 0);
> これでOK
あらホント。
んで、このSocketにconnectする側は
port#をどうやって知ればいいのかしらん?
[csharpll:0276] Re: おちゃらかIPC@.NET
On Thu, 26 Jan 2006 12:12:18 +0900
In article <010101c62226$51124010$e5d2060a@ncosltcff2>
[[csharpll:0275] Re: おちゃらかIPC@.NET]
"FUKUDA, Fumiki" <fukuda.fm@...> wrote:
> > port = 0 で bind() すると勝手に空きポートくっつけてくれません?
> > 少なくとも winsock はそれが仕様のハズ…
> > ...
> > TcpListener listen = new TcpListener(IPAddress.Lookback, 0);
> > これでOK
>
> あらホント。
> んで、このSocketにconnectする側は
> port#をどうやって知ればいいのかしらん?
ソケットなら getsockname() なんですけど、なんかプロパティありま
せんの?
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
In article <010101c62226$51124010$e5d2060a@ncosltcff2>
[[csharpll:0275] Re: おちゃらかIPC@.NET]
"FUKUDA, Fumiki" <fukuda.fm@...> wrote:
> > port = 0 で bind() すると勝手に空きポートくっつけてくれません?
> > 少なくとも winsock はそれが仕様のハズ…
> > ...
> > TcpListener listen = new TcpListener(IPAddress.Lookback, 0);
> > これでOK
>
> あらホント。
> んで、このSocketにconnectする側は
> port#をどうやって知ればいいのかしらん?
ソケットなら getsockname() なんですけど、なんかプロパティありま
せんの?
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
[csharpll:0277] Re: おちゃらかIPC@.NET
- Subject:
- [csharpll:0277] Re: おちゃらかIPC@.NET
- From:
- FUKUDA, Fumiki <fukuda.fm@...>
- Date:
- Thu, 26 Jan 2006 15:00:35 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2800.1506
- Message-Id:
- <017001c6223d$d7a93d60$e5d2060a@ncosltcff2>
- References:
- 274 275 276
επιστημη@いろいろ音痴 です。
> ソケットなら getsockname() なんですけど、なんかプロパティありま
> せんの?
いたたた、ボロ出してしまいます orz
client側ではaddrとport#決め打ちでconnectしてばっかりです。
教えてくださいまし。ばっくれsocket一般のおはなし、
serverがテキトーに決めたport#をclientはどうやって知るのかしら?
> ソケットなら getsockname() なんですけど、なんかプロパティありま
> せんの?
いたたた、ボロ出してしまいます orz
client側ではaddrとport#決め打ちでconnectしてばっかりです。
教えてくださいまし。ばっくれsocket一般のおはなし、
serverがテキトーに決めたport#をclientはどうやって知るのかしら?
[csharpll:0278] Re: おちゃらかIPC@.NET
On Thu, 26 Jan 2006 15:00:35 +0900
In article <017001c6223d$d7a93d60$e5d2060a@ncosltcff2>
[[csharpll:0277] Re: おちゃらかIPC@.NET]
"FUKUDA, Fumiki" <fukuda.fm@...> wrote:
> > ソケットなら getsockname() なんですけど、なんかプロパティありま
> > せんの?
>
> いたたた、ボロ出してしまいます orz
> client側ではaddrとport#決め打ちでconnectしてばっかりです。
>
> 教えてくださいまし。ばっくれsocket一般のおはなし、
> serverがテキトーに決めたport#をclientはどうやって知るのかしら?
あっ。クライアントか。
…
うーんどうしましょう(おいおい
ただ,SendMessageにしてもウィンドウハンドルがわからないと通信で
きないわけで,通信するプログラムに依るんじゃないでしょうか。
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
In article <017001c6223d$d7a93d60$e5d2060a@ncosltcff2>
[[csharpll:0277] Re: おちゃらかIPC@.NET]
"FUKUDA, Fumiki" <fukuda.fm@...> wrote:
> > ソケットなら getsockname() なんですけど、なんかプロパティありま
> > せんの?
>
> いたたた、ボロ出してしまいます orz
> client側ではaddrとport#決め打ちでconnectしてばっかりです。
>
> 教えてくださいまし。ばっくれsocket一般のおはなし、
> serverがテキトーに決めたport#をclientはどうやって知るのかしら?
あっ。クライアントか。
…
うーんどうしましょう(おいおい
ただ,SendMessageにしてもウィンドウハンドルがわからないと通信で
きないわけで,通信するプログラムに依るんじゃないでしょうか。
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
[csharpll:0280] Re: おちゃらかIPC@.NET
- Subject:
- [csharpll:0280] Re: おちゃらかIPC@.NET
- From:
- FUKUDA, Fumiki <fukuda.fm@...>
- Date:
- Thu, 26 Jan 2006 17:03:37 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2800.1506
- Message-Id:
- <022401c6224f$0387ccb0$e5d2060a@ncosltcff2>
- References:
- 276 277 278
επιστημηです。
> > 教えてくださいまし。ばっくれsocket一般のおはなし、
> > serverがテキトーに決めたport#をclientはどうやって知るのかしら?
> …
> うーんどうしましょう(おいおい
あひゃ。
> ただ,SendMessageにしてもウィンドウハンドルがわからないと通信で
> きないわけで,通信するプログラムに依るんじゃないでしょうか。
SendMessageはHWND_BROADCASTに投げれば全員に届くもん。
これ使って"あたしのハンドルはコレで〜す"って言える悶。
> > 教えてくださいまし。ばっくれsocket一般のおはなし、
> > serverがテキトーに決めたport#をclientはどうやって知るのかしら?
> …
> うーんどうしましょう(おいおい
あひゃ。
> ただ,SendMessageにしてもウィンドウハンドルがわからないと通信で
> きないわけで,通信するプログラムに依るんじゃないでしょうか。
SendMessageはHWND_BROADCASTに投げれば全員に届くもん。
これ使って"あたしのハンドルはコレで〜す"って言える悶。
[csharpll:0284] Re: おちゃらか IPC@.NET
森野です。
FUKUDA, Fumikiさんの<022401c6224f$0387ccb0$e5d2060a@ncosltcff2>から
>επιστημηです。
ご機嫌麗しゅう。(^^
>SendMessageはHWND_BROADCASTに投げれば全員に届くもん。
>これ使って"あたしのハンドルはコレで〜す"って言える悶。
えと...そういう単純で一般的なメカニズムないです。(^^;;
>> IP(Internet Protocol)
やるんだったら、別のサービス使うです。(LDAPとか)
それはそれでメンドクサイので、ふつー、やんないです。
有名なサービスは、ポートが決まってます。
# いわゆるWellknown portです。
# http://iptables-tutorial.frozentux.net/other/services.txt
そういう有名なサービスは、基本的に、ポート番号1024よか小さいところに、
に割り当てられていて、通常、ユーザが独自プロトコルで使うものではないで
す。
で、それ以外で、つかってなさそうな場所を使えばいーじゃん、の、ノリで
す。番号がでかいほど、場末の飲み屋っぽくなります。
そして、それぞれのクライアントアプリは、設定なり、コード内部に、その
割り当てたポート番号を持っているという感じです。
たとえば...とあるネットワーク対応プリンタドライバのインストーラは、
ネットワーク内のプリンタを検索するために、とあるポートにブロードキャ
ストパケットを投げます。そして、返事を返すホストはプリンタであり、返さ
れるパケット内部にはモデル名が、きっと、かかれているんでしょう。
だけど、そのポート番号って、きっと、その会社のために予約はされてないで
す。きっと、勝手に使われちゃってます。
# こういうの、てきとーにいーかげんなので、使い勝手がよいです。(^^;;
--
Shin'ya MORINO mailto:smorino@...
FUKUDA, Fumikiさんの<022401c6224f$0387ccb0$e5d2060a@ncosltcff2>から
>επιστημηです。
ご機嫌麗しゅう。(^^
>SendMessageはHWND_BROADCASTに投げれば全員に届くもん。
>これ使って"あたしのハンドルはコレで〜す"って言える悶。
えと...そういう単純で一般的なメカニズムないです。(^^;;
>> IP(Internet Protocol)
やるんだったら、別のサービス使うです。(LDAPとか)
それはそれでメンドクサイので、ふつー、やんないです。
有名なサービスは、ポートが決まってます。
# いわゆるWellknown portです。
# http://iptables-tutorial.frozentux.net/other/services.txt
そういう有名なサービスは、基本的に、ポート番号1024よか小さいところに、
に割り当てられていて、通常、ユーザが独自プロトコルで使うものではないで
す。
で、それ以外で、つかってなさそうな場所を使えばいーじゃん、の、ノリで
す。番号がでかいほど、場末の飲み屋っぽくなります。
そして、それぞれのクライアントアプリは、設定なり、コード内部に、その
割り当てたポート番号を持っているという感じです。
たとえば...とあるネットワーク対応プリンタドライバのインストーラは、
ネットワーク内のプリンタを検索するために、とあるポートにブロードキャ
ストパケットを投げます。そして、返事を返すホストはプリンタであり、返さ
れるパケット内部にはモデル名が、きっと、かかれているんでしょう。
だけど、そのポート番号って、きっと、その会社のために予約はされてないで
す。きっと、勝手に使われちゃってます。
# こういうの、てきとーにいーかげんなので、使い勝手がよいです。(^^;;
--
Shin'ya MORINO mailto:smorino@...
[csharpll:0279] Re: おちゃらかIPC@.NET
かたやまです
FUKUDA, Fumiki wrote:
>επιστημη@いろいろ音痴 です。
>
>
(^^)
教えてくださいまし。ばっくれsocket一般のおはなし、
>serverがテキトーに決めたport#をclientはどうやって知るのかしら?
>
>
Passive Socket 側は、たとえば、10000番のポートで待っているとすると、
Active 側はそのポートにタイして connect してくるわけで、こればっかり
は、自分のシステムでルール付けした関数を用意するとかしないとだめ
ではないでしょうか。
======
Hisashi Katayama
FUKUDA, Fumiki wrote:
>επιστημη@いろいろ音痴 です。
>
>
(^^)
教えてくださいまし。ばっくれsocket一般のおはなし、
>serverがテキトーに決めたport#をclientはどうやって知るのかしら?
>
>
Passive Socket 側は、たとえば、10000番のポートで待っているとすると、
Active 側はそのポートにタイして connect してくるわけで、こればっかり
は、自分のシステムでルール付けした関数を用意するとかしないとだめ
ではないでしょうか。
======
Hisashi Katayama
[csharpll:0281] Re: おちゃらかIPC@.NET
επιστημηです。
> Passive Socket 側は、たとえば、10000番のポートで待っているとすると、
> Active 側はそのポートにタイして connect してくるわけで、こればっかり
> は、自分のシステムでルール付けした関数を用意するとかしないとだめ
> ではないでしょうか。
どーなんだろ、僕が知らぬところで勝手にsocket開けてる奴
(誰かが書いたアプリ)にそのルールを強要できんのじゃなかろか。
Win32APIだと RegisterWindowMessage("なんとか") すれば
誰も使ってないメッセージIDくれますやん。
..NETでIPCとなると実際のところsocket使うっきゃないとすれば、
RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。
> Passive Socket 側は、たとえば、10000番のポートで待っているとすると、
> Active 側はそのポートにタイして connect してくるわけで、こればっかり
> は、自分のシステムでルール付けした関数を用意するとかしないとだめ
> ではないでしょうか。
どーなんだろ、僕が知らぬところで勝手にsocket開けてる奴
(誰かが書いたアプリ)にそのルールを強要できんのじゃなかろか。
Win32APIだと RegisterWindowMessage("なんとか") すれば
誰も使ってないメッセージIDくれますやん。
..NETでIPCとなると実際のところsocket使うっきゃないとすれば、
RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。
[csharpll:0282] Re: おちゃらかIPC@.NET
かたやま@ハズしてるんだろうか。。。です
う〜ん、Thunderbird つかいにくい・・・(慣れてないだけかな)
>どーなんだろ、僕が知らぬところで勝手にsocket開けてる奴
>(誰かが書いたアプリ)にそのルールを強要できんのじゃなかろか。
>
>
仮にそういう強要できるものがあるとすると、Passive ソケットを強要されたもの
で新たに作るわけですよね。ただ、Passive ソケットを作成してされているアプ
リに対して、ルールをぶっ込むのをどう突っ込むかを考え、そいつにソケッ
トで電文なげると考えると、client はそのポートを知らないと投げられないですよ
ね。。。うーん、自前で仕組みを作るしか思いつかないです。。。。
>Win32APIだと RegisterWindowMessage("なんとか") すれば
>誰も使ってないメッセージIDくれますやん。
>
>
ふむ
>.NETでIPCとなると実際のところsocket使うっきゃないとすれば、
>RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。
>
>
これは、上記の「勝手にsocket開けてる奴」の文章の、「勝手」の部分ですよね?
なるほど。勝手に決めたものを client が知りたいというのと、空きポートを探すと
いうのと両方の質問があったんですね (^^)
質問が「socket一般でserverがテキトーに決めたport#をclientはどうやって知
るのかしら」
だったので、空いているポートを探すってのと&それを強要するいう観点で答え
ていませ
んでした。
うーん、getsockname() 系以外には、私の知る限りなさそうな気がします
Windows なら、何か用意されているのかもしれませんが。。。
# 識者の方、よろしく〜 (^^;;
======
Hisashi Katayama
う〜ん、Thunderbird つかいにくい・・・(慣れてないだけかな)
>どーなんだろ、僕が知らぬところで勝手にsocket開けてる奴
>(誰かが書いたアプリ)にそのルールを強要できんのじゃなかろか。
>
>
仮にそういう強要できるものがあるとすると、Passive ソケットを強要されたもの
で新たに作るわけですよね。ただ、Passive ソケットを作成してされているアプ
リに対して、ルールをぶっ込むのをどう突っ込むかを考え、そいつにソケッ
トで電文なげると考えると、client はそのポートを知らないと投げられないですよ
ね。。。うーん、自前で仕組みを作るしか思いつかないです。。。。
>Win32APIだと RegisterWindowMessage("なんとか") すれば
>誰も使ってないメッセージIDくれますやん。
>
>
ふむ
>.NETでIPCとなると実際のところsocket使うっきゃないとすれば、
>RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。
>
>
これは、上記の「勝手にsocket開けてる奴」の文章の、「勝手」の部分ですよね?
なるほど。勝手に決めたものを client が知りたいというのと、空きポートを探すと
いうのと両方の質問があったんですね (^^)
質問が「socket一般でserverがテキトーに決めたport#をclientはどうやって知
るのかしら」
だったので、空いているポートを探すってのと&それを強要するいう観点で答え
ていませ
んでした。
うーん、getsockname() 系以外には、私の知る限りなさそうな気がします
Windows なら、何か用意されているのかもしれませんが。。。
# 識者の方、よろしく〜 (^^;;
======
Hisashi Katayama
[csharpll:0283] RE: おちゃらかIPC@.NET
- Subject:
- [csharpll:0283] RE: おちゃらかIPC@.NET
- From:
- Hiroaki SHIBUKI <hidori@...>
- Date:
- Thu, 26 Jan 2006 20:48:35 +0900
- X-Mailer:
- Microsoft Office Outlook 11
- Message-Id:
- <002c01c6226e$71216a00$2001a8c0@aries>
- In-Reply-To:
- 281
渋木です。
> .NETでIPCとなると実際のところsocket使うっきゃないとすれば、
> RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。
それの大層なヤツが UDDI なわけで。。。
名前付きパイプの名前を決める独自の規則を考えれば、なんとかなるんじゃないす
か?
--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
> .NETでIPCとなると実際のところsocket使うっきゃないとすれば、
> RegisterWinsockPort("かんとか")で未使用ポート#くれたらいいのに。
それの大層なヤツが UDDI なわけで。。。
名前付きパイプの名前を決める独自の規則を考えれば、なんとかなるんじゃないす
か?
--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#