本文整理汇总了C#中Packet类的典型用法代码示例。如果您正苦于以下问题:C# Packet类的具体用法?C# Packet怎么用?C# Packet使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Packet类属于命名空间,在下文中一共展示了Packet类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: _handleAdminShow
private void _handleAdminShow(Packet pkt)
{
if (OnAdminHiddenChange == null) return;
short id = pkt.GetShort();
OnAdminHiddenChange(id, false);
}
开发者ID:weedindeed,项目名称:EndlessClient,代码行数:7,代码来源:AdminInteract.cs
示例2: OnCreatingResponse
public bool OnCreatingResponse(PacketSession session, Packet requestPacket, Packet responsePacket)
{
var idTypes = session.Server.IdTypes;
if (ValidateRequest(requestPacket))
{
var idType = idTypes.FirstOrDefault(x => x.Code == requestPacket.Words[1]);
var idValue = requestPacket.Words[2];
var banListItem = session.Server.BanList.FirstOrDefault(x => x.IdType.Code == idType.Code && x.IdValue == idValue);
if (banListItem != null)
{
session.Server.BanList.Remove(banListItem);
responsePacket.Words.Add(RConDevServer.Protocol.Dice.Battlefield3.Constants.RESPONSE_SUCCESS);
}
else
{
responsePacket.Words.Add(RConDevServer.Protocol.Dice.Battlefield3.Constants.RESPONSE_NOT_FOUND);
}
}
else
{
responsePacket.Words.Add(RConDevServer.Protocol.Dice.Battlefield3.Constants.RESPONSE_INVALID_ARGUMENTS);
}
return true;
}
开发者ID:RConDev,项目名称:rcondevserver,代码行数:25,代码来源:BanListRemoveCommandHandler.cs
示例3: SendJob
public Guid SendJob(Base activity)
{
if (_ConnectionToManager == null || !_ConnectionToManager.IsConnected()) throw new Exception("Not connected to the manager");
while (true)
{
BinaryFormatter binaryFormatter = new BinaryFormatter();
MemoryStream datastream = new MemoryStream();
binaryFormatter.Serialize(datastream, activity);
Packet p = new Packet(1000);
Byte[] data= datastream.ToArray();
p.Add(data,true);
_ConnectionToManager.SendPacket(p);
Stopwatch sendTime = new Stopwatch();
sendTime.Start();
while (sendTime.ElapsedMilliseconds < _CommsTimeout)
{
if (_ConnectionToManager.GetPacketsToProcessCount() > 0)
{
foreach (Guid jobGuid in from packet in _ConnectionToManager.GetPacketsToProcess() where packet.Type == 1001 select new Guid((Byte[]) packet.GetObjects()[0]))
{
return jobGuid;
}
}
Thread.Sleep(1);
}
if (_ConnectionToManager.IsConnected()) _ConnectionToManager.Disconnect();
_ConnectionToManager.Connect(_IpAddress, _Port, 20480 * 1024);
}
throw new Exception("Mananger unavailable or busy");
}
开发者ID:sbatman,项目名称:Cranium,代码行数:32,代码来源:CommsClient.cs
示例4: AccountCreate
public bool AccountCreate(string uName, string pass, string realName, string location, string email, string HDDSerial, out AccountReply result)
{
result = AccountReply.THIS_IS_WRONG;
if (!m_client.ConnectedAndInitialized || !Initialized)
return false;
Packet builder = new Packet(PacketFamily.Account, PacketAction.Create);
//eoserv doesn't care...
builder.AddShort(1337);
builder.AddByte(42);
builder.AddBreakString(uName);
builder.AddBreakString(pass);
builder.AddBreakString(realName);
builder.AddBreakString(location);
builder.AddBreakString(email);
builder.AddBreakString(System.Net.Dns.GetHostName());
builder.AddBreakString(HDDSerial);
if (!m_client.SendPacket(builder) || !m_account_responseEvent.WaitOne(Constants.ResponseTimeout))
return false;
result = m_account_reply;
return true;
}
开发者ID:Vulttwin,项目名称:EndlessClient,代码行数:26,代码来源:Account.cs
示例5: ReadPacket
public Packet ReadPacket()
{
if (_reader.PeekChar() < 0)
return null;
if (Version != 0x0300)
{
var direction = _reader.ReadByte();
var unixtime = _reader.ReadUInt32();
var tickcount = _reader.ReadUInt32();
var packet = new Packet();
packet.Size = _reader.ReadInt32() - (direction == 0xFF ? 2 : 4);
packet.OpcodeNumber = (uint)(direction == 0xFF ? _reader.ReadInt16() : _reader.ReadInt32());
packet.Data = _reader.ReadBytes(packet.Size);
return packet;
}
else
{
var direction = _reader.ReadUInt32();
var unixtime = _reader.ReadUInt32();
var tickcount = _reader.ReadUInt32();
var packet = new Packet();
var optSize = _reader.ReadInt32();
packet.Size = _reader.ReadInt32() - 4;
_reader.ReadBytes(optSize);
packet.OpcodeNumber = (uint)_reader.ReadInt32();
packet.Data = _reader.ReadBytes(packet.Size);
return packet;
}
}
开发者ID:Gintama,项目名称:VoragineTools,代码行数:32,代码来源:WowCorePacketReader.cs
示例6: AsciiSpeech
public static void AsciiSpeech( Packet p, PacketHandlerEventArgs args )
{
// 0, 1, 2
Serial serial = p.ReadUInt32(); // 3, 4, 5, 6
ushort body = p.ReadUInt16(); // 7, 8
MessageType type = (MessageType)p.ReadByte(); // 9
ushort hue = p.ReadUInt16(); // 10, 11
ushort font = p.ReadUInt16();
string name = p.ReadStringSafe( 30 );
string text = p.ReadStringSafe();
if ( World.Player != null && serial == Serial.Zero && body == 0 && type == MessageType.Regular && hue == 0xFFFF && font == 0xFFFF && name == "SYSTEM" )
{
args.Block = true;
p.Seek( 3, SeekOrigin.Begin );
p.WriteAsciiFixed( "", (int)p.Length-3 );
ClientCommunication.DoFeatures( World.Player.Features ) ;
}
else
{
HandleSpeech( p, args, serial, body, type, hue, font, "A", name, text );
if ( !serial.IsValid )
BandageTimer.OnAsciiMessage( text );
}
}
开发者ID:herculesjr,项目名称:razor,代码行数:28,代码来源:Handlers.cs
示例7: addPacketToQueue
public void addPacketToQueue(Packet p)
{
lock (queuedPackets)
{
queuedPackets.Enqueue(p);
}
}
开发者ID:Krill156,项目名称:SharpEMU,代码行数:7,代码来源:Connection.cs
示例8: OnGetValue
protected override bool OnGetValue(PacketSession session, Packet responsePacket)
{
bool isRanked = session.Server.ServerInfo.IsRanked;
responsePacket.Words.Add(RConDevServer.Protocol.Dice.Battlefield3.Constants.RESPONSE_SUCCESS);
responsePacket.Words.Add(Convert.ToString(isRanked));
return true;
}
开发者ID:RConDev,项目名称:rcondevserver,代码行数:7,代码来源:VarsRankedCommandHandler.cs
示例9: CreateParser
public static Parser CreateParser(Packet packet)
{
Type type;
if (Parsers.TryGetValue(packet.Code, out type))
{
var parser = (Parser) Activator.CreateInstance(type);
parser.Initialize(packet);
parser.Parse();
parser.CheckPacket();
return parser;
}
MethodInfo mi;
if (MethodParsers.TryGetValue(packet.Code, out mi))
{
Type createdType = mi.IsStatic ? typeof (Parser) : mi.DeclaringType;
var parserObj = (Parser) Activator.CreateInstance(createdType);
parserObj.Initialize(packet);
var args = new object[mi.GetParameters().Length];
if (args.Length > 0)
args[0] = parserObj; // pass the Parser object as a parameter for compatibility
try
{
mi.Invoke(parserObj, args);
}
catch (Exception e)
{
if (e.InnerException != null)
e = e.InnerException;
parserObj.WriteLine("ERROR: Parsing failed with exception " + e);
}
parserObj.CheckPacket();
return parserObj;
}
return UnknownParser;
}
开发者ID:Gintama,项目名称:VoragineTools,代码行数:35,代码来源:ParserFactory.cs
示例10: IncomingDataTask
private static void IncomingDataTask(object tuple)
{
Socket cSocket = ((Tuple<Socket, Input>)tuple).Item1;
Input input = ((Tuple<Socket, Input>)tuple).Item2;
byte[] buffer;
int readBytes;
try
{
while (true)
{
buffer = new byte[cSocket.SendBufferSize];
readBytes = cSocket.Receive(buffer);
if (readBytes > 0)
{
Packet packet = new Packet(buffer);
DataManager(packet, input);
}
}
}
catch (SocketException)
{
lock (Server.clientsLock)
{
Server.clients.Remove(Server.clients.Last((c) => { return c.clientSocket == cSocket; }));
}
Server.Informer.AddEventInformation("A client disconnected");
}
}
开发者ID:Blezzing,项目名称:Brawlocks,代码行数:32,代码来源:Client.cs
示例11: ReadPacket
public Packet ReadPacket()
{
if (_readPackets >= _packets.Count)
{
return null;
}
var element = _packets[_readPackets];
var data = element.InnerText;
var len = data.Length / 2;
var bytes = new byte[len];
for (var i = 0; i < len; ++i)
{
var pos = i * 2;
var str = data[pos].ToString();
str += data[pos + 1];
bytes[i] = byte.Parse(str, System.Globalization.NumberStyles.HexNumber);
}
var packet = new Packet();
packet.Size = len;
packet.Code = (OpCodes)Convert.ToInt32(element.Attributes["opcode"].Value);
packet.Data = bytes;
_readPackets++;
return packet;
}
开发者ID:ryancheung,项目名称:WoWTools,代码行数:31,代码来源:SniffitztPacketReader.cs
示例12: DeserializeServerOriginatedPacketTest
public void DeserializeServerOriginatedPacketTest()
{
var expectedPacket = new Packet(PacketOrigin.Server, false, 458, new List<string>() {"listPlayers", "all"});
var packetBytes = Convert.FromBase64String("ygEAgCQAAAACAAAACwAAAGxpc3RQbGF5ZXJzAAMAAABhbGwA");
var deserializedPackets = this.serializer.Deserialize(packetBytes).ToArray();
Assert.AreEqual(expectedPacket, deserializedPackets[0], "Deserializing Server Packet not successful");
}
开发者ID:RConDev,项目名称:rcondevserver,代码行数:7,代码来源:PacketSerializerTest.cs
示例13: DeserializeServerOriginatedPacketResponseTest
public void DeserializeServerOriginatedPacketResponseTest()
{
var expectedPacket = new Packet(PacketOrigin.Server, true, 458, new List<string>() { "OK", "21", "test" });
var packetBytes = Convert.FromBase64String("ygEAwCMAAAADAAAAAgAAAE9LAAIAAAAyMQAEAAAAdGVzdAA=");
var deserializedPackets = this.serializer.Deserialize(packetBytes).ToArray();
Assert.AreEqual(expectedPacket, deserializedPackets[0], "Deserializing Server Packet Response not successful");
}
开发者ID:RConDev,项目名称:rcondevserver,代码行数:7,代码来源:PacketSerializerTest.cs
示例14: GetPackage
//**CONFIRMED
public static Packet GetPackage(int shipNumber)
{
SetShipSubPacket ssp = new SetShipSubPacket(shipNumber);
ShipActionPacket sap = new ShipActionPacket(ssp);
Packet p = new Packet(sap);
return p;
}
开发者ID:russjudge,项目名称:ArtemisSBS-ProtocolSharp,代码行数:8,代码来源:SetShipSubPacket.cs
示例15: FPSAim
public FPSAim(String vcd)
{
InitializeComponent();
VideoCaptureDevice videoSource = new VideoCaptureDevice(vcd, new Size(320, 240), false);
OpenVideoSource(videoSource);
redDot.Location = new Point(gridBox.Width / 2 + gridBox.Left, gridBox.Height / 2 + gridBox.Top);
servos = new Servos();
redDot.Location = servos.GetPorportionalMathPosition(gridBox.Bounds);
redDot.Location = new Point(redDot.Location.X - REDDOT_OFFSET_X, redDot.Location.Y - REDDOT_OFFSET_Y);
label1.Text = "(-" + servos.CenterServosPosition.X + "," + servos.CenterServosPosition.Y + ")";
textBoxXServo.Text = servos.ShootingRange.Width.ToString();
textBoxYServo.Text = servos.ShootingRange.Height.ToString();
textBoxXCoord.Text = servos.ServosPosition.X.ToString();
textBoxYCoord.Text = servos.ServosPosition.Y.ToString();
Packet packet = new Packet(servos.CenterServosPosition);
packet.setFireOff();
this.sendData(packet);
Cursor.Hide();
cursorhidden = true;
CoordinateTimer.Start();
//Point camwindowcenter = new Point(gridBox.PointToScreen(new Point(0, 0)).X , gridBox.PointToScreen(new Point(0, 0)).Y );
//Cursor.Position = camwindowcenter;
currentX = Cursor.Position.X;
currentY = Cursor.Position.Y;
lastX = 0;
lastY = 0;
}
开发者ID:Tob1112,项目名称:405sentry,代码行数:31,代码来源:FPSAim.cs
示例16: HandleARP
/// <summary>
/// Handle ARP packets
/// </summary>
/// <param name="packet">The EthernetDatagram</param>
/// <param name="arp">The ArpDatagram to parse</param>
public static void HandleARP(Packet packet, ArpDatagram arp,
ref UInt64 frame_id, object[] ctrl)
{
ListViewItem item = new ListViewItem(frame_id.ToString());
frame_id++;
List<string> packet_info = new List<string>();
ListView frames = (ListView)ctrl[0];
EthernetDatagram ethernet = packet.Ethernet;
packet_info.Add(packet.Timestamp.ToString("hh:mm:ss.fff tt"));
packet_info.Add(arp.SenderProtocolIpV4Address.ToString());
packet_info.Add(arp.TargetProtocolIpV4Address.ToString());
packet_info.Add(ethernet.Source.ToString());
packet_info.Add(ethernet.Destination.ToString());
packet_info.Add("ARP");
packet_info.Add(arp.Length.ToString());
// update UI
if (item != null) {
item.SubItems.AddRange(packet_info.ToArray());
object[] param = new object[2];
param[0] = frames;
object[] o = new object[3];
o[0] = item;
o[1] = ctrl[1];
o[2] = packet;
param[1] = o;
frames.BeginInvoke(new ParserHelper.UIHandlerEx(ParserHelper.UpdateFrameUI), param);
}
}
开发者ID:d3xt3-bitstechlab,项目名称:sniffer,代码行数:36,代码来源:ArpParser.cs
示例17: Compress
public static Packet Compress( Packet p )
{
int length;
byte[] source = p.Compile( false, out length );
if ( length > 100 && length < 60000 )
{
byte[] dest = new byte[(int)(length*1.001)+1];
int destSize = dest.Length;
ZLibError error = Compression.Pack( dest, ref destSize, source, length, ZLibQuality.Default );
if ( error != ZLibError.Okay )
{
Console.WriteLine( "WARNING: Unable to compress admin packet, zlib error: {0}", error );
return p;
}
else
{
return new AdminCompressedPacket( dest, destSize, length );
}
}
else
{
return p;
}
}
开发者ID:greeduomacro,项目名称:divinity,代码行数:27,代码来源:Network.cs
示例18: SendHighscore
public static void SendHighscore(string name, int score)
{
ip = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 5000);
serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Console.WriteLine("Sending...");
try
{
serverSocket.Connect(ip);
}
catch
{
Console.WriteLine("Failed to connect to host server.");
return;
}
Packet sendPacket = new Packet();
sendPacket.sendName = name;
sendPacket.sendScore = score;
serverSocket.Send(sendPacket.ToByteArray());
serverSocket.Close();
}
开发者ID:Ozelotl,项目名称:Portfolio,代码行数:25,代码来源:Client.cs
示例19: Ready
/// <summary>
/// Readies the skill.
/// </summary>
/// <param name="creature"></param>
/// <param name="skill"></param>
/// <param name="packet"></param>
/// <returns></returns>
public bool Ready(Creature creature, Skill skill, Packet packet)
{
Send.UseMotion(creature, 10, 0);
Send.SkillReady(creature, skill.Info.Id);
return true;
}
开发者ID:tkiapril,项目名称:aura,代码行数:14,代码来源:Stomp.cs
示例20: Listening
public Listening(Gateway.Event.IMediator eventMediator, ITransition transition, Packet.Endpoint.IFactory packetEndpointFactory, Context.IListen context)
{
_eventMediator = eventMediator;
_transition = transition;
_packetEndpointFactory = packetEndpointFactory;
_context = context;
}
开发者ID:jamesleech,项目名称:Harmonize,代码行数:7,代码来源:Listening.cs
注:本文中的Packet类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论