C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: ICMP_ECHO_REPLYクラス


(過去ログ 91 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■54320 / inTopicNo.1)  ICMP_ECHO_REPLYクラス
  
□投稿者/ ping (1回)-(2010/10/13(Wed) 16:33:55)

分類:[.NET 全般] 

public class ICMP_ECHO_REPLY
{
public ICMP_ECHO_REPLY(int size) { data = new byte[size]; }
byte[] data;
public byte[] _Data { get { return data; } }
public int Address { get { return BitConverter.ToInt32(data, 0); } }
public int Status { get { return BitConverter.ToInt32(data, 4); } }
public int RoundTripTime { get { return BitConverter.ToInt32(data, 8); } }
public short DataSize { get { return BitConverter.ToInt16(data, 0xc); } set { BitConverter.GetBytes(value).CopyTo(data, 0xc); } }
public IntPtr Data { get { return new IntPtr(BitConverter.ToInt32(data, 0x10)); } set { BitConverter.GetBytes(value.ToInt32()).CopyTo(data, 0x10); } }
public byte Ttl { get { return data[0x14]; } }
public byte Tos { get { return data[0x15]; } }
public byte Flags { get { return data[0x16]; } }
public byte OptionsSize { get { return data[0x17]; } }
public IntPtr OptionsData { get { return new IntPtr(BitConverter.ToInt32(data, 0x18)); } set { BitConverter.GetBytes(value.ToInt32()).CopyTo(data, 0x18); } }
}

これって何をしてるんですか?
ICMP_ECHO_REPLY reply = new ICMP_ECHO_REPLY(255);
reply.DataSize = 255;
pData = LocalAlloc(LMEM_ZEROINIT, reply.DataSize);
reply.Data = pData;

これで呼び出してるんですけど
ICMP_ECHO_REPLYクラスが何をしてるのかさっぱり・・・
調べてもわからなかったので教えてください!
引用返信 編集キー/
■54329 / inTopicNo.2)  Re[1]: ICMP_ECHO_REPLYクラス
□投稿者/ Azulean (624回)-(2010/10/13(Wed) 22:59:16)
そのクラス自体は一般的に存在するクラスではないので、その答えを知るのはそのコードを書いた人でしょう。

ICMP_ECHO_REPLY 構造体を実装したものなのでしょうけれども、byte 配列から無理矢理取り出しているようですね。
http://msdn.microsoft.com/en-us/library/aa366053.aspx
引用返信 編集キー/
■54334 / inTopicNo.3)  Re[2]: ICMP_ECHO_REPLYクラス
□投稿者/ ping (2回)-(2010/10/14(Thu) 08:46:27)
No54329 (Azulean さん) に返信
> そのクラス自体は一般的に存在するクラスではないので、その答えを知るのはそのコードを書いた人でしょう。
>
> ICMP_ECHO_REPLY 構造体を実装したものなのでしょうけれども、byte 配列から無理矢理取り出しているようですね。
> http://msdn.microsoft.com/en-us/library/aa366053.aspx

やはり書いた人にしかわからないんですね・・・
ありがとうございました!
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -