LIBOMV-512 PacketToString now decodes nested properties
LIBOMV-509 Loading saved filters will prompt to apply to current session list LIBOMV-519 Adds initial support for loading GridProxy plugins (not well tested yet) git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2705 52acb1d6-8a22-11de-b505-999d5b087335
This commit is contained in:
332
Programs/WinGridProxy/Form1.Designer.cs
generated
332
Programs/WinGridProxy/Form1.Designer.cs
generated
@@ -40,13 +40,6 @@
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.panelMainWindow = new System.Windows.Forms.Panel();
|
||||
this.splitContainerSessionsTabs = new System.Windows.Forms.SplitContainer();
|
||||
this.listViewSessions = new WinGridProxy.ListViewNoFlicker();
|
||||
this.columnHeaderCounter = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderProtocol = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderType = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderSize = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderUrl = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderContentType = new System.Windows.Forms.ColumnHeader();
|
||||
this.contextMenuStripSessions = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.toolStripMenuItemAutoScroll = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator13 = new System.Windows.Forms.ToolStripSeparator();
|
||||
@@ -55,7 +48,6 @@
|
||||
this.toolStripMenuItemRemoveAll = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItemRemoveSelected = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItemRemoveUnselected = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.removeToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.selectToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.contextMenuStripSelect = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.allToolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@@ -63,7 +55,6 @@
|
||||
this.noneToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparatorSelectPacketProto = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.toolStripMenuItemSelectPacketName = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.selectToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparatorFilterPacketByName = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.enableDisableFilterByNameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator15 = new System.Windows.Forms.ToolStripSeparator();
|
||||
@@ -76,6 +67,7 @@
|
||||
this.orangeToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator17 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.unmarkToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.markToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator16 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.findToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
|
||||
@@ -100,14 +92,8 @@
|
||||
this.splitContainerFilters = new System.Windows.Forms.SplitContainer();
|
||||
this.checkBoxCheckAllPackets = new System.Windows.Forms.CheckBox();
|
||||
this.grpUDPFilters = new System.Windows.Forms.GroupBox();
|
||||
this.listViewPacketFilters = new WinGridProxy.ListViewNoFlicker();
|
||||
this.columnHeaderPacketName = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderPacketType = new System.Windows.Forms.ColumnHeader();
|
||||
this.checkBoxCheckAllMessages = new System.Windows.Forms.CheckBox();
|
||||
this.grpCapsFilters = new System.Windows.Forms.GroupBox();
|
||||
this.listViewMessageFilters = new WinGridProxy.ListViewNoFlicker();
|
||||
this.columnHeaderName = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderMessageType = new System.Windows.Forms.ColumnHeader();
|
||||
this.tabPageInspect = new System.Windows.Forms.TabPage();
|
||||
this.splitContainerInspectorTab = new System.Windows.Forms.SplitContainer();
|
||||
this.tabControlInspectorRequest = new System.Windows.Forms.TabControl();
|
||||
@@ -142,7 +128,8 @@
|
||||
this.button3 = new System.Windows.Forms.Button();
|
||||
this.buttonInjectPacket = new System.Windows.Forms.Button();
|
||||
this.richTextBoxInject = new System.Windows.Forms.RichTextBox();
|
||||
this.markToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.removeToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.selectToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripLabelHexEditorRequest = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||
@@ -158,6 +145,8 @@
|
||||
this.saveOptionsOnExitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.startProxyOnStartupToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.toolStripMenuItemPlugins = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator14 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.exitToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.EditToolStripButton = new System.Windows.Forms.ToolStripDropDownButton();
|
||||
this.copyToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@@ -223,8 +212,19 @@
|
||||
this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.autoColorizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.colorDialog1 = new System.Windows.Forms.ColorDialog();
|
||||
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator14 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.listViewSessions = new WinGridProxy.ListViewNoFlicker();
|
||||
this.columnHeaderCounter = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderProtocol = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderType = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderSize = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderUrl = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderContentType = new System.Windows.Forms.ColumnHeader();
|
||||
this.listViewPacketFilters = new WinGridProxy.ListViewNoFlicker();
|
||||
this.columnHeaderPacketName = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderPacketType = new System.Windows.Forms.ColumnHeader();
|
||||
this.listViewMessageFilters = new WinGridProxy.ListViewNoFlicker();
|
||||
this.columnHeaderName = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeaderMessageType = new System.Windows.Forms.ColumnHeader();
|
||||
this.panelProxyConfig.SuspendLayout();
|
||||
this.panelMainWindow.SuspendLayout();
|
||||
this.splitContainerSessionsTabs.Panel1.SuspendLayout();
|
||||
@@ -382,59 +382,6 @@
|
||||
this.splitContainerSessionsTabs.SplitterWidth = 5;
|
||||
this.splitContainerSessionsTabs.TabIndex = 0;
|
||||
//
|
||||
// listViewSessions
|
||||
//
|
||||
this.listViewSessions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeaderCounter,
|
||||
this.columnHeaderProtocol,
|
||||
this.columnHeaderType,
|
||||
this.columnHeaderSize,
|
||||
this.columnHeaderUrl,
|
||||
this.columnHeaderContentType});
|
||||
this.listViewSessions.ContextMenuStrip = this.contextMenuStripSessions;
|
||||
this.listViewSessions.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.listViewSessions.FullRowSelect = true;
|
||||
this.listViewSessions.GridLines = true;
|
||||
this.listViewSessions.HideSelection = false;
|
||||
this.listViewSessions.Location = new System.Drawing.Point(0, 0);
|
||||
this.listViewSessions.Name = "listViewSessions";
|
||||
this.listViewSessions.Size = new System.Drawing.Size(469, 428);
|
||||
this.listViewSessions.SmallImageList = this.imageList1;
|
||||
this.listViewSessions.TabIndex = 0;
|
||||
this.listViewSessions.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewSessions.View = System.Windows.Forms.View.Details;
|
||||
this.listViewSessions.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listViewSessions_ItemSelectionChanged);
|
||||
//
|
||||
// columnHeaderCounter
|
||||
//
|
||||
this.columnHeaderCounter.Text = "#";
|
||||
this.columnHeaderCounter.Width = 54;
|
||||
//
|
||||
// columnHeaderProtocol
|
||||
//
|
||||
this.columnHeaderProtocol.Text = "Protocol";
|
||||
this.columnHeaderProtocol.Width = 59;
|
||||
//
|
||||
// columnHeaderType
|
||||
//
|
||||
this.columnHeaderType.Text = "Packet Type";
|
||||
this.columnHeaderType.Width = 151;
|
||||
//
|
||||
// columnHeaderSize
|
||||
//
|
||||
this.columnHeaderSize.Text = "Bytes";
|
||||
this.columnHeaderSize.Width = 64;
|
||||
//
|
||||
// columnHeaderUrl
|
||||
//
|
||||
this.columnHeaderUrl.Text = "Host/Address";
|
||||
this.columnHeaderUrl.Width = 312;
|
||||
//
|
||||
// columnHeaderContentType
|
||||
//
|
||||
this.columnHeaderContentType.Text = "Content Type";
|
||||
this.columnHeaderContentType.Width = 250;
|
||||
//
|
||||
// contextMenuStripSessions
|
||||
//
|
||||
this.contextMenuStripSessions.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
@@ -479,7 +426,7 @@
|
||||
this.toolStripMenuItemRemoveSelected,
|
||||
this.toolStripMenuItemRemoveUnselected});
|
||||
this.contextMenuStripRemove.Name = "contextMenuStripRemove";
|
||||
this.contextMenuStripRemove.OwnerItem = this.toolStripMenuSessionsRemove;
|
||||
this.contextMenuStripRemove.OwnerItem = this.removeToolStripMenuItem2;
|
||||
this.contextMenuStripRemove.Size = new System.Drawing.Size(149, 70);
|
||||
//
|
||||
// toolStripMenuItemRemoveAll
|
||||
@@ -504,13 +451,6 @@
|
||||
this.toolStripMenuItemRemoveUnselected.Text = "Unselected";
|
||||
this.toolStripMenuItemRemoveUnselected.Click += new System.EventHandler(this.sessionRemoveUnselected_Click);
|
||||
//
|
||||
// removeToolStripMenuItem2
|
||||
//
|
||||
this.removeToolStripMenuItem2.DropDown = this.contextMenuStripRemove;
|
||||
this.removeToolStripMenuItem2.Name = "removeToolStripMenuItem2";
|
||||
this.removeToolStripMenuItem2.Size = new System.Drawing.Size(143, 22);
|
||||
this.removeToolStripMenuItem2.Text = "Remove";
|
||||
//
|
||||
// selectToolStripMenuItem2
|
||||
//
|
||||
this.selectToolStripMenuItem2.DropDown = this.contextMenuStripSelect;
|
||||
@@ -527,7 +467,7 @@
|
||||
this.toolStripSeparatorSelectPacketProto,
|
||||
this.toolStripMenuItemSelectPacketName});
|
||||
this.contextMenuStripSelect.Name = "contextMenuStripSelect";
|
||||
this.contextMenuStripSelect.OwnerItem = this.selectToolStripMenuItem2;
|
||||
this.contextMenuStripSelect.OwnerItem = this.selectToolStripMenuItem1;
|
||||
this.contextMenuStripSelect.Size = new System.Drawing.Size(167, 98);
|
||||
//
|
||||
// allToolStripMenuItem4
|
||||
@@ -564,13 +504,6 @@
|
||||
this.toolStripMenuItemSelectPacketName.Text = "All (Packet Type)";
|
||||
this.toolStripMenuItemSelectPacketName.Click += new System.EventHandler(this.sessionSelectAllPacketType_Click);
|
||||
//
|
||||
// selectToolStripMenuItem1
|
||||
//
|
||||
this.selectToolStripMenuItem1.DropDown = this.contextMenuStripSelect;
|
||||
this.selectToolStripMenuItem1.Name = "selectToolStripMenuItem1";
|
||||
this.selectToolStripMenuItem1.Size = new System.Drawing.Size(143, 22);
|
||||
this.selectToolStripMenuItem1.Text = "Select";
|
||||
//
|
||||
// toolStripSeparatorFilterPacketByName
|
||||
//
|
||||
this.toolStripSeparatorFilterPacketByName.Name = "toolStripSeparatorFilterPacketByName";
|
||||
@@ -609,7 +542,7 @@
|
||||
this.toolStripSeparator17,
|
||||
this.unmarkToolStripMenuItem});
|
||||
this.contextMenuStripMark.Name = "contextMenuStripMarkDropdown";
|
||||
this.contextMenuStripMark.OwnerItem = this.markToolStripMenuItem1;
|
||||
this.contextMenuStripMark.OwnerItem = this.markToolStripMenuItem2;
|
||||
this.contextMenuStripMark.Size = new System.Drawing.Size(122, 142);
|
||||
//
|
||||
// redToolStripMenuItem2
|
||||
@@ -659,6 +592,13 @@
|
||||
this.unmarkToolStripMenuItem.Text = "Unmark";
|
||||
this.unmarkToolStripMenuItem.Click += new System.EventHandler(this.sessionUnmarkSelected_Click);
|
||||
//
|
||||
// markToolStripMenuItem1
|
||||
//
|
||||
this.markToolStripMenuItem1.DropDown = this.contextMenuStripMark;
|
||||
this.markToolStripMenuItem1.Name = "markToolStripMenuItem1";
|
||||
this.markToolStripMenuItem1.Size = new System.Drawing.Size(152, 22);
|
||||
this.markToolStripMenuItem1.Text = "Mark";
|
||||
//
|
||||
// toolStripSeparator16
|
||||
//
|
||||
this.toolStripSeparator16.Name = "toolStripSeparator16";
|
||||
@@ -914,35 +854,6 @@
|
||||
this.grpUDPFilters.TabStop = false;
|
||||
this.grpUDPFilters.Text = "UDP Packets";
|
||||
//
|
||||
// listViewPacketFilters
|
||||
//
|
||||
this.listViewPacketFilters.CheckBoxes = true;
|
||||
this.listViewPacketFilters.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeaderPacketName,
|
||||
this.columnHeaderPacketType});
|
||||
this.listViewPacketFilters.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.listViewPacketFilters.FullRowSelect = true;
|
||||
this.listViewPacketFilters.GridLines = true;
|
||||
this.listViewPacketFilters.Location = new System.Drawing.Point(3, 16);
|
||||
this.listViewPacketFilters.MultiSelect = false;
|
||||
this.listViewPacketFilters.Name = "listViewPacketFilters";
|
||||
this.listViewPacketFilters.Size = new System.Drawing.Size(286, 338);
|
||||
this.listViewPacketFilters.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.listViewPacketFilters.TabIndex = 0;
|
||||
this.listViewPacketFilters.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewPacketFilters.View = System.Windows.Forms.View.Details;
|
||||
this.listViewPacketFilters.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listViewPacketFilters_ItemChecked);
|
||||
this.listViewPacketFilters.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listViewFilterSorter_ColumnClick);
|
||||
//
|
||||
// columnHeaderPacketName
|
||||
//
|
||||
this.columnHeaderPacketName.Text = "Packet Name";
|
||||
this.columnHeaderPacketName.Width = 215;
|
||||
//
|
||||
// columnHeaderPacketType
|
||||
//
|
||||
this.columnHeaderPacketType.Text = "Type";
|
||||
//
|
||||
// checkBoxCheckAllMessages
|
||||
//
|
||||
this.checkBoxCheckAllMessages.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
@@ -971,36 +882,6 @@
|
||||
this.grpCapsFilters.TabStop = false;
|
||||
this.grpCapsFilters.Text = "Capabilities Messages";
|
||||
//
|
||||
// listViewMessageFilters
|
||||
//
|
||||
this.listViewMessageFilters.CheckBoxes = true;
|
||||
this.listViewMessageFilters.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeaderName,
|
||||
this.columnHeaderMessageType});
|
||||
this.listViewMessageFilters.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.listViewMessageFilters.FullRowSelect = true;
|
||||
this.listViewMessageFilters.GridLines = true;
|
||||
this.listViewMessageFilters.Location = new System.Drawing.Point(3, 16);
|
||||
this.listViewMessageFilters.MultiSelect = false;
|
||||
this.listViewMessageFilters.Name = "listViewMessageFilters";
|
||||
this.listViewMessageFilters.Size = new System.Drawing.Size(284, 338);
|
||||
this.listViewMessageFilters.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.listViewMessageFilters.TabIndex = 1;
|
||||
this.listViewMessageFilters.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewMessageFilters.View = System.Windows.Forms.View.Details;
|
||||
this.listViewMessageFilters.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listViewMessageFilters_ItemChecked);
|
||||
this.listViewMessageFilters.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listViewFilterSorter_ColumnClick);
|
||||
//
|
||||
// columnHeaderName
|
||||
//
|
||||
this.columnHeaderName.Text = "Message Name";
|
||||
this.columnHeaderName.Width = 181;
|
||||
//
|
||||
// columnHeaderMessageType
|
||||
//
|
||||
this.columnHeaderMessageType.Text = "Type";
|
||||
this.columnHeaderMessageType.Width = 92;
|
||||
//
|
||||
// tabPageInspect
|
||||
//
|
||||
this.tabPageInspect.Controls.Add(this.splitContainerInspectorTab);
|
||||
@@ -1410,12 +1291,19 @@
|
||||
this.richTextBoxInject.Text = "";
|
||||
this.richTextBoxInject.TextChanged += new System.EventHandler(this.richTextBoxInject_TextChanged);
|
||||
//
|
||||
// markToolStripMenuItem1
|
||||
// removeToolStripMenuItem2
|
||||
//
|
||||
this.markToolStripMenuItem1.DropDown = this.contextMenuStripMark;
|
||||
this.markToolStripMenuItem1.Name = "markToolStripMenuItem1";
|
||||
this.markToolStripMenuItem1.Size = new System.Drawing.Size(143, 22);
|
||||
this.markToolStripMenuItem1.Text = "Mark";
|
||||
this.removeToolStripMenuItem2.DropDown = this.contextMenuStripRemove;
|
||||
this.removeToolStripMenuItem2.Name = "removeToolStripMenuItem2";
|
||||
this.removeToolStripMenuItem2.Size = new System.Drawing.Size(152, 22);
|
||||
this.removeToolStripMenuItem2.Text = "Remove";
|
||||
//
|
||||
// selectToolStripMenuItem1
|
||||
//
|
||||
this.selectToolStripMenuItem1.DropDown = this.contextMenuStripSelect;
|
||||
this.selectToolStripMenuItem1.Name = "selectToolStripMenuItem1";
|
||||
this.selectToolStripMenuItem1.Size = new System.Drawing.Size(152, 22);
|
||||
this.selectToolStripMenuItem1.Text = "Select";
|
||||
//
|
||||
// toolStripLabelHexEditorRequest
|
||||
//
|
||||
@@ -1451,7 +1339,7 @@
|
||||
this.toolStripSeparator8,
|
||||
this.settingsToolStripMenuItem,
|
||||
this.toolStripSeparator9,
|
||||
this.toolStripMenuItem1,
|
||||
this.toolStripMenuItemPlugins,
|
||||
this.toolStripSeparator14,
|
||||
this.exitToolStripMenuItem1});
|
||||
this.toolStripFileMenu.Image = ((System.Drawing.Image)(resources.GetObject("toolStripFileMenu.Image")));
|
||||
@@ -1546,6 +1434,19 @@
|
||||
this.toolStripSeparator9.Name = "toolStripSeparator9";
|
||||
this.toolStripSeparator9.Size = new System.Drawing.Size(184, 6);
|
||||
//
|
||||
// toolStripMenuItemPlugins
|
||||
//
|
||||
this.toolStripMenuItemPlugins.Enabled = false;
|
||||
this.toolStripMenuItemPlugins.Name = "toolStripMenuItemPlugins";
|
||||
this.toolStripMenuItemPlugins.Size = new System.Drawing.Size(187, 22);
|
||||
this.toolStripMenuItemPlugins.Text = "Plugins";
|
||||
this.toolStripMenuItemPlugins.Click += new System.EventHandler(this.toolStripMenuItem1_Click);
|
||||
//
|
||||
// toolStripSeparator14
|
||||
//
|
||||
this.toolStripSeparator14.Name = "toolStripSeparator14";
|
||||
this.toolStripSeparator14.Size = new System.Drawing.Size(184, 6);
|
||||
//
|
||||
// exitToolStripMenuItem1
|
||||
//
|
||||
this.exitToolStripMenuItem1.Name = "exitToolStripMenuItem1";
|
||||
@@ -1576,7 +1477,7 @@
|
||||
//
|
||||
this.copyToolStripMenuItem1.DropDown = this.contextMenuStripCopy;
|
||||
this.copyToolStripMenuItem1.Name = "copyToolStripMenuItem1";
|
||||
this.copyToolStripMenuItem1.Size = new System.Drawing.Size(143, 22);
|
||||
this.copyToolStripMenuItem1.Size = new System.Drawing.Size(152, 22);
|
||||
this.copyToolStripMenuItem1.Text = "Copy";
|
||||
this.copyToolStripMenuItem1.Visible = false;
|
||||
//
|
||||
@@ -1618,18 +1519,18 @@
|
||||
// toolStripSeparator10
|
||||
//
|
||||
this.toolStripSeparator10.Name = "toolStripSeparator10";
|
||||
this.toolStripSeparator10.Size = new System.Drawing.Size(140, 6);
|
||||
this.toolStripSeparator10.Size = new System.Drawing.Size(149, 6);
|
||||
//
|
||||
// toolStripSeparator12
|
||||
//
|
||||
this.toolStripSeparator12.Name = "toolStripSeparator12";
|
||||
this.toolStripSeparator12.Size = new System.Drawing.Size(140, 6);
|
||||
this.toolStripSeparator12.Size = new System.Drawing.Size(149, 6);
|
||||
//
|
||||
// findToolStripMenuItem
|
||||
//
|
||||
this.findToolStripMenuItem.Name = "findToolStripMenuItem";
|
||||
this.findToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.F)));
|
||||
this.findToolStripMenuItem.Size = new System.Drawing.Size(143, 22);
|
||||
this.findToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
|
||||
this.findToolStripMenuItem.Text = "Find";
|
||||
this.findToolStripMenuItem.Click += new System.EventHandler(this.findSessions_Click);
|
||||
//
|
||||
@@ -2037,16 +1938,117 @@
|
||||
this.autoColorizeToolStripMenuItem.Text = "Auto Colorize";
|
||||
this.autoColorizeToolStripMenuItem.Click += new System.EventHandler(this.autoColorizeToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripMenuItem1
|
||||
// listViewSessions
|
||||
//
|
||||
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
|
||||
this.toolStripMenuItem1.Size = new System.Drawing.Size(187, 22);
|
||||
this.toolStripMenuItem1.Text = "Plugins";
|
||||
this.listViewSessions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeaderCounter,
|
||||
this.columnHeaderProtocol,
|
||||
this.columnHeaderType,
|
||||
this.columnHeaderSize,
|
||||
this.columnHeaderUrl,
|
||||
this.columnHeaderContentType});
|
||||
this.listViewSessions.ContextMenuStrip = this.contextMenuStripSessions;
|
||||
this.listViewSessions.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.listViewSessions.FullRowSelect = true;
|
||||
this.listViewSessions.GridLines = true;
|
||||
this.listViewSessions.HideSelection = false;
|
||||
this.listViewSessions.Location = new System.Drawing.Point(0, 0);
|
||||
this.listViewSessions.Name = "listViewSessions";
|
||||
this.listViewSessions.Size = new System.Drawing.Size(469, 428);
|
||||
this.listViewSessions.SmallImageList = this.imageList1;
|
||||
this.listViewSessions.TabIndex = 0;
|
||||
this.listViewSessions.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewSessions.View = System.Windows.Forms.View.Details;
|
||||
this.listViewSessions.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listViewSessions_ItemSelectionChanged);
|
||||
//
|
||||
// toolStripSeparator14
|
||||
// columnHeaderCounter
|
||||
//
|
||||
this.toolStripSeparator14.Name = "toolStripSeparator14";
|
||||
this.toolStripSeparator14.Size = new System.Drawing.Size(184, 6);
|
||||
this.columnHeaderCounter.Text = "#";
|
||||
this.columnHeaderCounter.Width = 54;
|
||||
//
|
||||
// columnHeaderProtocol
|
||||
//
|
||||
this.columnHeaderProtocol.Text = "Protocol";
|
||||
this.columnHeaderProtocol.Width = 59;
|
||||
//
|
||||
// columnHeaderType
|
||||
//
|
||||
this.columnHeaderType.Text = "Packet Type";
|
||||
this.columnHeaderType.Width = 151;
|
||||
//
|
||||
// columnHeaderSize
|
||||
//
|
||||
this.columnHeaderSize.Text = "Bytes";
|
||||
this.columnHeaderSize.Width = 64;
|
||||
//
|
||||
// columnHeaderUrl
|
||||
//
|
||||
this.columnHeaderUrl.Text = "Host/Address";
|
||||
this.columnHeaderUrl.Width = 312;
|
||||
//
|
||||
// columnHeaderContentType
|
||||
//
|
||||
this.columnHeaderContentType.Text = "Content Type";
|
||||
this.columnHeaderContentType.Width = 250;
|
||||
//
|
||||
// listViewPacketFilters
|
||||
//
|
||||
this.listViewPacketFilters.CheckBoxes = true;
|
||||
this.listViewPacketFilters.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeaderPacketName,
|
||||
this.columnHeaderPacketType});
|
||||
this.listViewPacketFilters.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.listViewPacketFilters.FullRowSelect = true;
|
||||
this.listViewPacketFilters.GridLines = true;
|
||||
this.listViewPacketFilters.Location = new System.Drawing.Point(3, 16);
|
||||
this.listViewPacketFilters.MultiSelect = false;
|
||||
this.listViewPacketFilters.Name = "listViewPacketFilters";
|
||||
this.listViewPacketFilters.Size = new System.Drawing.Size(286, 338);
|
||||
this.listViewPacketFilters.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.listViewPacketFilters.TabIndex = 0;
|
||||
this.listViewPacketFilters.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewPacketFilters.View = System.Windows.Forms.View.Details;
|
||||
this.listViewPacketFilters.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listViewPacketFilters_ItemChecked);
|
||||
this.listViewPacketFilters.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listViewFilterSorter_ColumnClick);
|
||||
//
|
||||
// columnHeaderPacketName
|
||||
//
|
||||
this.columnHeaderPacketName.Text = "Packet Name";
|
||||
this.columnHeaderPacketName.Width = 215;
|
||||
//
|
||||
// columnHeaderPacketType
|
||||
//
|
||||
this.columnHeaderPacketType.Text = "Type";
|
||||
//
|
||||
// listViewMessageFilters
|
||||
//
|
||||
this.listViewMessageFilters.CheckBoxes = true;
|
||||
this.listViewMessageFilters.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeaderName,
|
||||
this.columnHeaderMessageType});
|
||||
this.listViewMessageFilters.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.listViewMessageFilters.FullRowSelect = true;
|
||||
this.listViewMessageFilters.GridLines = true;
|
||||
this.listViewMessageFilters.Location = new System.Drawing.Point(3, 16);
|
||||
this.listViewMessageFilters.MultiSelect = false;
|
||||
this.listViewMessageFilters.Name = "listViewMessageFilters";
|
||||
this.listViewMessageFilters.Size = new System.Drawing.Size(284, 338);
|
||||
this.listViewMessageFilters.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.listViewMessageFilters.TabIndex = 1;
|
||||
this.listViewMessageFilters.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewMessageFilters.View = System.Windows.Forms.View.Details;
|
||||
this.listViewMessageFilters.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listViewMessageFilters_ItemChecked);
|
||||
this.listViewMessageFilters.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listViewFilterSorter_ColumnClick);
|
||||
//
|
||||
// columnHeaderName
|
||||
//
|
||||
this.columnHeaderName.Text = "Message Name";
|
||||
this.columnHeaderName.Width = 181;
|
||||
//
|
||||
// columnHeaderMessageType
|
||||
//
|
||||
this.columnHeaderMessageType.Text = "Type";
|
||||
this.columnHeaderMessageType.Width = 92;
|
||||
//
|
||||
// FormWinGridProxy
|
||||
//
|
||||
@@ -2315,7 +2317,7 @@
|
||||
private System.Windows.Forms.ColorDialog colorDialog1;
|
||||
private System.Windows.Forms.ColumnHeader columnHeaderContentType;
|
||||
private System.Windows.Forms.ComboBox comboBoxListenAddress;
|
||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
|
||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemPlugins;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator14;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -311,7 +311,7 @@ namespace WinGridProxy
|
||||
|
||||
// enable any gui elements
|
||||
toolStripDropDownButton5.Enabled =
|
||||
grpUDPFilters.Enabled = grpCapsFilters.Enabled = IsProxyRunning = true;
|
||||
toolStripMenuItemPlugins.Enabled = grpUDPFilters.Enabled = grpCapsFilters.Enabled = IsProxyRunning = true;
|
||||
button1.Text = "Stop Proxy";
|
||||
|
||||
if (enableStatisticsToolStripMenuItem.Checked && !timer1.Enabled)
|
||||
@@ -321,7 +321,7 @@ namespace WinGridProxy
|
||||
{
|
||||
// stop the proxy
|
||||
proxy.Stop();
|
||||
grpUDPFilters.Enabled = grpCapsFilters.Enabled = IsProxyRunning = false;
|
||||
toolStripMenuItemPlugins.Enabled = grpUDPFilters.Enabled = grpCapsFilters.Enabled = IsProxyRunning = false;
|
||||
button1.Text = "Start Proxy";
|
||||
comboBoxListenAddress.Enabled = textBoxProxyPort.Enabled = comboBoxLoginURL.Enabled = true;
|
||||
|
||||
@@ -760,6 +760,22 @@ namespace WinGridProxy
|
||||
if (openFileDialog2.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
RestoreSavedSettings(openFileDialog2.FileName);
|
||||
if(listViewSessions.Items.Count > 0)
|
||||
{
|
||||
if(MessageBox.Show("Would you like to apply these settings to the currention session list?", "Apply Filter", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
|
||||
{
|
||||
foreach(ListViewItem item in listViewSessions.Items)
|
||||
{
|
||||
ListViewItem found = FindListViewItem(listViewPacketFilters, item.SubItems[2].Text, false);
|
||||
if (found == null)
|
||||
found = FindListViewItem(listViewMessageFilters, item.SubItems[2].Text, false);
|
||||
|
||||
if(found != null && !found.Checked)
|
||||
listViewSessions.Items.Remove(item);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1027,29 +1043,44 @@ namespace WinGridProxy
|
||||
{
|
||||
foreach (object nestedArrayRecord in packetDataObject as Array)
|
||||
{
|
||||
// handle properties
|
||||
foreach (PropertyInfo propertyInfo in nestedArrayRecord.GetType().GetProperties())
|
||||
{
|
||||
if (propertyInfo.GetValue(nestedArrayRecord, null).GetType() == typeof(byte[]))
|
||||
{
|
||||
|
||||
result.AppendFormat("{0, 30}: {1}" + Environment.NewLine,
|
||||
propertyInfo.Name, Utils.BytesToString((byte[])propertyInfo.GetValue(nestedArrayRecord, null)));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// handle fields
|
||||
foreach (FieldInfo packetArrayField in nestedArrayRecord.GetType().GetFields())
|
||||
{
|
||||
if (packetArrayField.GetValue(nestedArrayRecord).GetType() == typeof(System.Byte[]))
|
||||
if (packetArrayField.GetValue(nestedArrayRecord).GetType() == typeof(Byte[]))
|
||||
{
|
||||
result.AppendFormat("{0,30}: {1}" + System.Environment.NewLine,
|
||||
result.AppendFormat("{0,30}: {1}" + Environment.NewLine,
|
||||
packetArrayField.Name,
|
||||
new Color4((byte[])packetArrayField.GetValue(nestedArrayRecord), 0, false).ToString());
|
||||
new Color4((byte[])packetArrayField.GetValue(nestedArrayRecord), 0, false));
|
||||
}
|
||||
else
|
||||
{
|
||||
result.AppendFormat("{0,30}: {1}" + System.Environment.NewLine,
|
||||
result.AppendFormat("{0,30}: {1}" + Environment.NewLine,
|
||||
packetArrayField.Name, packetArrayField.GetValue(nestedArrayRecord));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
// handle non array data blocks
|
||||
foreach (PropertyInfo packetPropertyField in packetField.GetValue(packet).GetType().GetProperties())
|
||||
{
|
||||
// Handle fields named "Data" specifically, this is generally binary data, we'll display it as hex values
|
||||
if (packetPropertyField.PropertyType.Equals(typeof(System.Byte[]))
|
||||
if (packetPropertyField.PropertyType.Equals(typeof(Byte[]))
|
||||
&& packetPropertyField.Name.Equals("Data"))
|
||||
{
|
||||
result.AppendFormat("{0}" + System.Environment.NewLine,
|
||||
@@ -1057,7 +1088,7 @@ namespace WinGridProxy
|
||||
packetPropertyField.Name));
|
||||
}
|
||||
// decode bytes into strings
|
||||
else if (packetPropertyField.PropertyType.Equals(typeof(System.Byte[])))
|
||||
else if (packetPropertyField.PropertyType.Equals(typeof(Byte[])))
|
||||
{
|
||||
// Handle TextureEntry fields specifically
|
||||
if (packetPropertyField.Name.Equals("TextureEntry"))
|
||||
@@ -1080,7 +1111,10 @@ namespace WinGridProxy
|
||||
}
|
||||
else if (bytes.Length == 17)
|
||||
{
|
||||
bbDecoded = String.Format("{0} {1} ({2})", new UUID(bytes, 1).ToString(), bytes[0], (AssetType)bytes[0]);
|
||||
bbDecoded = String.Format("{0} {1} ({2})",
|
||||
new UUID(bytes, 1),
|
||||
bytes[0],
|
||||
(AssetType)bytes[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1539,5 +1573,11 @@ namespace WinGridProxy
|
||||
//listview.BackColor = colorDialog1.Color;
|
||||
}
|
||||
}
|
||||
|
||||
private void toolStripMenuItem1_Click(object sender, EventArgs e)
|
||||
{
|
||||
FormPluginManager pluginManager = new FormPluginManager(proxy.Proxy);
|
||||
pluginManager.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,6 +120,15 @@
|
||||
<metadata name="contextMenuStripSessions.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>524, 17</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStripRemove.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>185, 54</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStripSelect.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 54</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStripMark.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>705, 17</value>
|
||||
</metadata>
|
||||
<metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>309, 17</value>
|
||||
</metadata>
|
||||
@@ -172,21 +181,6 @@
|
||||
BQAD/wUACw==
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="contextMenuStripRemove.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>185, 54</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStripSelect.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 54</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStripMark.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>705, 17</value>
|
||||
</metadata>
|
||||
<metadata name="statusStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>414, 17</value>
|
||||
</metadata>
|
||||
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>116, 17</value>
|
||||
</metadata>
|
||||
<metadata name="statusStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>414, 17</value>
|
||||
</metadata>
|
||||
@@ -212,6 +206,9 @@
|
||||
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="contextMenuStripCopy.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>919, 17</value>
|
||||
</metadata>
|
||||
<data name="EditToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
@@ -229,9 +226,6 @@
|
||||
AAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="contextMenuStripCopy.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>919, 17</value>
|
||||
</metadata>
|
||||
<data name="toolStripDropDownButton5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
|
||||
115
Programs/WinGridProxy/FormPluginManager.Designer.cs
generated
Normal file
115
Programs/WinGridProxy/FormPluginManager.Designer.cs
generated
Normal file
@@ -0,0 +1,115 @@
|
||||
namespace WinGridProxy
|
||||
{
|
||||
partial class FormPluginManager
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
|
||||
this.buttonLoadPlugin = new System.Windows.Forms.Button();
|
||||
this.buttonClose = new System.Windows.Forms.Button();
|
||||
this.listView1 = new System.Windows.Forms.ListView();
|
||||
this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
|
||||
this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// openFileDialog1
|
||||
//
|
||||
this.openFileDialog1.DefaultExt = "dll";
|
||||
this.openFileDialog1.FileName = "openFileDialog1";
|
||||
this.openFileDialog1.Filter = "GridProxy Plugins|*.dll";
|
||||
this.openFileDialog1.Multiselect = true;
|
||||
this.openFileDialog1.Title = "Load GridProxy Plugin";
|
||||
//
|
||||
// buttonLoadPlugin
|
||||
//
|
||||
this.buttonLoadPlugin.Location = new System.Drawing.Point(12, 247);
|
||||
this.buttonLoadPlugin.Name = "buttonLoadPlugin";
|
||||
this.buttonLoadPlugin.Size = new System.Drawing.Size(75, 23);
|
||||
this.buttonLoadPlugin.TabIndex = 0;
|
||||
this.buttonLoadPlugin.Text = "Load";
|
||||
this.buttonLoadPlugin.UseVisualStyleBackColor = true;
|
||||
this.buttonLoadPlugin.Click += new System.EventHandler(this.buttonLoadPlugin_Click);
|
||||
//
|
||||
// buttonClose
|
||||
//
|
||||
this.buttonClose.Location = new System.Drawing.Point(174, 247);
|
||||
this.buttonClose.Name = "buttonClose";
|
||||
this.buttonClose.Size = new System.Drawing.Size(75, 23);
|
||||
this.buttonClose.TabIndex = 3;
|
||||
this.buttonClose.Text = "Close";
|
||||
this.buttonClose.UseVisualStyleBackColor = true;
|
||||
this.buttonClose.Click += new System.EventHandler(this.buttonClose_Click);
|
||||
//
|
||||
// listView1
|
||||
//
|
||||
this.listView1.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.columnHeader1,
|
||||
this.columnHeader2});
|
||||
this.listView1.Location = new System.Drawing.Point(12, 12);
|
||||
this.listView1.Name = "listView1";
|
||||
this.listView1.Size = new System.Drawing.Size(237, 229);
|
||||
this.listView1.TabIndex = 4;
|
||||
this.listView1.UseCompatibleStateImageBehavior = false;
|
||||
this.listView1.View = System.Windows.Forms.View.Details;
|
||||
//
|
||||
// columnHeader1
|
||||
//
|
||||
this.columnHeader1.Text = "Name";
|
||||
this.columnHeader1.Width = 89;
|
||||
//
|
||||
// columnHeader2
|
||||
//
|
||||
this.columnHeader2.Text = "Path";
|
||||
this.columnHeader2.Width = 142;
|
||||
//
|
||||
// FormPluginManager
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.CancelButton = this.buttonClose;
|
||||
this.ClientSize = new System.Drawing.Size(262, 280);
|
||||
this.Controls.Add(this.listView1);
|
||||
this.Controls.Add(this.buttonClose);
|
||||
this.Controls.Add(this.buttonLoadPlugin);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.Name = "FormPluginManager";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "Plugin Manager";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.OpenFileDialog openFileDialog1;
|
||||
private System.Windows.Forms.Button buttonLoadPlugin;
|
||||
private System.Windows.Forms.Button buttonClose;
|
||||
private System.Windows.Forms.ListView listView1;
|
||||
private System.Windows.Forms.ColumnHeader columnHeader1;
|
||||
private System.Windows.Forms.ColumnHeader columnHeader2;
|
||||
}
|
||||
}
|
||||
55
Programs/WinGridProxy/FormPluginManager.cs
Normal file
55
Programs/WinGridProxy/FormPluginManager.cs
Normal file
@@ -0,0 +1,55 @@
|
||||
using System;
|
||||
using System.Windows.Forms;
|
||||
using GridProxy;
|
||||
using System.Reflection;
|
||||
using System.IO;
|
||||
|
||||
namespace WinGridProxy
|
||||
{
|
||||
public partial class FormPluginManager : Form
|
||||
{
|
||||
private ProxyFrame _Frame;
|
||||
public FormPluginManager(ProxyFrame frame)
|
||||
{
|
||||
InitializeComponent();
|
||||
_Frame = frame;
|
||||
}
|
||||
|
||||
private void buttonLoadPlugin_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(openFileDialog1.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
LoadPlugin(openFileDialog1.FileName);
|
||||
}
|
||||
}
|
||||
public void LoadPlugin(string name)
|
||||
{
|
||||
|
||||
Assembly assembly = Assembly.LoadFile(Path.GetFullPath(name));
|
||||
foreach (Type t in assembly.GetTypes())
|
||||
{
|
||||
try
|
||||
{
|
||||
if (t.IsSubclassOf(typeof(ProxyPlugin)))
|
||||
{
|
||||
ConstructorInfo info = t.GetConstructor(new Type[] { typeof(ProxyFrame) });
|
||||
ProxyPlugin plugin = (ProxyPlugin)info.Invoke(new object[] { _Frame });
|
||||
plugin.Init();
|
||||
listView1.Items.Add(new ListViewItem(new []{assembly.ManifestModule.Name, Path.GetFullPath(name)}));
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Console.WriteLine(e.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void buttonClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
123
Programs/WinGridProxy/FormPluginManager.resx
Normal file
123
Programs/WinGridProxy/FormPluginManager.resx
Normal file
@@ -0,0 +1,123 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="openFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
@@ -61,7 +61,7 @@ namespace WinGridProxy
|
||||
private string _ListenIP;
|
||||
private string _LoginURI;
|
||||
|
||||
ProxyFrame Proxy;
|
||||
public ProxyFrame Proxy;
|
||||
|
||||
public ProxyManager(string port, string listenIP, string loginUri)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user