mirror of
https://github.com/zs-yg/kortapp-z.git
synced 2025-12-06 16:10:42 +08:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
48c44ddf58 | ||
|
|
cd3b3f790e | ||
|
|
1d0454ccf9 | ||
|
|
0268e13b56 | ||
|
|
cba6c9eeca | ||
|
|
70a776125a | ||
|
|
f7250dae08 |
47
AppCard.cs
47
AppCard.cs
@@ -13,7 +13,9 @@ namespace AppStore
|
|||||||
{
|
{
|
||||||
private PictureBox iconBox;
|
private PictureBox iconBox;
|
||||||
private Label nameLabel;
|
private Label nameLabel;
|
||||||
|
private Panel namePanel;
|
||||||
private Button downloadBtn;
|
private Button downloadBtn;
|
||||||
|
private Color borderColor = SystemColors.ControlDark;
|
||||||
private static readonly ConcurrentDictionary<string, System.Drawing.Drawing2D.GraphicsPath> PathCache =
|
private static readonly ConcurrentDictionary<string, System.Drawing.Drawing2D.GraphicsPath> PathCache =
|
||||||
new ConcurrentDictionary<string, System.Drawing.Drawing2D.GraphicsPath>();
|
new ConcurrentDictionary<string, System.Drawing.Drawing2D.GraphicsPath>();
|
||||||
|
|
||||||
@@ -27,6 +29,7 @@ namespace AppStore
|
|||||||
// 确保关键对象不为null
|
// 确保关键对象不为null
|
||||||
iconBox = new PictureBox() { SizeMode = PictureBoxSizeMode.StretchImage };
|
iconBox = new PictureBox() { SizeMode = PictureBoxSizeMode.StretchImage };
|
||||||
nameLabel = new Label() { Text = string.Empty };
|
nameLabel = new Label() { Text = string.Empty };
|
||||||
|
namePanel = new Panel();
|
||||||
downloadBtn = new Button() { Text = "下载" };
|
downloadBtn = new Button() { Text = "下载" };
|
||||||
|
|
||||||
// 确保DownloadManager已初始化
|
// 确保DownloadManager已初始化
|
||||||
@@ -57,14 +60,29 @@ namespace AppStore
|
|||||||
iconBox.SizeMode = PictureBoxSizeMode.StretchImage;
|
iconBox.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||||
this.Controls.Add(iconBox);
|
this.Controls.Add(iconBox);
|
||||||
|
|
||||||
// 应用名称
|
// 应用名称 - 使用Panel包裹Label实现边框颜色
|
||||||
|
// namePanel已在构造函数中初始化
|
||||||
|
namePanel.Size = new Size(Width - 20, 40);
|
||||||
|
namePanel.Location = new Point(10, 100);
|
||||||
|
namePanel.Paint += (sender, e) => {
|
||||||
|
ControlPaint.DrawBorder(e.Graphics, namePanel.ClientRectangle,
|
||||||
|
borderColor, ButtonBorderStyle.Solid);
|
||||||
|
};
|
||||||
|
|
||||||
nameLabel = new Label();
|
nameLabel = new Label();
|
||||||
nameLabel.AutoSize = false;
|
nameLabel.Dock = DockStyle.Fill;
|
||||||
nameLabel.Size = new Size(Width - 20, 40);
|
|
||||||
nameLabel.Location = new Point(10, 100);
|
|
||||||
nameLabel.Font = new Font("Microsoft YaHei", 10, FontStyle.Bold);
|
nameLabel.Font = new Font("Microsoft YaHei", 10, FontStyle.Bold);
|
||||||
nameLabel.TextAlign = ContentAlignment.MiddleCenter;
|
nameLabel.TextAlign = ContentAlignment.MiddleCenter;
|
||||||
this.Controls.Add(nameLabel);
|
|
||||||
|
namePanel.Controls.Add(nameLabel);
|
||||||
|
|
||||||
|
// 初始主题设置
|
||||||
|
UpdateLabelTheme();
|
||||||
|
|
||||||
|
// 订阅主题变化事件
|
||||||
|
ThemeManager.ThemeChanged += (theme) => UpdateLabelTheme();
|
||||||
|
|
||||||
|
this.Controls.Add(namePanel);
|
||||||
|
|
||||||
// 下载按钮
|
// 下载按钮
|
||||||
downloadBtn = new Button();
|
downloadBtn = new Button();
|
||||||
@@ -92,6 +110,25 @@ namespace AppStore
|
|||||||
downloadBtn.Visible = ShowDownloadButton;
|
downloadBtn.Visible = ShowDownloadButton;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void UpdateLabelTheme()
|
||||||
|
{
|
||||||
|
if (ThemeManager.CurrentTheme == ThemeManager.ThemeMode.Dark)
|
||||||
|
{
|
||||||
|
nameLabel.BackColor = Color.Black;
|
||||||
|
nameLabel.ForeColor = Color.White;
|
||||||
|
namePanel.BackColor = Color.Black;
|
||||||
|
borderColor = Color.White;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nameLabel.BackColor = Color.White;
|
||||||
|
nameLabel.ForeColor = Color.Black;
|
||||||
|
namePanel.BackColor = Color.White;
|
||||||
|
borderColor = SystemColors.ControlDark;
|
||||||
|
}
|
||||||
|
namePanel.Invalidate(); // 触发重绘
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 初始化卡片边框路径
|
/// 初始化卡片边框路径
|
||||||
/// 使用C++程序计算高性能边框路径并缓存结果
|
/// 使用C++程序计算高性能边框路径并缓存结果
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="help.txt" />
|
<None Include="help.txt" />
|
||||||
|
<None Include="resource\NetWorkManager\*">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</None>
|
||||||
<None Include="resource\*.exe">
|
<None Include="resource\*.exe">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</None>
|
</None>
|
||||||
@@ -33,4 +36,8 @@
|
|||||||
</None>
|
</None>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="ZXing.Net" Version="0.16.8" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
46
MainForm.cs
46
MainForm.cs
@@ -566,6 +566,46 @@ namespace AppStore
|
|||||||
passwordGeneratorCard.UpdateDisplay();
|
passwordGeneratorCard.UpdateDisplay();
|
||||||
flowPanel.Controls.Add(passwordGeneratorCard);
|
flowPanel.Controls.Add(passwordGeneratorCard);
|
||||||
|
|
||||||
|
// 端口检测工具卡片
|
||||||
|
var portCheckerCard = new ToolCard();
|
||||||
|
portCheckerCard.ToolName = "端口检测";
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string iconPath = Path.Combine(Application.StartupPath, "img", "resource", "png", "system_info.png");
|
||||||
|
if (File.Exists(iconPath))
|
||||||
|
{
|
||||||
|
portCheckerCard.ToolIcon = Image.FromFile(iconPath);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
portCheckerCard.ToolIcon = SystemIcons.Shield.ToBitmap();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
portCheckerCard.ToolIcon = SystemIcons.Shield.ToBitmap();
|
||||||
|
}
|
||||||
|
portCheckerCard.ToolCardClicked += (s, e) => {
|
||||||
|
try {
|
||||||
|
string toolPath = Path.Combine(Application.StartupPath, "resource", "NetWorkManager", "NetWorkManager.exe");
|
||||||
|
string absolutePath = Path.GetFullPath(toolPath);
|
||||||
|
if (File.Exists(absolutePath)) {
|
||||||
|
Process.Start(new ProcessStartInfo {
|
||||||
|
FileName = absolutePath,
|
||||||
|
WorkingDirectory = Path.GetDirectoryName(absolutePath)
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
MessageBox.Show($"端口检测工具未找到,请确保已正确安装。路径: {absolutePath}", "错误",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
} catch (Exception ex) {
|
||||||
|
MessageBox.Show($"启动端口检测工具失败: {ex.Message}", "错误",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
portCheckerCard.UpdateDisplay();
|
||||||
|
flowPanel.Controls.Add(portCheckerCard);
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@@ -715,7 +755,7 @@ namespace AppStore
|
|||||||
|
|
||||||
flowPanel.Controls.Add(CreateAppCard(
|
flowPanel.Controls.Add(CreateAppCard(
|
||||||
"XDM",
|
"XDM",
|
||||||
"https://github.com/subhra74/xdm/releases/download/7.2.11/xdm-setup.msi",
|
"https://hub.gitmirror.com/https://github.com/subhra74/xdm/releases/download/7.2.11/xdm-setup.msi",
|
||||||
"img/png/XDM.png"));
|
"img/png/XDM.png"));
|
||||||
|
|
||||||
flowPanel.Controls.Add(CreateAppCard(
|
flowPanel.Controls.Add(CreateAppCard(
|
||||||
@@ -780,7 +820,7 @@ namespace AppStore
|
|||||||
|
|
||||||
flowPanel.Controls.Add(CreateAppCard(
|
flowPanel.Controls.Add(CreateAppCard(
|
||||||
"Msys2",
|
"Msys2",
|
||||||
"https://github.com/msys2/msys2-installer/releases/download/2025-02-21/msys2-x86_64-20250221.exe",
|
"https://hub.gitmirror.com/https://github.com/msys2/msys2-installer/releases/download/2025-02-21/msys2-x86_64-20250221.exe",
|
||||||
"img/png/MSYS2.png"));
|
"img/png/MSYS2.png"));
|
||||||
|
|
||||||
flowPanel.Controls.Add(CreateAppCard(
|
flowPanel.Controls.Add(CreateAppCard(
|
||||||
@@ -880,7 +920,7 @@ namespace AppStore
|
|||||||
|
|
||||||
flowPanel.Controls.Add(CreateAppCard(
|
flowPanel.Controls.Add(CreateAppCard(
|
||||||
"frp",
|
"frp",
|
||||||
"https://github.com/fatedier/frp/releases/download/v0.62.1/frp_0.62.1_windows_amd64.zip",
|
"https://hub.gitmirror.com/https://github.com/fatedier/frp/releases/download/v0.62.1/frp_0.62.1_windows_amd64.zip",
|
||||||
""));
|
""));
|
||||||
|
|
||||||
flowPanel.Controls.Add(CreateAppCard(
|
flowPanel.Controls.Add(CreateAppCard(
|
||||||
|
|||||||
14
README.md
14
README.md
@@ -5,14 +5,12 @@
|
|||||||
## 项目开源行为
|
## 项目开源行为
|
||||||
|
|
||||||
1. 项目代码开源,允许任何人使用、修改、分发、商用,但必须注明原作者。
|
1. 项目代码开源,允许任何人使用、修改、分发、商用,但必须注明原作者。
|
||||||
2. 项目文档开源,允许任何人使用、修改、分发、商用,但必须注明原作者。
|
2. 项目图标、截图等资源开源,允许任何人使用、修改、分发、商用,但必须注明原作者。
|
||||||
3. 项目图标、截图等资源开源,允许任何人使用、修改、分发、商用,但必须注明原作者。
|
3. 项目的任何衍生品(包括但不限于网站、APP、插件等)必须遵循以上开源协议。
|
||||||
4. 项目的任何衍生品(包括但不限于网站、APP、插件等)必须遵循以上开源协议。
|
4. 项目不接受任何形式的广告,不得在任何地方投放广告。
|
||||||
5. 项目不接受任何形式的广告,不得在任何地方投放广告。
|
5. 项目不接受任何形式的捐赠、赞助
|
||||||
6. 项目不接受任何形式的捐赠。
|
6. 项目可以进行PR,欢迎任何形式的PR,不提交issue也可以
|
||||||
7. 项目不接受任何形式的赞助。
|
7. 本项目可以PR一些你自己的项目,如果star数量不到1k,都会被删除
|
||||||
8. 项目可以进行PR,欢迎任何形式的PR,不提交issue也可以
|
|
||||||
9. 本项目可以PR一些你自己的项目,如果star数量不到1k,都会被删除
|
|
||||||
|
|
||||||
## 项目简介
|
## 项目简介
|
||||||
|
|
||||||
|
|||||||
46
ToolCard.cs
46
ToolCard.cs
@@ -8,6 +8,8 @@ namespace AppStore
|
|||||||
{
|
{
|
||||||
private PictureBox iconBox = new PictureBox();
|
private PictureBox iconBox = new PictureBox();
|
||||||
private Label nameLabel = new Label();
|
private Label nameLabel = new Label();
|
||||||
|
private Panel namePanel = new Panel();
|
||||||
|
private Color borderColor = SystemColors.ControlDark;
|
||||||
|
|
||||||
public string ToolName { get; set; } = string.Empty;
|
public string ToolName { get; set; } = string.Empty;
|
||||||
public Image ToolIcon { get; set; } = SystemIcons.Shield.ToBitmap();
|
public Image ToolIcon { get; set; } = SystemIcons.Shield.ToBitmap();
|
||||||
@@ -37,14 +39,28 @@ namespace AppStore
|
|||||||
iconBox.SizeMode = PictureBoxSizeMode.StretchImage;
|
iconBox.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||||
this.Controls.Add(iconBox);
|
this.Controls.Add(iconBox);
|
||||||
|
|
||||||
// 工具名称
|
// 工具名称 - 使用Panel包裹Label实现边框颜色
|
||||||
|
namePanel = new Panel();
|
||||||
|
namePanel.Size = new Size(Width - 20, 30);
|
||||||
|
namePanel.Location = new Point(10, 100);
|
||||||
|
namePanel.Paint += (sender, e) => {
|
||||||
|
ControlPaint.DrawBorder(e.Graphics, namePanel.ClientRectangle,
|
||||||
|
borderColor, ButtonBorderStyle.Solid);
|
||||||
|
};
|
||||||
|
|
||||||
nameLabel = new Label();
|
nameLabel = new Label();
|
||||||
nameLabel.AutoSize = false;
|
nameLabel.Dock = DockStyle.Fill;
|
||||||
nameLabel.Size = new Size(Width - 20, 30);
|
|
||||||
nameLabel.Location = new Point(10, 100);
|
|
||||||
nameLabel.Font = new Font("Microsoft YaHei", 10, FontStyle.Bold);
|
nameLabel.Font = new Font("Microsoft YaHei", 10, FontStyle.Bold);
|
||||||
nameLabel.TextAlign = ContentAlignment.MiddleCenter;
|
nameLabel.TextAlign = ContentAlignment.MiddleCenter;
|
||||||
this.Controls.Add(nameLabel);
|
namePanel.Controls.Add(nameLabel);
|
||||||
|
|
||||||
|
// 初始主题设置
|
||||||
|
UpdateLabelTheme();
|
||||||
|
|
||||||
|
// 订阅主题变化事件
|
||||||
|
ThemeManager.ThemeChanged += (theme) => UpdateLabelTheme();
|
||||||
|
|
||||||
|
this.Controls.Add(namePanel);
|
||||||
|
|
||||||
// 打开按钮
|
// 打开按钮
|
||||||
var openButton = new Button();
|
var openButton = new Button();
|
||||||
@@ -68,10 +84,30 @@ namespace AppStore
|
|||||||
openButton.FlatAppearance.MouseDownBackColor = Color.FromArgb(0, 80, 160);
|
openButton.FlatAppearance.MouseDownBackColor = Color.FromArgb(0, 80, 160);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void UpdateLabelTheme()
|
||||||
|
{
|
||||||
|
if (ThemeManager.CurrentTheme == ThemeManager.ThemeMode.Dark)
|
||||||
|
{
|
||||||
|
nameLabel.BackColor = Color.Black;
|
||||||
|
nameLabel.ForeColor = Color.White;
|
||||||
|
namePanel.BackColor = Color.Black;
|
||||||
|
borderColor = Color.White;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nameLabel.BackColor = Color.White;
|
||||||
|
nameLabel.ForeColor = Color.Black;
|
||||||
|
namePanel.BackColor = Color.White;
|
||||||
|
borderColor = SystemColors.ControlDark;
|
||||||
|
}
|
||||||
|
namePanel.Invalidate(); // 触发重绘
|
||||||
|
}
|
||||||
|
|
||||||
public void UpdateDisplay()
|
public void UpdateDisplay()
|
||||||
{
|
{
|
||||||
nameLabel.Text = ToolName;
|
nameLabel.Text = ToolName;
|
||||||
iconBox.Image = ToolIcon;
|
iconBox.Image = ToolIcon;
|
||||||
|
UpdateLabelTheme();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
; 有关创建 Inno Setup 脚本文件的详细信息,请参阅帮助文档!
|
; 有关创建 Inno Setup 脚本文件的详细信息,请参阅帮助文档!
|
||||||
|
|
||||||
#define MyAppName "kortapp-z"
|
#define MyAppName "kortapp-z"
|
||||||
#define MyAppVersion "1.1.1"
|
#define MyAppVersion "1.1.2"
|
||||||
#define MyAppPublisher "zsyg"
|
#define MyAppPublisher "zsyg"
|
||||||
#define MyAppURL "https://github.com/zs-yg/kortapp-z"
|
#define MyAppURL "https://github.com/zs-yg/kortapp-z"
|
||||||
#define MyAppExeName "kortapp.exe"
|
#define MyAppExeName "kortapp.exe"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
; 有关创建 Inno Setup 脚本文件的详细信息,请参阅帮助文档!
|
; 有关创建 Inno Setup 脚本文件的详细信息,请参阅帮助文档!
|
||||||
|
|
||||||
#define MyAppName "kortapp-z"
|
#define MyAppName "kortapp-z"
|
||||||
#define MyAppVersion "1.1.1"
|
#define MyAppVersion "1.1.2"
|
||||||
#define MyAppPublisher "zsyg"
|
#define MyAppPublisher "zsyg"
|
||||||
#define MyAppURL "https://github.com/zs-yg/kortapp-z"
|
#define MyAppURL "https://github.com/zs-yg/kortapp-z"
|
||||||
#define MyAppExeName "kortapp.exe"
|
#define MyAppExeName "kortapp.exe"
|
||||||
|
|||||||
1572
resource/NetWorkManager/DevExpress.Data.Desktop.v24.1.xml
Normal file
1572
resource/NetWorkManager/DevExpress.Data.Desktop.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
21379
resource/NetWorkManager/DevExpress.Data.v24.1.xml
Normal file
21379
resource/NetWorkManager/DevExpress.Data.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
4552
resource/NetWorkManager/DevExpress.Drawing.v24.1.xml
Normal file
4552
resource/NetWorkManager/DevExpress.Drawing.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
2163
resource/NetWorkManager/DevExpress.Office.v24.1.Core.xml
Normal file
2163
resource/NetWorkManager/DevExpress.Office.v24.1.Core.xml
Normal file
File diff suppressed because it is too large
Load Diff
13655
resource/NetWorkManager/DevExpress.Pdf.v24.1.Core.xml
Normal file
13655
resource/NetWorkManager/DevExpress.Pdf.v24.1.Core.xml
Normal file
File diff suppressed because it is too large
Load Diff
1812
resource/NetWorkManager/DevExpress.Pdf.v24.1.Drawing.xml
Normal file
1812
resource/NetWorkManager/DevExpress.Pdf.v24.1.Drawing.xml
Normal file
File diff suppressed because it is too large
Load Diff
27835
resource/NetWorkManager/DevExpress.Printing.v24.1.Core.xml
Normal file
27835
resource/NetWorkManager/DevExpress.Printing.v24.1.Core.xml
Normal file
File diff suppressed because it is too large
Load Diff
41663
resource/NetWorkManager/DevExpress.RichEdit.v24.1.Core.xml
Normal file
41663
resource/NetWorkManager/DevExpress.RichEdit.v24.1.Core.xml
Normal file
File diff suppressed because it is too large
Load Diff
451
resource/NetWorkManager/DevExpress.Sparkline.v24.1.Core.xml
Normal file
451
resource/NetWorkManager/DevExpress.Sparkline.v24.1.Core.xml
Normal file
@@ -0,0 +1,451 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<doc>
|
||||||
|
<assembly>
|
||||||
|
<name>DevExpress.Sparkline.v24.1.Core</name>
|
||||||
|
</assembly>
|
||||||
|
<members>
|
||||||
|
<member name="N:DevExpress.Sparkline">
|
||||||
|
<summary>
|
||||||
|
<para>Contains classes required for DevExpress sparklines.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.AreaSparklineView">
|
||||||
|
<summary>
|
||||||
|
<para>The Area sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.AreaSparklineView.#ctor">
|
||||||
|
<summary>
|
||||||
|
<para>Initializes a new instance of the <see cref="T:DevExpress.Sparkline.AreaSparklineView"/> class with the default settings.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.AreaSparklineView.AreaOpacity">
|
||||||
|
<summary>
|
||||||
|
<para>Specifies the opacity (0-255) of the area sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Byte"/> value from 0 (transparent) to 255 (opaque).</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.AreaSparklineView.Assign(DevExpress.Sparkline.SparklineViewBase)">
|
||||||
|
<summary>
|
||||||
|
<para>Copies all the settings from the <see cref="T:DevExpress.Sparkline.AreaSparklineView"/> object passed as the parameter.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">A <see cref="T:DevExpress.Sparkline.AreaSparklineView"/> object (which is the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> descendant) whose settings are assigned to the current object. If null (Nothing in Visual Basic), then a <see cref="T:System.ArgumentNullException"/> will be thrown.</param>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.AreaSparklineView.Type">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the type of the sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
<value>Always <see cref="F:DevExpress.Sparkline.SparklineViewType.Area">SparklineViewType.Area</see>.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.AreaSparklineView.Visit(DevExpress.Sparkline.ISparklineViewVisitor)">
|
||||||
|
<summary>
|
||||||
|
<para>Invokes the Visit method of the specified visitor for the current <see cref="T:DevExpress.Sparkline.AreaSparklineView"/> object.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="visitor">An object implementing the <see cref="T:DevExpress.Sparkline.ISparklineViewVisitor"/> interface.</param>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.BarSparklineView">
|
||||||
|
<summary>
|
||||||
|
<para>The Bar sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.BarSparklineView.#ctor">
|
||||||
|
<summary>
|
||||||
|
<para>Initializes a new instance of the <see cref="T:DevExpress.Sparkline.BarSparklineView"/> class with the default settings.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.BarSparklineView.Type">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the type of the sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
<value>Always <see cref="F:DevExpress.Sparkline.SparklineViewType.Bar">SparklineViewType.Bar</see>.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.BarSparklineView.Visit(DevExpress.Sparkline.ISparklineViewVisitor)">
|
||||||
|
<summary>
|
||||||
|
<para>Invokes the Visit method of the specified visitor for the current <see cref="T:DevExpress.Sparkline.BarSparklineView"/> object.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="visitor">An object implementing the <see cref="T:DevExpress.Sparkline.ISparklineViewVisitor"/> interface.</param>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.BarSparklineViewBase">
|
||||||
|
<summary>
|
||||||
|
<para>The base for Bar and WinLoss sparkline views.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.BarSparklineViewBase.Assign(DevExpress.Sparkline.SparklineViewBase)">
|
||||||
|
<summary>
|
||||||
|
<para>Copies all the settings from the <see cref="T:DevExpress.Sparkline.BarSparklineViewBase"/> object passed as the parameter.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">A <see cref="T:DevExpress.Sparkline.BarSparklineViewBase"/> object (which is the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> descendant) whose settings are assigned to the current object. If null (Nothing in Visual Basic), then a <see cref="T:System.ArgumentNullException"/> will be thrown.</param>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.BarSparklineViewBase.BarDistance">
|
||||||
|
<summary>
|
||||||
|
<para>Specifies the distance between two bars of a bar sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value (in pixels).</value>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.ISparklineViewVisitor">
|
||||||
|
<summary>
|
||||||
|
<para>Interface implementing the Visitor pattern.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.ISparklineViewVisitor.Visit(DevExpress.Sparkline.AreaSparklineView)">
|
||||||
|
<summary>
|
||||||
|
<para>Performs the operation as required by the Visitor and the View, as defined in the Visitor pattern.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">An <see cref="T:DevExpress.Sparkline.AreaSparklineView"/> object for which the operation is performed.</param>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.ISparklineViewVisitor.Visit(DevExpress.Sparkline.BarSparklineView)">
|
||||||
|
<summary>
|
||||||
|
<para>Performs the operation as required by the Visitor and the View, as defined in the Visitor pattern.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">An <see cref="T:DevExpress.Sparkline.BarSparklineView"/> object for which the operation is performed.</param>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.ISparklineViewVisitor.Visit(DevExpress.Sparkline.LineSparklineView)">
|
||||||
|
<summary>
|
||||||
|
<para>Performs the operation as required by the Visitor and the View, as defined in the Visitor pattern.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">An <see cref="T:DevExpress.Sparkline.LineSparklineView"/> object for which the operation is performed.</param>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.ISparklineViewVisitor.Visit(DevExpress.Sparkline.WinLossSparklineView)">
|
||||||
|
<summary>
|
||||||
|
<para>Performs the operation as required by the Visitor and the View, as defined in the Visitor pattern.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">An <see cref="T:DevExpress.Sparkline.WinLossSparklineView"/> object for which the operation is performed.</param>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.LineSparklineView">
|
||||||
|
<summary>
|
||||||
|
<para>The Line sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.LineSparklineView.#ctor">
|
||||||
|
<summary>
|
||||||
|
<para>Initializes a new instance of the <see cref="T:DevExpress.Sparkline.LineSparklineView"/> class with the default settings.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.ActualMarkerColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of a sparkline marker.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual marker color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.LineSparklineView.Assign(DevExpress.Sparkline.SparklineViewBase)">
|
||||||
|
<summary>
|
||||||
|
<para>Copies all the settings from the <see cref="T:DevExpress.Sparkline.LineSparklineView"/> object passed as the parameter.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">A <see cref="T:DevExpress.Sparkline.LineSparklineView"/> object (which is the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> descendant) whose settings are assigned to the current object. If null (Nothing in Visual Basic), then a <see cref="T:System.ArgumentNullException"/> will be thrown.</param>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.EnableAntialiasing">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets whether anti-aliasing (smoothing) is applied to the line view.</para>
|
||||||
|
</summary>
|
||||||
|
<value>True to apply anti-aliasing to the line view; False to disable anti-aliasing.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.EndPointMarkerSize">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the size of an end point’s marker.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the marker size, in pixels.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.LineWidth">
|
||||||
|
<summary>
|
||||||
|
<para>Specifies the width of a line in a <see cref="T:DevExpress.Sparkline.LineSparklineView"/>.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the line width (in pixels).</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.MarkerColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw line markers.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw line markers.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.MarkerSize">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the size of markers for data points in a line sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the marker size, in pixels.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.MaxPointMarkerSize">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the marker size of a data point that has the maximum value among all data points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the marker size, in pixels.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.MinPointMarkerSize">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the marker size of a data point that has the minimum value among all data points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the marker size, in pixels.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.NegativePointMarkerSize">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the marker size of all data points that have negative values (less than 0).</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the marker size, in pixels.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.LineSparklineView.SetSizeForAllMarkers(System.Int32)">
|
||||||
|
<summary>
|
||||||
|
<para>Sets size for all markers of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="markerSize">An integer value specifying the new size for sparkline markers (in pixels).</param>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.ShowMarkers">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying the visibility of point markers on a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true to show markers for each data point; false to hide them.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.StartPointMarkerSize">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the size of a start point’s marker.</para>
|
||||||
|
</summary>
|
||||||
|
<value>An integer value specifying the marker size, in pixels.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.LineSparklineView.Type">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the type of the sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
<value>Always <see cref="F:DevExpress.Sparkline.SparklineViewType.Line">SparklineViewType.Line</see>.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.LineSparklineView.Visit(DevExpress.Sparkline.ISparklineViewVisitor)">
|
||||||
|
<summary>
|
||||||
|
<para>Invokes the Visit method of the specified visitor for the current <see cref="T:DevExpress.Sparkline.LineSparklineView"/> object.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="visitor">An object implementing the <see cref="T:DevExpress.Sparkline.ISparklineViewVisitor"/> interface.</param>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.SparklineRange">
|
||||||
|
<summary>
|
||||||
|
<para>Represents a range to be used in DevExpress Sparkline controls.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineRange.#ctor">
|
||||||
|
<summary>
|
||||||
|
<para>Initializes a new instance of the <see cref="T:DevExpress.Sparkline.SparklineRange"/> class with the default settings.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineRange.#ctor(System.Double,System.Double)">
|
||||||
|
<summary>
|
||||||
|
<para>Initializes a new instance of the <see cref="T:DevExpress.Sparkline.SparklineRange"/> class with the specified minimum and maximum limits.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="min">A <see cref="T:System.Double"/> value, specifying the minimum limit. This value is assigned to the <see cref="P:DevExpress.Sparkline.SparklineRange.Limit1">SparklineRange.Limit1</see> property.</param>
|
||||||
|
<param name="max">A <see cref="T:System.Double"/> value, specifying the maximum limit. This value is assigned to the <see cref="P:DevExpress.Sparkline.SparklineRange.Limit2">SparklineRange.Limit2</see> property.</param>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineRange.IsAuto">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value indicating whether or not range limits should be calculated automatically.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true to calculate range limits automatically; false to use the <see cref="P:DevExpress.Sparkline.SparklineRange.Limit1">SparklineRange.Limit1</see> and <see cref="P:DevExpress.Sparkline.SparklineRange.Limit2">SparklineRange.Limit2</see> property values.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineRange.Limit1">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying the first limit of the range.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Double"/> value that specifies the first limit.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineRange.Limit2">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying the second limit of the range.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Double"/> value that specifies the second limit.</value>
|
||||||
|
</member>
|
||||||
|
<member name="E:DevExpress.Sparkline.SparklineRange.PropertiesChanged">
|
||||||
|
<summary>
|
||||||
|
<para>This event is hidden, because it is not appropriate for the <see cref="T:DevExpress.Sparkline.SparklineRange"/> class.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineRange.ToString">
|
||||||
|
<summary>
|
||||||
|
<para>Returns the textual representation of the <see cref="T:DevExpress.Sparkline.SparklineRange"/>.</para>
|
||||||
|
</summary>
|
||||||
|
<returns>A <see cref="T:System.String"/> value which is the textual representation of the <see cref="T:DevExpress.Sparkline.SparklineRange"/>.</returns>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.SparklineViewBase">
|
||||||
|
<summary>
|
||||||
|
<para>The base class for sparkline views.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.ActualColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual sparkline color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.ActualEndPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of a sparkline end point.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual point color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.ActualMaxPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of a sparkline maximum point.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual point color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.ActualMinPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of a sparkline minimum point.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual point color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.ActualNegativePointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of sparkline negative points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual point color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.ActualStartPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the actual color of a sparkline start point.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> value that is the actual point color.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineViewBase.Assign(DevExpress.Sparkline.SparklineViewBase)">
|
||||||
|
<summary>
|
||||||
|
<para>Copies all the settings from the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> object passed as the parameter.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="view">A <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> object (which is the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> descendant) whose settings are assigned to the current object. If null (Nothing in Visual Basic), then a <see cref="T:System.ArgumentNullException"/> will be thrown.</param>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.Color">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw a sparkline.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineViewBase.CreateView(DevExpress.Sparkline.SparklineViewType)">
|
||||||
|
<summary>
|
||||||
|
<para>Creates a sparkline view of the specified type.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="viewType">A <see cref="T:DevExpress.Sparkline.SparklineViewType"/> enumeration value specifying the type of view to create.</param>
|
||||||
|
<returns>A <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> class descendant.</returns>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.EndPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw the end point of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw the end point.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.HighlightEndPoint">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying whether or not to highlight the end point of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true, to highlight the end point; otherwise, false.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.HighlightMaxPoint">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying whether or not to highlight a sparkline point that has the highest value among all points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true, to highlight a point with the maximum value; otherwise, false.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.HighlightMinPoint">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying whether or not to highlight a sparkline point that has the lowest value among all points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true, to highlight a point with the minimum value; otherwise, false.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.HighlightNegativePoints">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the value that specifies whether to highlight the negative points of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true to highlight the negative points; otherwise, `false``.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.HighlightStartPoint">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets a value specifying whether or not to highlight the start point of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>true, to highlight the start point; otherwise, false.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.MaxPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw a sparkline point that has the highest value among all data points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw a data point with the maximum value.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.MinPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw a sparkline point that has the lowest value among all data points.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw a data point with the minimum value.</value>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.NegativePointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw sparkline points that have negative values (less than 0).</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw data points with negative values.</value>
|
||||||
|
</member>
|
||||||
|
<member name="E:DevExpress.Sparkline.SparklineViewBase.PropertiesChanged">
|
||||||
|
<summary>
|
||||||
|
<para>Occurs when any property of the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> object has changed its value.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.StartPointColor">
|
||||||
|
<summary>
|
||||||
|
<para>Gets or sets the color to draw the start point of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:System.Drawing.Color"/> that defines the color to draw the start point.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineViewBase.ToString">
|
||||||
|
<summary>
|
||||||
|
<para>Returns a human-readable string that represents the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> object.</para>
|
||||||
|
</summary>
|
||||||
|
<returns>A <see cref="T:System.String"/> value that represents the <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> object.</returns>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.SparklineViewBase.Type">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the type of the sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
<value>A <see cref="T:DevExpress.Sparkline.SparklineViewType"/> enumeration value specifying the view type.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.SparklineViewBase.Visit(DevExpress.Sparkline.ISparklineViewVisitor)">
|
||||||
|
<summary>
|
||||||
|
<para>Invokes the Visit method of the specified visitor for the current <see cref="T:DevExpress.Sparkline.SparklineViewBase"/> object.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="visitor">An object implementing the <see cref="T:DevExpress.Sparkline.ISparklineViewVisitor"/> interface.</param>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.SparklineViewType">
|
||||||
|
<summary>
|
||||||
|
<para>Lists the values used to specify the available view types of a sparkline.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:DevExpress.Sparkline.SparklineViewType.Area">
|
||||||
|
<summary>
|
||||||
|
<para>Sparkline data points are represented as area.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:DevExpress.Sparkline.SparklineViewType.Bar">
|
||||||
|
<summary>
|
||||||
|
<para>Sparkline data points are represented as bars.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:DevExpress.Sparkline.SparklineViewType.Line">
|
||||||
|
<summary>
|
||||||
|
<para>Sparkline data points are represented as a line.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:DevExpress.Sparkline.SparklineViewType.WinLoss">
|
||||||
|
<summary>
|
||||||
|
<para>Sparkline data points are represented as win and loss squares.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:DevExpress.Sparkline.WinLossSparklineView">
|
||||||
|
<summary>
|
||||||
|
<para>The WinLoss sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.WinLossSparklineView.#ctor">
|
||||||
|
<summary>
|
||||||
|
<para>Initializes a new instance of the <see cref="T:DevExpress.Sparkline.WinLossSparklineView"/> class with the default settings.</para>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:DevExpress.Sparkline.WinLossSparklineView.Type">
|
||||||
|
<summary>
|
||||||
|
<para>Gets the type of the sparkline view.</para>
|
||||||
|
</summary>
|
||||||
|
<value>Always <see cref="F:DevExpress.Sparkline.SparklineViewType.WinLoss">SparklineViewType.WinLoss</see>.</value>
|
||||||
|
</member>
|
||||||
|
<member name="M:DevExpress.Sparkline.WinLossSparklineView.Visit(DevExpress.Sparkline.ISparklineViewVisitor)">
|
||||||
|
<summary>
|
||||||
|
<para>Invokes the Visit method of the specified visitor for the current <see cref="T:DevExpress.Sparkline.WinLossSparklineView"/> object.</para>
|
||||||
|
</summary>
|
||||||
|
<param name="visitor">An object implementing the <see cref="T:DevExpress.Sparkline.ISparklineViewVisitor"/> interface.</param>
|
||||||
|
</member>
|
||||||
|
</members>
|
||||||
|
</doc>
|
||||||
19418
resource/NetWorkManager/DevExpress.Utils.v24.1.xml
Normal file
19418
resource/NetWorkManager/DevExpress.Utils.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
37401
resource/NetWorkManager/DevExpress.XtraBars.v24.1.xml
Normal file
37401
resource/NetWorkManager/DevExpress.XtraBars.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
40194
resource/NetWorkManager/DevExpress.XtraEditors.v24.1.xml
Normal file
40194
resource/NetWorkManager/DevExpress.XtraEditors.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
24576
resource/NetWorkManager/DevExpress.XtraGrid.v24.1.xml
Normal file
24576
resource/NetWorkManager/DevExpress.XtraGrid.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
6209
resource/NetWorkManager/DevExpress.XtraLayout.v24.1.xml
Normal file
6209
resource/NetWorkManager/DevExpress.XtraLayout.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
2841
resource/NetWorkManager/DevExpress.XtraPrinting.v24.1.xml
Normal file
2841
resource/NetWorkManager/DevExpress.XtraPrinting.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
11062
resource/NetWorkManager/DevExpress.XtraTreeList.v24.1.xml
Normal file
11062
resource/NetWorkManager/DevExpress.XtraTreeList.v24.1.xml
Normal file
File diff suppressed because it is too large
Load Diff
22
tools/NetWorkManager/NetWorkManager.sln
Normal file
22
tools/NetWorkManager/NetWorkManager.sln
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 17
|
||||||
|
VisualStudioVersion = 17.11.35327.3
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NetWorkManager", "NetWorkManager\NetWorkManager.csproj", "{25900669-2872-4F11-9516-763C420E2B96}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{25900669-2872-4F11-9516-763C420E2B96}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{25900669-2872-4F11-9516-763C420E2B96}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{25900669-2872-4F11-9516-763C420E2B96}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{25900669-2872-4F11-9516-763C420E2B96}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
21
tools/NetWorkManager/NetWorkManager/App.config
Normal file
21
tools/NetWorkManager/NetWorkManager/App.config
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<configuration>
|
||||||
|
<configSections>
|
||||||
|
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System">
|
||||||
|
<section name="DevExpress.LookAndFeel.Design.AppSettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||||
|
</sectionGroup>
|
||||||
|
</configSections>
|
||||||
|
<applicationSettings>
|
||||||
|
<DevExpress.LookAndFeel.Design.AppSettings>
|
||||||
|
<setting name="DPIAwarenessMode" serializeAs="String">
|
||||||
|
<value>System</value>
|
||||||
|
</setting>
|
||||||
|
<setting name="RegisterBonusSkins" serializeAs="String">
|
||||||
|
<value>True</value>
|
||||||
|
</setting>
|
||||||
|
</DevExpress.LookAndFeel.Design.AppSettings>
|
||||||
|
</applicationSettings>
|
||||||
|
<startup>
|
||||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
|
||||||
|
</startup>
|
||||||
|
</configuration>
|
||||||
3
tools/NetWorkManager/NetWorkManager/FodyWeavers.xml
Normal file
3
tools/NetWorkManager/NetWorkManager/FodyWeavers.xml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
|
||||||
|
<Costura />
|
||||||
|
</Weavers>
|
||||||
141
tools/NetWorkManager/NetWorkManager/FodyWeavers.xsd
Normal file
141
tools/NetWorkManager/NetWorkManager/FodyWeavers.xsd
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||||
|
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
|
||||||
|
<xs:element name="Weavers">
|
||||||
|
<xs:complexType>
|
||||||
|
<xs:all>
|
||||||
|
<xs:element name="Costura" minOccurs="0" maxOccurs="1">
|
||||||
|
<xs:complexType>
|
||||||
|
<xs:all>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="IncludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="IncludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged32Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged64Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="PreloadOrder" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>The order of preloaded assemblies, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
</xs:all>
|
||||||
|
<xs:attribute name="CreateTemporaryAssemblies" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>This will copy embedded files to disk before loading them into memory. This is helpful for some scenarios that expected an assembly to be loaded from a physical file.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeDebugSymbols" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls if .pdbs for reference assemblies are also embedded.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeRuntimeReferences" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls if runtime assemblies are also embedded.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="UseRuntimeReferencePaths" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls whether the runtime assemblies are embedded with their full path or only with their assembly name.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="DisableCompression" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="DisableCleanup" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="LoadAtModuleInit" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IgnoreSatelliteAssemblies" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Costura will by default use assemblies with a name like 'resources.dll' as a satellite resource and prepend the output path. This flag disables that behavior.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="ExcludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="Unmanaged32Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="Unmanaged64Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="PreloadOrder" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>The order of preloaded assemblies, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
</xs:complexType>
|
||||||
|
</xs:element>
|
||||||
|
</xs:all>
|
||||||
|
<xs:attribute name="VerifyAssembly" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="GenerateXsd" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
</xs:complexType>
|
||||||
|
</xs:element>
|
||||||
|
</xs:schema>
|
||||||
175
tools/NetWorkManager/NetWorkManager/Form1.Designer.cs
generated
Normal file
175
tools/NetWorkManager/NetWorkManager/Form1.Designer.cs
generated
Normal file
@@ -0,0 +1,175 @@
|
|||||||
|
namespace NetWorkManager
|
||||||
|
{
|
||||||
|
partial class Form1
|
||||||
|
{
|
||||||
|
/// <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 Component 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.gridControl = new DevExpress.XtraGrid.GridControl();
|
||||||
|
this.gridView = new DevExpress.XtraGrid.Views.Grid.GridView();
|
||||||
|
this.ribbonControl = new DevExpress.XtraBars.Ribbon.RibbonControl();
|
||||||
|
this.bsiRecordsCount = new DevExpress.XtraBars.BarStaticItem();
|
||||||
|
this.bbiDelete = new DevExpress.XtraBars.BarButtonItem();
|
||||||
|
this.bbiRefresh = new DevExpress.XtraBars.BarButtonItem();
|
||||||
|
this.ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage();
|
||||||
|
this.ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
|
||||||
|
this.ribbonStatusBar = new DevExpress.XtraBars.Ribbon.RibbonStatusBar();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.gridControl)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.gridView)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// gridControl
|
||||||
|
//
|
||||||
|
this.gridControl.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.gridControl.EmbeddedNavigator.Margin = new System.Windows.Forms.Padding(4);
|
||||||
|
this.gridControl.Location = new System.Drawing.Point(0, 231);
|
||||||
|
this.gridControl.MainView = this.gridView;
|
||||||
|
this.gridControl.Margin = new System.Windows.Forms.Padding(4);
|
||||||
|
this.gridControl.MenuManager = this.ribbonControl;
|
||||||
|
this.gridControl.Name = "gridControl";
|
||||||
|
this.gridControl.Size = new System.Drawing.Size(1448, 839);
|
||||||
|
this.gridControl.TabIndex = 2;
|
||||||
|
this.gridControl.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
|
||||||
|
this.gridView});
|
||||||
|
this.gridControl.Click += new System.EventHandler(this.gridControl_Click);
|
||||||
|
this.gridControl.MouseClick += new System.Windows.Forms.MouseEventHandler(this.gridControl_MouseClick);
|
||||||
|
//
|
||||||
|
// gridView
|
||||||
|
//
|
||||||
|
this.gridView.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
|
||||||
|
this.gridView.DetailHeight = 512;
|
||||||
|
this.gridView.GridControl = this.gridControl;
|
||||||
|
this.gridView.Name = "gridView";
|
||||||
|
this.gridView.OptionsBehavior.Editable = false;
|
||||||
|
this.gridView.OptionsBehavior.ReadOnly = true;
|
||||||
|
this.gridView.OptionsEditForm.PopupEditFormWidth = 1200;
|
||||||
|
this.gridView.Click += new System.EventHandler(this.gridView_Click);
|
||||||
|
//
|
||||||
|
// ribbonControl
|
||||||
|
//
|
||||||
|
this.ribbonControl.EmptyAreaImageOptions.ImagePadding = new System.Windows.Forms.Padding(45, 44, 45, 44);
|
||||||
|
this.ribbonControl.ExpandCollapseItem.Id = 0;
|
||||||
|
this.ribbonControl.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
|
||||||
|
this.ribbonControl.ExpandCollapseItem,
|
||||||
|
this.bsiRecordsCount,
|
||||||
|
this.bbiDelete,
|
||||||
|
this.bbiRefresh});
|
||||||
|
this.ribbonControl.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.ribbonControl.Margin = new System.Windows.Forms.Padding(4);
|
||||||
|
this.ribbonControl.MaxItemId = 20;
|
||||||
|
this.ribbonControl.Name = "ribbonControl";
|
||||||
|
this.ribbonControl.OptionsMenuMinWidth = 495;
|
||||||
|
this.ribbonControl.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] {
|
||||||
|
this.ribbonPage1});
|
||||||
|
this.ribbonControl.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonControlStyle.Office2013;
|
||||||
|
this.ribbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.False;
|
||||||
|
this.ribbonControl.Size = new System.Drawing.Size(1448, 231);
|
||||||
|
this.ribbonControl.StatusBar = this.ribbonStatusBar;
|
||||||
|
this.ribbonControl.ToolbarLocation = DevExpress.XtraBars.Ribbon.RibbonQuickAccessToolbarLocation.Hidden;
|
||||||
|
//
|
||||||
|
// bsiRecordsCount
|
||||||
|
//
|
||||||
|
this.bsiRecordsCount.Caption = "RECORDS : 0";
|
||||||
|
this.bsiRecordsCount.Id = 15;
|
||||||
|
this.bsiRecordsCount.Name = "bsiRecordsCount";
|
||||||
|
//
|
||||||
|
// bbiDelete
|
||||||
|
//
|
||||||
|
this.bbiDelete.Caption = "Terminate";
|
||||||
|
this.bbiDelete.Id = 18;
|
||||||
|
this.bbiDelete.ImageOptions.ImageUri.Uri = "Delete";
|
||||||
|
this.bbiDelete.Name = "bbiDelete";
|
||||||
|
this.bbiDelete.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.bbiDelete_ItemClick);
|
||||||
|
//
|
||||||
|
// bbiRefresh
|
||||||
|
//
|
||||||
|
this.bbiRefresh.Caption = "Refresh";
|
||||||
|
this.bbiRefresh.Id = 19;
|
||||||
|
this.bbiRefresh.ImageOptions.ImageUri.Uri = "Refresh";
|
||||||
|
this.bbiRefresh.Name = "bbiRefresh";
|
||||||
|
this.bbiRefresh.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.bbiRefresh_ItemClick);
|
||||||
|
//
|
||||||
|
// ribbonPage1
|
||||||
|
//
|
||||||
|
this.ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] {
|
||||||
|
this.ribbonPageGroup1});
|
||||||
|
this.ribbonPage1.MergeOrder = 0;
|
||||||
|
this.ribbonPage1.Name = "ribbonPage1";
|
||||||
|
this.ribbonPage1.Text = "Home";
|
||||||
|
//
|
||||||
|
// ribbonPageGroup1
|
||||||
|
//
|
||||||
|
this.ribbonPageGroup1.AllowTextClipping = false;
|
||||||
|
this.ribbonPageGroup1.CaptionButtonVisible = DevExpress.Utils.DefaultBoolean.False;
|
||||||
|
this.ribbonPageGroup1.ItemLinks.Add(this.bbiDelete);
|
||||||
|
this.ribbonPageGroup1.ItemLinks.Add(this.bbiRefresh);
|
||||||
|
this.ribbonPageGroup1.Name = "ribbonPageGroup1";
|
||||||
|
this.ribbonPageGroup1.Text = "Tasks";
|
||||||
|
//
|
||||||
|
// ribbonStatusBar
|
||||||
|
//
|
||||||
|
this.ribbonStatusBar.ItemLinks.Add(this.bsiRecordsCount);
|
||||||
|
this.ribbonStatusBar.Location = new System.Drawing.Point(0, 1034);
|
||||||
|
this.ribbonStatusBar.Margin = new System.Windows.Forms.Padding(4);
|
||||||
|
this.ribbonStatusBar.Name = "ribbonStatusBar";
|
||||||
|
this.ribbonStatusBar.Ribbon = this.ribbonControl;
|
||||||
|
this.ribbonStatusBar.Size = new System.Drawing.Size(1448, 36);
|
||||||
|
//
|
||||||
|
// Form1
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 19F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(1448, 1070);
|
||||||
|
this.Controls.Add(this.ribbonStatusBar);
|
||||||
|
this.Controls.Add(this.gridControl);
|
||||||
|
this.Controls.Add(this.ribbonControl);
|
||||||
|
this.Margin = new System.Windows.Forms.Padding(4);
|
||||||
|
this.Name = "Form1";
|
||||||
|
this.Ribbon = this.ribbonControl;
|
||||||
|
this.StatusBar = this.ribbonStatusBar;
|
||||||
|
this.Text = "NetWorkManger";
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.gridControl)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.gridView)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private DevExpress.XtraGrid.GridControl gridControl;
|
||||||
|
private DevExpress.XtraGrid.Views.Grid.GridView gridView;
|
||||||
|
private DevExpress.XtraBars.Ribbon.RibbonControl ribbonControl;
|
||||||
|
private DevExpress.XtraBars.Ribbon.RibbonPage ribbonPage1;
|
||||||
|
private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1;
|
||||||
|
private DevExpress.XtraBars.Ribbon.RibbonStatusBar ribbonStatusBar;
|
||||||
|
private DevExpress.XtraBars.BarStaticItem bsiRecordsCount;
|
||||||
|
private DevExpress.XtraBars.BarButtonItem bbiDelete;
|
||||||
|
private DevExpress.XtraBars.BarButtonItem bbiRefresh;
|
||||||
|
}
|
||||||
|
}
|
||||||
123
tools/NetWorkManager/NetWorkManager/Form1.cs
Normal file
123
tools/NetWorkManager/NetWorkManager/Form1.cs
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
using DevExpress.Utils.Design;
|
||||||
|
using DevExpress.Utils.Extensions;
|
||||||
|
using DevExpress.XtraBars;
|
||||||
|
using DevExpress.XtraEditors;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.Data;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
namespace NetWorkManager
|
||||||
|
{
|
||||||
|
public partial class Form1 : DevExpress.XtraBars.Ribbon.RibbonForm
|
||||||
|
{
|
||||||
|
public Form1()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
|
||||||
|
BindingList<Customer> dataSource = GetDataSource();
|
||||||
|
gridControl.DataSource = dataSource;
|
||||||
|
bsiRecordsCount.Caption = "RECORDS : " + dataSource.Count;
|
||||||
|
}
|
||||||
|
void bbiPrintPreview_ItemClick(object sender, ItemClickEventArgs e)
|
||||||
|
{
|
||||||
|
gridControl.ShowRibbonPrintPreview();
|
||||||
|
}
|
||||||
|
public BindingList<Customer> GetDataSource()
|
||||||
|
{
|
||||||
|
List<PortScanner.internet_info> internet_infolist = PortScanner.GetAllInfo();
|
||||||
|
|
||||||
|
BindingList<Customer> result = new BindingList<Customer>();
|
||||||
|
|
||||||
|
int index = 1;
|
||||||
|
foreach(var item in internet_infolist)
|
||||||
|
{
|
||||||
|
result.Add(new Customer()
|
||||||
|
{
|
||||||
|
ID = index++,
|
||||||
|
PID = item.pid,
|
||||||
|
Process = item.process,
|
||||||
|
Local = item.local,
|
||||||
|
Remote = item.remote,
|
||||||
|
State = item.state,
|
||||||
|
Protocal = item.protocal
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
public class Customer
|
||||||
|
{
|
||||||
|
[Key, Display(AutoGenerateField = false)]
|
||||||
|
public int ID { get; set; }
|
||||||
|
[Required]
|
||||||
|
public string PID { get; set; }
|
||||||
|
public string Process { get; set; }
|
||||||
|
public string Local { get; set; }
|
||||||
|
public string Remote { get; set; }
|
||||||
|
// [Display(Name = "Zip Code")]
|
||||||
|
public string State { get; set; }
|
||||||
|
public string Protocal { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
private void bbiRefresh_ItemClick(object sender, ItemClickEventArgs e)
|
||||||
|
{
|
||||||
|
BindingList<Customer> dataSource = GetDataSource();
|
||||||
|
gridControl.DataSource = dataSource;
|
||||||
|
bsiRecordsCount.Caption = "RECORDS : " + dataSource.Count;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void bbiDelete_ItemClick(object sender, ItemClickEventArgs e)
|
||||||
|
{
|
||||||
|
var tRcvrLineID = gridView.GetFocusedRowCellValue("PID").ToString();
|
||||||
|
var processee = gridView.GetFocusedRowCellValue("Process").ToString();
|
||||||
|
|
||||||
|
if (XtraMessageBox.Show("Do you want to terminate" +$" PID:{tRcvrLineID} Process:{processee}", "Confirmation", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
||||||
|
{
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Process process = Process.GetProcessById(Convert.ToInt32(tRcvrLineID));
|
||||||
|
process.Kill();
|
||||||
|
process.WaitForExit();
|
||||||
|
|
||||||
|
XtraMessageBox.Show($" PID:{tRcvrLineID} Process:{processee} Terminated!", "Succuess Execute!");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
XtraMessageBox.Show($" PID:{tRcvrLineID} Process:{processee} {ex.Message}!", "error!");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BindingList<Customer> dataSource = GetDataSource();
|
||||||
|
gridControl.DataSource = dataSource;
|
||||||
|
bsiRecordsCount.Caption = "RECORDS : " + dataSource.Count;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void gridControl_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void gridControl_MouseClick(object sender, MouseEventArgs e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void gridView_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
120
tools/NetWorkManager/NetWorkManager/Form1.resx
Normal file
120
tools/NetWorkManager/NetWorkManager/Form1.resx
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
||||||
129
tools/NetWorkManager/NetWorkManager/NetWorkManager.csproj
Normal file
129
tools/NetWorkManager/NetWorkManager/NetWorkManager.csproj
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="..\packages\Fody.6.8.2\build\Fody.targets" Condition="Exists('..\packages\Fody.6.8.2\build\Fody.targets')" />
|
||||||
|
<Import Project="..\packages\Costura.Fody.5.7.0\build\Costura.Fody.props" Condition="Exists('..\packages\Costura.Fody.5.7.0\build\Costura.Fody.props')" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||||
|
<ProductVersion>8.0.30703</ProductVersion>
|
||||||
|
<SchemaVersion>2.0</SchemaVersion>
|
||||||
|
<ProjectGuid>{25900669-2872-4F11-9516-763C420E2B96}</ProjectGuid>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<RootNamespace>NetWorkManager</RootNamespace>
|
||||||
|
<AssemblyName>NetWorkManager</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||||
|
<FileAlignment>512</FileAlignment>
|
||||||
|
<PublishUrl>publish\</PublishUrl>
|
||||||
|
<Install>true</Install>
|
||||||
|
<InstallFrom>Disk</InstallFrom>
|
||||||
|
<UpdateEnabled>false</UpdateEnabled>
|
||||||
|
<UpdateMode>Foreground</UpdateMode>
|
||||||
|
<UpdateInterval>7</UpdateInterval>
|
||||||
|
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
||||||
|
<UpdatePeriodically>false</UpdatePeriodically>
|
||||||
|
<UpdateRequired>false</UpdateRequired>
|
||||||
|
<MapFileExtensions>true</MapFileExtensions>
|
||||||
|
<ApplicationRevision>0</ApplicationRevision>
|
||||||
|
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||||
|
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||||
|
<UseApplicationTrust>false</UseApplicationTrust>
|
||||||
|
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<DebugType>none</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="DevExpress.BonusSkins.v24.1" />
|
||||||
|
<Reference Include="DevExpress.Data.Desktop.v24.1" />
|
||||||
|
<Reference Include="DevExpress.Data.v24.1" />
|
||||||
|
<Reference Include="DevExpress.Images.v24.1, Version=24.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||||
|
<Reference Include="DevExpress.Utils.v24.1" />
|
||||||
|
<Reference Include="DevExpress.Sparkline.v24.1.Core" />
|
||||||
|
<Reference Include="DevExpress.XtraBars.v24.1, Version=24.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||||
|
<Reference Include="DevExpress.XtraEditors.v24.1" />
|
||||||
|
<Reference Include="DevExpress.Printing.v24.1.Core" />
|
||||||
|
<Reference Include="DevExpress.Drawing.v24.1" />
|
||||||
|
<Reference Include="DevExpress.XtraGrid.v24.1, Version=24.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Xml.Linq" />
|
||||||
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Deployment" />
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="enumInternet.cs" />
|
||||||
|
<Compile Include="Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<Compile Include="Form1.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Form1.Designer.cs">
|
||||||
|
<DependentUpon>Form1.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<EmbeddedResource Include="Form1.resx">
|
||||||
|
<DependentUpon>Form1.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Properties\licenses.licx" />
|
||||||
|
<EmbeddedResource Include="Properties\Resources.resx">
|
||||||
|
<Generator>ResXFileCodeGenerator</Generator>
|
||||||
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<Compile Include="Properties\Resources.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Resources.resx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<None Include="App.config" />
|
||||||
|
<None Include="Properties\Settings.settings">
|
||||||
|
<Generator>SettingsSingleFileGenerator</Generator>
|
||||||
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
|
</None>
|
||||||
|
<Compile Include="Properties\Settings.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Settings.settings</DependentUpon>
|
||||||
|
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||||
|
</Compile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BootstrapperPackage Include=".NETFramework,Version=v4.7.2">
|
||||||
|
<Visible>False</Visible>
|
||||||
|
<ProductName>Microsoft .NET Framework 4.7.2 %28x86 and x64%29</ProductName>
|
||||||
|
<Install>true</Install>
|
||||||
|
</BootstrapperPackage>
|
||||||
|
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||||
|
<Visible>False</Visible>
|
||||||
|
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
||||||
|
<Install>false</Install>
|
||||||
|
</BootstrapperPackage>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
<Target Name="BeforeBuild">
|
||||||
|
</Target>
|
||||||
|
<Target Name="AfterBuild">
|
||||||
|
</Target>
|
||||||
|
-->
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<PublishUrlHistory />
|
||||||
|
<InstallUrlHistory />
|
||||||
|
<SupportUrlHistory />
|
||||||
|
<UpdateUrlHistory />
|
||||||
|
<BootstrapperUrlHistory />
|
||||||
|
<ErrorReportUrlHistory />
|
||||||
|
<FallbackCulture>en-US</FallbackCulture>
|
||||||
|
<VerifyUploadedFiles>false</VerifyUploadedFiles>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
||||||
24
tools/NetWorkManager/NetWorkManager/Program.cs
Normal file
24
tools/NetWorkManager/NetWorkManager/Program.cs
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
using DevExpress.LookAndFeel;
|
||||||
|
using DevExpress.Skins;
|
||||||
|
using DevExpress.UserSkins;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace NetWorkManager
|
||||||
|
{
|
||||||
|
internal static class Program
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The main entry point for the application.
|
||||||
|
/// </summary>
|
||||||
|
[STAThread]
|
||||||
|
static void Main()
|
||||||
|
{
|
||||||
|
Application.EnableVisualStyles();
|
||||||
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
Application.Run(new Form1());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
// General Information about an assembly is controlled through the following
|
||||||
|
// set of attributes. Change these attribute values to modify the information
|
||||||
|
// associated with an assembly.
|
||||||
|
[assembly: AssemblyTitle("NetWorkManager")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("NetWorkManager")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © 2025")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
// Setting ComVisible to false makes the types in this assembly not visible
|
||||||
|
// to COM components. If you need to access a type in this assembly from
|
||||||
|
// COM, set the ComVisible attribute to true on that type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||||
|
[assembly: Guid("9006f149-aa49-4b8e-ba69-386d945fa738")]
|
||||||
|
// Version information for an assembly consists of the following four values:
|
||||||
|
//
|
||||||
|
// Major Version
|
||||||
|
// Minor Version
|
||||||
|
// Build Number
|
||||||
|
// Revision
|
||||||
|
//
|
||||||
|
// You can specify all the values or you can default the Build and Revision Numbers
|
||||||
|
// by using the '*' as shown below:
|
||||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||||
71
tools/NetWorkManager/NetWorkManager/Properties/Resources.Designer.cs
generated
Normal file
71
tools/NetWorkManager/NetWorkManager/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:4.0.30319.18034
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace NetWorkManager.Properties
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||||
|
/// </summary>
|
||||||
|
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||||
|
// class via a tool like ResGen or Visual Studio.
|
||||||
|
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||||
|
// with the /str option, or rebuild your VS project.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
internal class Resources
|
||||||
|
{
|
||||||
|
|
||||||
|
private static global::System.Resources.ResourceManager resourceMan;
|
||||||
|
|
||||||
|
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||||
|
|
||||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||||
|
internal Resources()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the cached ResourceManager instance used by this class.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if ((resourceMan == null))
|
||||||
|
{
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("NetWorkManager.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Overrides the current thread's CurrentUICulture property for all
|
||||||
|
/// resource lookups using this strongly typed resource class.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
117
tools/NetWorkManager/NetWorkManager/Properties/Resources.resx
Normal file
117
tools/NetWorkManager/NetWorkManager/Properties/Resources.resx
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
<?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.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: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:element>
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string"></xsd:attribute>
|
||||||
|
<xsd:attribute name="type" type="xsd:string"></xsd:attribute>
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string"></xsd:attribute>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string"></xsd:attribute>
|
||||||
|
<xsd:attribute name="name" type="xsd:string"></xsd:attribute>
|
||||||
|
</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>
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"></xsd:element>
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1"></xsd:attribute>
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3"></xsd:attribute>
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4"></xsd:attribute>
|
||||||
|
</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:element>
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
|
||||||
|
</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>
|
||||||
|
</root>
|
||||||
30
tools/NetWorkManager/NetWorkManager/Properties/Settings.Designer.cs
generated
Normal file
30
tools/NetWorkManager/NetWorkManager/Properties/Settings.Designer.cs
generated
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:4.0.30319.18034
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace NetWorkManager.Properties
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
|
||||||
|
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||||
|
{
|
||||||
|
|
||||||
|
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||||
|
|
||||||
|
public static Settings Default
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return defaultInstance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||||
|
<Profiles>
|
||||||
|
<Profile Name="(Default)" />
|
||||||
|
</Profiles>
|
||||||
|
<Settings />
|
||||||
|
</SettingsFile>
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v24.1, Version=24.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v24.1, Version=24.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
390
tools/NetWorkManager/NetWorkManager/enumInternet.cs
Normal file
390
tools/NetWorkManager/NetWorkManager/enumInternet.cs
Normal file
@@ -0,0 +1,390 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Net;
|
||||||
|
using System.Net.NetworkInformation;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
using System.Diagnostics;
|
||||||
|
namespace NetWorkManager
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
public class PortScanner
|
||||||
|
{
|
||||||
|
|
||||||
|
[DllImport("iphlpapi.dll", SetLastError = true)]
|
||||||
|
private static extern uint GetExtendedTcpTable(
|
||||||
|
IntPtr pTcpTable,
|
||||||
|
ref int dwOutBufLen,
|
||||||
|
bool sort,
|
||||||
|
int ipVersion,
|
||||||
|
TCP_TABLE_CLASS tblClass,
|
||||||
|
uint reserved = 0);
|
||||||
|
|
||||||
|
private enum TCP_TABLE_CLASS
|
||||||
|
{
|
||||||
|
TCP_TABLE_BASIC_LISTENER,
|
||||||
|
TCP_TABLE_BASIC_CONNECTIONS,
|
||||||
|
TCP_TABLE_BASIC_ALL,
|
||||||
|
TCP_TABLE_OWNER_PID_LISTENER,
|
||||||
|
TCP_TABLE_OWNER_PID_CONNECTIONS,
|
||||||
|
TCP_TABLE_OWNER_PID_ALL,
|
||||||
|
TCP_TABLE_OWNER_MODULE_LISTENER,
|
||||||
|
TCP_TABLE_OWNER_MODULE_CONNECTIONS,
|
||||||
|
TCP_TABLE_OWNER_MODULE_ALL
|
||||||
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_TCPROW_OWNER_PID
|
||||||
|
{
|
||||||
|
public uint state;
|
||||||
|
public uint localAddr;
|
||||||
|
public uint localPort;
|
||||||
|
public uint remoteAddr;
|
||||||
|
public uint remotePort;
|
||||||
|
public uint owningPid;
|
||||||
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_TCPTABLE_OWNER_PID
|
||||||
|
{
|
||||||
|
public uint dwNumEntries;
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.Struct, SizeConst = 1)]
|
||||||
|
public MIB_TCPROW_OWNER_PID[] table;
|
||||||
|
}
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_TCP6ROW_OWNER_PID
|
||||||
|
{
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)]
|
||||||
|
public byte[] localAddr;
|
||||||
|
public uint localScopeId;
|
||||||
|
public uint localPort;
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)]
|
||||||
|
public byte[] remoteAddr;
|
||||||
|
public uint remoteScopeId;
|
||||||
|
public uint remotePort;
|
||||||
|
public uint state;
|
||||||
|
public uint owningPid;
|
||||||
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_TCP6TABLE_OWNER_PID
|
||||||
|
{
|
||||||
|
public uint dwNumEntries;
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.Struct, SizeConst = 1)]
|
||||||
|
public MIB_TCP6ROW_OWNER_PID[] table;
|
||||||
|
}
|
||||||
|
private enum UDP_TABLE_CLASS
|
||||||
|
{
|
||||||
|
UDP_TABLE_BASIC,
|
||||||
|
UDP_TABLE_OWNER_PID,
|
||||||
|
UDP_TABLE_OWNER_MODULE
|
||||||
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_UDP6ROW_OWNER_PID
|
||||||
|
{
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)]
|
||||||
|
public byte[] localAddr;
|
||||||
|
public uint localScopeId;
|
||||||
|
public uint localPort;
|
||||||
|
public uint owningPid;
|
||||||
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_UDP6TABLE_OWNER_PID
|
||||||
|
{
|
||||||
|
public uint dwNumEntries;
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.Struct, SizeConst = 1)]
|
||||||
|
public MIB_UDP6ROW_OWNER_PID[] table;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[DllImport("iphlpapi.dll", SetLastError = true)]
|
||||||
|
private static extern uint GetExtendedUdpTable(
|
||||||
|
IntPtr pUdpTable,
|
||||||
|
ref int dwOutBufLen,
|
||||||
|
bool sort,
|
||||||
|
int ipVersion,
|
||||||
|
UDP_TABLE_CLASS tblClass,
|
||||||
|
uint reserved = 0);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_UDPROW_OWNER_PID
|
||||||
|
{
|
||||||
|
public uint localAddr;
|
||||||
|
public uint localPort;
|
||||||
|
public uint owningPid;
|
||||||
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
private struct MIB_UDPTABLE_OWNER_PID
|
||||||
|
{
|
||||||
|
public uint dwNumEntries;
|
||||||
|
[MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.Struct, SizeConst = 1)]
|
||||||
|
public MIB_UDPROW_OWNER_PID[] table;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static string[] TcpStateStrings = new string[] {
|
||||||
|
"CLOSED", "LISTENING", "SYN_SENT", "SYN_RCVD",
|
||||||
|
"ESTABLISHED", "FIN_WAIT1", "FIN_WAIT2", "CLOSE_WAIT",
|
||||||
|
"CLOSING", "LAST_ACK", "TIME_WAIT", "DELETE_TCB"
|
||||||
|
};
|
||||||
|
private const int AF_INET = 2;
|
||||||
|
private const int AF_INET6 = 23;
|
||||||
|
|
||||||
|
public class internet_info
|
||||||
|
{
|
||||||
|
public string pid;
|
||||||
|
public string process;
|
||||||
|
public string local;
|
||||||
|
public string remote;
|
||||||
|
public string state;
|
||||||
|
public string protocal;
|
||||||
|
|
||||||
|
public internet_info(string pid, string process, string local, string remote, string state, string protocal)
|
||||||
|
{
|
||||||
|
this.pid = pid.Trim();
|
||||||
|
this.process = process.Trim();
|
||||||
|
this.local = local.Trim();
|
||||||
|
this.remote = remote.Trim();
|
||||||
|
this.state = state.Trim();
|
||||||
|
this.protocal = protocal.Trim();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public static List<internet_info> internet_infolist = new List<internet_info>();
|
||||||
|
public static List<internet_info> GetAllInfo()
|
||||||
|
{
|
||||||
|
internet_infolist.Clear();
|
||||||
|
|
||||||
|
Console.WriteLine("IPv4 TCP Connections:");
|
||||||
|
ScanTcpPorts(AF_INET);
|
||||||
|
Console.WriteLine("\nIPv6 TCP Connections:");
|
||||||
|
ScanTcpPorts(AF_INET6);
|
||||||
|
Console.WriteLine("\nIPv4 UDP Connections:");
|
||||||
|
ScanUdpPorts(AF_INET);
|
||||||
|
Console.WriteLine("\nIPv6 UDP Connections:");
|
||||||
|
ScanUdpPorts(AF_INET6);
|
||||||
|
|
||||||
|
return internet_infolist;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void ScanTcpPorts(int ipVersion)
|
||||||
|
{
|
||||||
|
IntPtr tcpTable = IntPtr.Zero;
|
||||||
|
int tcpTableSize = 0;
|
||||||
|
uint ret = GetExtendedTcpTable(
|
||||||
|
tcpTable,
|
||||||
|
ref tcpTableSize,
|
||||||
|
true,
|
||||||
|
ipVersion,
|
||||||
|
TCP_TABLE_CLASS.TCP_TABLE_OWNER_PID_ALL);
|
||||||
|
|
||||||
|
if (ret != 0 && ret != 122) // ERROR_INSUFFICIENT_BUFFER
|
||||||
|
{
|
||||||
|
Console.WriteLine($"GetExtendedTcpTable failed: {ret}");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
tcpTable = Marshal.AllocHGlobal(tcpTableSize);
|
||||||
|
ret = GetExtendedTcpTable(
|
||||||
|
tcpTable,
|
||||||
|
ref tcpTableSize,
|
||||||
|
true,
|
||||||
|
ipVersion,
|
||||||
|
TCP_TABLE_CLASS.TCP_TABLE_OWNER_PID_ALL);
|
||||||
|
|
||||||
|
if (ret != 0)
|
||||||
|
{
|
||||||
|
Console.WriteLine($"GetExtendedTcpTable failed: {ret}");
|
||||||
|
Marshal.FreeHGlobal(tcpTable);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ipVersion == AF_INET)
|
||||||
|
{
|
||||||
|
|
||||||
|
var table = Marshal.PtrToStructure<MIB_TCPTABLE_OWNER_PID>(tcpTable);
|
||||||
|
IntPtr rowPtr = (IntPtr)((long)tcpTable + Marshal.SizeOf(table.dwNumEntries));
|
||||||
|
|
||||||
|
for (int i = 0; i < table.dwNumEntries; i++)
|
||||||
|
{
|
||||||
|
var row = Marshal.PtrToStructure<MIB_TCPROW_OWNER_PID>(rowPtr);
|
||||||
|
string processName = GetProcessName((int)row.owningPid);
|
||||||
|
string localAddr = new IPAddress(row.localAddr).ToString();
|
||||||
|
string remoteAddr = row.remoteAddr != 0 ?
|
||||||
|
new IPAddress(row.remoteAddr).ToString() : "0.0.0.0";
|
||||||
|
ushort localPort = NetworkToHostPort(row.localPort);
|
||||||
|
ushort remotePort = NetworkToHostPort(row.remotePort);
|
||||||
|
|
||||||
|
Console.WriteLine(
|
||||||
|
$"PID: {row.owningPid,6} | " +
|
||||||
|
$"Process: {processName,-20} | " +
|
||||||
|
$"Local: {localAddr}:{localPort,-5} | " +
|
||||||
|
$"Remote: {remoteAddr}:{remotePort,-5} | " +
|
||||||
|
$"State: {TcpStateStrings[row.state]}");
|
||||||
|
|
||||||
|
rowPtr = (IntPtr)((long)rowPtr + Marshal.SizeOf(typeof(MIB_TCPROW_OWNER_PID)));
|
||||||
|
|
||||||
|
internet_info ifo = new internet_info($"{row.owningPid,6}", $"{processName,-20}", $"{localAddr}:{localPort,-5}", $"{remoteAddr}:{remotePort,-5}", $"{TcpStateStrings[row.state]}", "tcpv4");
|
||||||
|
|
||||||
|
internet_infolist.Add(ifo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
var table = Marshal.PtrToStructure<MIB_TCP6TABLE_OWNER_PID>(tcpTable);
|
||||||
|
IntPtr rowPtr = (IntPtr)((long)tcpTable + Marshal.SizeOf(table.dwNumEntries));
|
||||||
|
|
||||||
|
for (int i = 0; i < table.dwNumEntries; i++)
|
||||||
|
{
|
||||||
|
var row = Marshal.PtrToStructure<MIB_TCP6ROW_OWNER_PID>(rowPtr);
|
||||||
|
string processName = GetProcessName((int)row.owningPid);
|
||||||
|
IPAddress localAddr = new IPAddress(row.localAddr, row.localScopeId);
|
||||||
|
IPAddress remoteAddr = new IPAddress(row.remoteAddr, row.remoteScopeId);
|
||||||
|
ushort localPort = NetworkToHostPort(row.localPort);
|
||||||
|
ushort remotePort = NetworkToHostPort(row.remotePort);
|
||||||
|
|
||||||
|
Console.WriteLine(
|
||||||
|
$"PID: {row.owningPid,6} | " +
|
||||||
|
$"Process: {processName,-20} | " +
|
||||||
|
$"Local: [{localAddr}]:{localPort,-5} | " +
|
||||||
|
$"Remote: [{remoteAddr}]:{remotePort,-5} | " +
|
||||||
|
$"State: {TcpStateStrings[row.state]}");
|
||||||
|
|
||||||
|
rowPtr = (IntPtr)((long)rowPtr + Marshal.SizeOf(typeof(MIB_TCP6ROW_OWNER_PID)));
|
||||||
|
|
||||||
|
internet_info ifo = new internet_info($"{row.owningPid,6}", $"{processName,-20}", $"{localAddr}:{localPort,-5}", $"{remoteAddr}:{remotePort,-5}", $"{TcpStateStrings[row.state]}", "tcpv6");
|
||||||
|
|
||||||
|
internet_infolist.Add(ifo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Marshal.FreeHGlobal(tcpTable);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void ScanUdpPorts(int ipVersion)
|
||||||
|
{
|
||||||
|
IntPtr udpTable = IntPtr.Zero;
|
||||||
|
int udpTableSize = 0;
|
||||||
|
uint ret = GetExtendedUdpTable(
|
||||||
|
udpTable,
|
||||||
|
ref udpTableSize,
|
||||||
|
true,
|
||||||
|
ipVersion,
|
||||||
|
UDP_TABLE_CLASS.UDP_TABLE_OWNER_PID);
|
||||||
|
|
||||||
|
if (ret != 0 && ret != 122) // ERROR_INSUFFICIENT_BUFFER
|
||||||
|
{
|
||||||
|
Console.WriteLine($"GetExtendedUdpTable failed: {ret}");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
udpTable = Marshal.AllocHGlobal(udpTableSize);
|
||||||
|
ret = GetExtendedUdpTable(
|
||||||
|
udpTable,
|
||||||
|
ref udpTableSize,
|
||||||
|
true,
|
||||||
|
ipVersion,
|
||||||
|
UDP_TABLE_CLASS.UDP_TABLE_OWNER_PID);
|
||||||
|
|
||||||
|
if (ret != 0)
|
||||||
|
{
|
||||||
|
Console.WriteLine($"GetExtendedUdpTable failed: {ret}");
|
||||||
|
Marshal.FreeHGlobal(udpTable);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ipVersion == AF_INET)
|
||||||
|
{
|
||||||
|
|
||||||
|
var table = Marshal.PtrToStructure<MIB_UDPTABLE_OWNER_PID>(udpTable);
|
||||||
|
IntPtr rowPtr = (IntPtr)((long)udpTable + Marshal.SizeOf(table.dwNumEntries));
|
||||||
|
|
||||||
|
for (int i = 0; i < table.dwNumEntries; i++)
|
||||||
|
{
|
||||||
|
var row = Marshal.PtrToStructure<MIB_UDPROW_OWNER_PID>(rowPtr);
|
||||||
|
string processName = GetProcessName((int)row.owningPid);
|
||||||
|
string localAddr = new IPAddress(row.localAddr).ToString();
|
||||||
|
ushort localPort = NetworkToHostPort(row.localPort);
|
||||||
|
|
||||||
|
Console.WriteLine(
|
||||||
|
$"PID: {row.owningPid,6} | " +
|
||||||
|
$"Process: {processName,-20} | " +
|
||||||
|
$"Local: {localAddr}:{localPort} | " +
|
||||||
|
$"State: LISTENING");
|
||||||
|
|
||||||
|
rowPtr = (IntPtr)((long)rowPtr + Marshal.SizeOf(typeof(MIB_UDPROW_OWNER_PID)));
|
||||||
|
|
||||||
|
internet_info ifo = new internet_info($"{row.owningPid,6}", $"{processName,-20}", $"{localAddr}:{localPort,-5}", $"", $"", "udpv4");
|
||||||
|
|
||||||
|
internet_infolist.Add(ifo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
var table = Marshal.PtrToStructure<MIB_UDP6TABLE_OWNER_PID>(udpTable);
|
||||||
|
IntPtr rowPtr = (IntPtr)((long)udpTable + Marshal.SizeOf(table.dwNumEntries));
|
||||||
|
|
||||||
|
for (int i = 0; i < table.dwNumEntries; i++)
|
||||||
|
{
|
||||||
|
var row = Marshal.PtrToStructure<MIB_UDP6ROW_OWNER_PID>(rowPtr);
|
||||||
|
string processName = GetProcessName((int)row.owningPid);
|
||||||
|
IPAddress localAddr = new IPAddress(row.localAddr, row.localScopeId);
|
||||||
|
ushort localPort = NetworkToHostPort(row.localPort);
|
||||||
|
|
||||||
|
Console.WriteLine(
|
||||||
|
$"PID: {row.owningPid,6} | " +
|
||||||
|
$"Process: {processName,-20} | " +
|
||||||
|
$"Local: [{localAddr}]:{localPort} | " +
|
||||||
|
$"State: LISTENING");
|
||||||
|
|
||||||
|
rowPtr = (IntPtr)((long)rowPtr + Marshal.SizeOf(typeof(MIB_UDP6ROW_OWNER_PID)));
|
||||||
|
|
||||||
|
internet_info ifo = new internet_info($"{row.owningPid,6}", $"{processName,-20}", $"{localAddr}:{localPort,-5}", $"", $"", "udpv6");
|
||||||
|
|
||||||
|
internet_infolist.Add(ifo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Marshal.FreeHGlobal(udpTable);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static ushort NetworkToHostPort(uint port)
|
||||||
|
{
|
||||||
|
byte[] bytes = BitConverter.GetBytes(port);
|
||||||
|
if (BitConverter.IsLittleEndian)
|
||||||
|
{
|
||||||
|
Array.Reverse(bytes, 0, 2);
|
||||||
|
}
|
||||||
|
return BitConverter.ToUInt16(bytes, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static string GetProcessName(int pid)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Process process = Process.GetProcessById(pid);
|
||||||
|
return process.ProcessName;
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
return "N/A";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/Costura.Fody.5.7.0.nupkg
vendored
Normal file
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/Costura.Fody.5.7.0.nupkg
vendored
Normal file
Binary file not shown.
15
tools/NetWorkManager/packages/Costura.Fody.5.7.0/build/Costura.Fody.props
vendored
Normal file
15
tools/NetWorkManager/packages/Costura.Fody.5.7.0/build/Costura.Fody.props
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<WeaverRuntimeToken
|
||||||
|
Condition="$(MSBuildRuntimeType) != 'Core'">netclassicweaver</WeaverRuntimeToken>
|
||||||
|
<WeaverRuntimeToken
|
||||||
|
Condition="$(MSBuildRuntimeType) == 'Core'">netstandardweaver</WeaverRuntimeToken>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<WeaverFiles
|
||||||
|
Include="$(MsBuildThisFileDirectory)..\$(WeaverRuntimeToken)\$(MSBuildThisFileName).dll" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
13
tools/NetWorkManager/packages/Costura.Fody.5.7.0/build/Costura.Fody.targets
vendored
Normal file
13
tools/NetWorkManager/packages/Costura.Fody.5.7.0/build/Costura.Fody.targets
vendored
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
|
||||||
|
<PropertyGroup Condition="$(CosturaRemoveCopyLocalFilesToPublish) == ''">
|
||||||
|
<CosturaRemoveCopyLocalFilesToPublish>true</CosturaRemoveCopyLocalFilesToPublish>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<Target Name="CosturaRemoveAlreadyEmbeddedFilesFromPublish" AfterTargets="ComputeResolvedFilesToPublishList" Condition="$(CosturaRemoveCopyLocalFilesToPublish) == 'true'">
|
||||||
|
<ItemGroup>
|
||||||
|
<ResolvedFileToPublish Remove="@(FodyRemovedReferenceCopyLocalPaths)" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
</Project>
|
||||||
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/icon.png
vendored
Normal file
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/icon.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.5 KiB |
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/lib/netstandard1.0/Costura.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/lib/netstandard1.0/Costura.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/lib/netstandard1.0/Costura.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/lib/netstandard1.0/Costura.pdb
vendored
Normal file
Binary file not shown.
23
tools/NetWorkManager/packages/Costura.Fody.5.7.0/lib/netstandard1.0/Costura.xml
vendored
Normal file
23
tools/NetWorkManager/packages/Costura.Fody.5.7.0/lib/netstandard1.0/Costura.xml
vendored
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<doc>
|
||||||
|
<assembly>
|
||||||
|
<name>Costura</name>
|
||||||
|
</assembly>
|
||||||
|
<members>
|
||||||
|
<member name="T:MethodTimeLogger">
|
||||||
|
<summary>
|
||||||
|
Note: do not rename this class or put it inside a namespace.
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:CosturaUtility">
|
||||||
|
<summary>
|
||||||
|
Contains methods for interacting with the Costura system.
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:CosturaUtility.Initialize">
|
||||||
|
<summary>
|
||||||
|
Call this to Initialize the Costura system.
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
</members>
|
||||||
|
</doc>
|
||||||
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netclassicweaver/Costura.Fody.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netclassicweaver/Costura.Fody.dll
vendored
Normal file
Binary file not shown.
115
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netclassicweaver/Costura.Fody.xcf
vendored
Normal file
115
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netclassicweaver/Costura.Fody.xcf
vendored
Normal file
@@ -0,0 +1,115 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||||
|
<xs:all>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="IncludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="IncludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged32Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged64Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="PreloadOrder" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>The order of preloaded assemblies, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
</xs:all>
|
||||||
|
<xs:attribute name="CreateTemporaryAssemblies" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>This will copy embedded files to disk before loading them into memory. This is helpful for some scenarios that expected an assembly to be loaded from a physical file.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeDebugSymbols" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls if .pdbs for reference assemblies are also embedded.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeRuntimeReferences" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls if runtime assemblies are also embedded.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="UseRuntimeReferencePaths" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls whether the runtime assemblies are embedded with their full path or only with their assembly name.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="DisableCompression" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="DisableCleanup" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="LoadAtModuleInit" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IgnoreSatelliteAssemblies" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Costura will by default use assemblies with a name like 'resources.dll' as a satellite resource and prepend the output path. This flag disables that behavior.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="ExcludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="Unmanaged32Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="Unmanaged64Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="PreloadOrder" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>The order of preloaded assemblies, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
</xs:complexType>
|
||||||
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netstandardweaver/Costura.Fody.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netstandardweaver/Costura.Fody.dll
vendored
Normal file
Binary file not shown.
115
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netstandardweaver/Costura.Fody.xcf
vendored
Normal file
115
tools/NetWorkManager/packages/Costura.Fody.5.7.0/netstandardweaver/Costura.Fody.xcf
vendored
Normal file
@@ -0,0 +1,115 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||||
|
<xs:all>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="IncludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="IncludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged32Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged64Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element minOccurs="0" maxOccurs="1" name="PreloadOrder" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>The order of preloaded assemblies, delimited with line breaks.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:element>
|
||||||
|
</xs:all>
|
||||||
|
<xs:attribute name="CreateTemporaryAssemblies" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>This will copy embedded files to disk before loading them into memory. This is helpful for some scenarios that expected an assembly to be loaded from a physical file.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeDebugSymbols" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls if .pdbs for reference assemblies are also embedded.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeRuntimeReferences" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls if runtime assemblies are also embedded.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="UseRuntimeReferencePaths" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Controls whether the runtime assemblies are embedded with their full path or only with their assembly name.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="DisableCompression" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="DisableCleanup" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="LoadAtModuleInit" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IgnoreSatelliteAssemblies" type="xs:boolean">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>Costura will by default use assemblies with a name like 'resources.dll' as a satellite resource and prepend the output path. This flag disables that behavior.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="ExcludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="IncludeRuntimeAssemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="Unmanaged32Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="Unmanaged64Assemblies" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
<xs:attribute name="PreloadOrder" type="xs:string">
|
||||||
|
<xs:annotation>
|
||||||
|
<xs:documentation>The order of preloaded assemblies, delimited with |.</xs:documentation>
|
||||||
|
</xs:annotation>
|
||||||
|
</xs:attribute>
|
||||||
|
</xs:complexType>
|
||||||
BIN
tools/NetWorkManager/packages/Fody.6.8.2/Fody.6.8.2.nupkg
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/Fody.6.8.2.nupkg
vendored
Normal file
Binary file not shown.
21
tools/NetWorkManager/packages/Fody.6.8.2/License.txt
vendored
Normal file
21
tools/NetWorkManager/packages/Fody.6.8.2/License.txt
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) Simon Cropp
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
||||||
149
tools/NetWorkManager/packages/Fody.6.8.2/build/Fody.targets
vendored
Normal file
149
tools/NetWorkManager/packages/Fody.6.8.2/build/Fody.targets
vendored
Normal file
@@ -0,0 +1,149 @@
|
|||||||
|
<Project>
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectWeaverXml Condition="$(ProjectWeaverXml) == ''">$(ProjectDir)FodyWeavers.xml</ProjectWeaverXml>
|
||||||
|
<FodyPath Condition="$(FodyPath) == ''">$(MSBuildThisFileDirectory)..\</FodyPath>
|
||||||
|
<FodyAssemblyDirectory Condition="$(MSBuildRuntimeType) == 'Core'">$(FodyPath)netstandardtask</FodyAssemblyDirectory>
|
||||||
|
<FodyAssemblyDirectory Condition="$(MSBuildRuntimeType) != 'Core'">$(FodyPath)netclassictask</FodyAssemblyDirectory>
|
||||||
|
<FodyAssembly Condition="$(FodyAssembly) == ''">$(FodyAssemblyDirectory)\Fody.dll</FodyAssembly>
|
||||||
|
<DefaultItemExcludes>$(DefaultItemExcludes);FodyWeavers.xsd</DefaultItemExcludes>
|
||||||
|
<FodyGenerateXsd Condition="$(FodyGenerateXsd) == ''">true</FodyGenerateXsd>
|
||||||
|
<MsBuildMajorVersion>15</MsBuildMajorVersion>
|
||||||
|
<MsBuildMajorVersion Condition="'$(MSBuildVersion)' != ''">$([System.Version]::Parse($(MSBuildVersion)).Major)</MsBuildMajorVersion>
|
||||||
|
<FodyAfterTargets Condition="($(MsBuildMajorVersion) < 17) AND '$(FodyAfterTargets)'==''">AfterCompile</FodyAfterTargets>
|
||||||
|
<TargetsTriggeredByCompilation Condition="'$(FodyAfterTargets)'==''">$(TargetsTriggeredByCompilation);FodyTarget</TargetsTriggeredByCompilation>
|
||||||
|
<DisableFody Condition='$(UseWPF)==true AND $(MSBuildProjectName.EndsWith("_wpftmp"))'>true</DisableFody>
|
||||||
|
<FodyTreatWarningsAsErrors Condition="$(FodyTreatWarningsAsErrors) == ''">$(TreatWarningsAsErrors)</FodyTreatWarningsAsErrors>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup Condition="Exists($(ProjectWeaverXml))">
|
||||||
|
<UpToDateCheckInput Include="$(ProjectWeaverXml)" />
|
||||||
|
<CustomAdditionalCompileInputs Include="$(ProjectWeaverXml)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- Support for NCrunch -->
|
||||||
|
<ItemGroup Condition="'$(NCrunch)' == '1' and '$(TargetFramework)' == '' and '$(TargetFrameworks)' == ''">
|
||||||
|
<None Include="$(FodyAssemblyDirectory)\*.*" />
|
||||||
|
<None Include="@(WeaverFiles)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<UsingTask TaskName="Fody.WeavingTask" AssemblyFile="$(FodyAssembly)" />
|
||||||
|
<UsingTask TaskName="Fody.UpdateCopyLocalTask" AssemblyFile="$(FodyAssembly)" />
|
||||||
|
<UsingTask TaskName="Fody.VerifyTask" AssemblyFile="$(FodyAssembly)" />
|
||||||
|
|
||||||
|
<Target
|
||||||
|
Name="FodyTarget"
|
||||||
|
AfterTargets="$(FodyAfterTargets)"
|
||||||
|
Condition="Exists(@(IntermediateAssembly)) And ($(DesignTimeBuild) != true Or $(BuildingForLiveUnitTesting) == true) And $(DisableFody) != true"
|
||||||
|
DependsOnTargets="$(FodyDependsOnTargets)"
|
||||||
|
Inputs="@(IntermediateAssembly);$(ProjectWeaverXml)"
|
||||||
|
Outputs="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.CopyLocal.cache;$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.RuntimeCopyLocal.cache">
|
||||||
|
|
||||||
|
<Error Condition="($(MsBuildMajorVersion) < 16)"
|
||||||
|
Text="Fody is only supported on MSBuild 16 and above. Current version: $(MsBuildMajorVersion)." />
|
||||||
|
|
||||||
|
<Fody.WeavingTask
|
||||||
|
AssemblyFile="@(IntermediateAssembly)"
|
||||||
|
IntermediateDirectory="$(ProjectDir)$(IntermediateOutputPath)"
|
||||||
|
KeyOriginatorFile="$(KeyOriginatorFile)"
|
||||||
|
AssemblyOriginatorKeyFile="$(AssemblyOriginatorKeyFile)"
|
||||||
|
ProjectDirectory="$(MSBuildProjectDirectory)"
|
||||||
|
ProjectFile="$(MSBuildProjectFullPath)"
|
||||||
|
SolutionDirectory="$(SolutionDir)"
|
||||||
|
References="@(ReferencePath)"
|
||||||
|
SignAssembly="$(SignAssembly)"
|
||||||
|
DelaySign="$(DelaySign)"
|
||||||
|
ReferenceCopyLocalFiles="@(ReferenceCopyLocalPaths)"
|
||||||
|
RuntimeCopyLocalFiles="@(RuntimeCopyLocalItems)"
|
||||||
|
DefineConstants="$(DefineConstants)"
|
||||||
|
DocumentationFile="@(DocFileItem->'%(FullPath)')"
|
||||||
|
WeaverFiles="@(WeaverFiles)"
|
||||||
|
WeaverConfiguration="$(WeaverConfiguration)"
|
||||||
|
PackageReferences="@(PackageReference)"
|
||||||
|
NCrunchOriginalSolutionDirectory="$(NCrunchOriginalSolutionDir)"
|
||||||
|
IntermediateCopyLocalFilesCache="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.CopyLocal.cache"
|
||||||
|
RuntimeCopyLocalFilesCache="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.RuntimeCopyLocal.cache"
|
||||||
|
GenerateXsd="$(FodyGenerateXsd)"
|
||||||
|
TreatWarningsAsErrors="$(FodyTreatWarningsAsErrors)"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Output
|
||||||
|
TaskParameter="ExecutedWeavers"
|
||||||
|
PropertyName="FodyExecutedWeavers" />
|
||||||
|
|
||||||
|
</Fody.WeavingTask>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<FileWrites Include="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.CopyLocal.cache" />
|
||||||
|
<FileWrites Include="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.RuntimeCopyLocal.cache" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target
|
||||||
|
Name="FodyUpdateReferenceCopyLocalFilesTarget"
|
||||||
|
AfterTargets="FodyTarget"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Fody.UpdateCopyLocalTask
|
||||||
|
CopyLocalFiles="@(ReferenceCopyLocalPaths)"
|
||||||
|
IntermediateCopyLocalFilesCache="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.CopyLocal.cache"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Output
|
||||||
|
TaskParameter="UpdatedCopyLocalFiles"
|
||||||
|
ItemName="FodyUpdatedReferenceCopyLocalPaths" />
|
||||||
|
|
||||||
|
</Fody.UpdateCopyLocalTask>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<FodyRemovedReferenceCopyLocalPaths Include="@(ReferenceCopyLocalPaths)" />
|
||||||
|
<FodyRemovedReferenceCopyLocalPaths Remove="@(FodyUpdatedReferenceCopyLocalPaths)" />
|
||||||
|
<ReferenceCopyLocalPaths Remove="@(ReferenceCopyLocalPaths)" />
|
||||||
|
<ReferenceCopyLocalPaths Include="@(FodyUpdatedReferenceCopyLocalPaths)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target
|
||||||
|
Name="FodyUpdateRuntimeCopyLocalItemsTarget"
|
||||||
|
AfterTargets="FodyTarget"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Fody.UpdateCopyLocalTask
|
||||||
|
CopyLocalFiles="@(RuntimeCopyLocalItems)"
|
||||||
|
IntermediateCopyLocalFilesCache="$(IntermediateOutputPath)$(MSBuildProjectFile).Fody.RuntimeCopyLocal.cache"
|
||||||
|
>
|
||||||
|
|
||||||
|
<Output
|
||||||
|
TaskParameter="UpdatedCopyLocalFiles"
|
||||||
|
ItemName="FodyUpdatedRuntimeCopyLocalItems" />
|
||||||
|
|
||||||
|
</Fody.UpdateCopyLocalTask>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<FodyRemovedRuntimeCopyLocalItems Include="@(RuntimeCopyLocalItems)" />
|
||||||
|
<FodyRemovedRuntimeCopyLocalItems Remove="@(FodyUpdatedRuntimeCopyLocalItems)" />
|
||||||
|
<RuntimeCopyLocalItems Remove="@(RuntimeCopyLocalItems)" />
|
||||||
|
<RuntimeCopyLocalItems Include="@(FodyUpdatedRuntimeCopyLocalItems)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<Target
|
||||||
|
Name="FodyVerifyTarget"
|
||||||
|
AfterTargets="AfterBuild"
|
||||||
|
Condition="'$(NCrunch)' != '1' And $(FodyExecutedWeavers) != '' And $(DisableFody) != true"
|
||||||
|
DependsOnTargets="$(FodyVerifyDependsOnTargets)">
|
||||||
|
|
||||||
|
<Fody.VerifyTask
|
||||||
|
ProjectDirectory="$(MSBuildProjectDirectory)"
|
||||||
|
TargetPath="$(TargetPath)"
|
||||||
|
SolutionDirectory="$(SolutionDir)"
|
||||||
|
WeaverConfiguration="$(WeaverConfiguration)"
|
||||||
|
DefineConstants="$(DefineConstants)"
|
||||||
|
NCrunchOriginalSolutionDirectory="$(NCrunchOriginalSolutionDir)"
|
||||||
|
/>
|
||||||
|
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
</Project>
|
||||||
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Fody.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Fody.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/FodyCommon.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/FodyCommon.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/FodyHelpers.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/FodyHelpers.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/FodyIsolated.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/FodyIsolated.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Pdb.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Pdb.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Pdb.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Pdb.pdb
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Rocks.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Rocks.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Rocks.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.Rocks.pdb
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netclassictask/Mono.Cecil.pdb
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Fody.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Fody.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/FodyCommon.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/FodyCommon.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/FodyHelpers.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/FodyHelpers.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/FodyIsolated.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/FodyIsolated.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Pdb.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Pdb.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Pdb.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Pdb.pdb
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Rocks.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Rocks.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Rocks.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.Rocks.pdb
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.dll
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.dll
vendored
Normal file
Binary file not shown.
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.pdb
vendored
Normal file
BIN
tools/NetWorkManager/packages/Fody.6.8.2/netstandardtask/Mono.Cecil.pdb
vendored
Normal file
Binary file not shown.
98
tools/NetWorkManager/packages/Fody.6.8.2/readme.md
vendored
Normal file
98
tools/NetWorkManager/packages/Fody.6.8.2/readme.md
vendored
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
[](https://ci.appveyor.com/project/SimonCropp/fody/branch/master)
|
||||||
|
[](https://gitter.im/Fody/Fody)
|
||||||
|
[](https://www.nuget.org/packages/Fody/)
|
||||||
|
[](#patrons)
|
||||||
|
|
||||||
|
### <img src="https://raw.githubusercontent.com/Fody/Fody/master/package_icon.png" height="28px"> Extensible tool for weaving .net assemblies
|
||||||
|
|
||||||
|
Manipulating the IL of an assembly as part of a build requires a significant amount of plumbing code. This plumbing code involves knowledge of both the MSBuild and Visual Studio APIs. Fody attempts to eliminate that plumbing code through an extensible add-in model.
|
||||||
|
|
||||||
|
**This is the codebase of core Fody engine. For more information on the larger Fody project see https://github.com/Fody/Home.**
|
||||||
|
|
||||||
|
**See [Milestones](https://github.com/Fody/Fody/milestones?state=closed) for release notes.**
|
||||||
|
|
||||||
|
|
||||||
|
<!--- StartOpenCollectiveBackers -->
|
||||||
|
|
||||||
|
[Already a Patron? skip past this section](#endofbacking)
|
||||||
|
|
||||||
|
|
||||||
|
## Community backed
|
||||||
|
|
||||||
|
Fody requires significant effort to maintain. As such it relies on financial support to ensure its long term viability.
|
||||||
|
|
||||||
|
**It is expected that all developers using Fody [become a Patron on OpenCollective](https://opencollective.com/fody/contribute/patron-3059).**
|
||||||
|
|
||||||
|
[See Licensing/Patron FAQ](https://github.com/Fody/Home/blob/master/pages/licensing-patron-faq.md) for more information.
|
||||||
|
|
||||||
|
|
||||||
|
### Gold Sponsors
|
||||||
|
|
||||||
|
Support this project by [becoming a Gold Sponsor](https://opencollective.com/fody/contribute/gold-7088). A large company logo will be added here with a link to your website.
|
||||||
|
|
||||||
|
<a href="https://www.postsharp.net?utm_source=fody&utm_medium=referral"><img alt="PostSharp" src="https://raw.githubusercontent.com/Fody/Home/master/images/postsharp.png"></a>
|
||||||
|
|
||||||
|
|
||||||
|
### Silver Sponsors
|
||||||
|
|
||||||
|
Support this project by [becoming a Silver Sponsor](https://opencollective.com/fody/contribute/silver-7086). A medium company logo will be added here with a link to your website.
|
||||||
|
|
||||||
|
<a href="https://www.gresearch.co.uk/"><img alt="G-Research" width="120px" src="https://raw.githubusercontent.com/Fody/Home/master/images/g-research.svg?sanitize=true"></a> <a href="https://particular.net/"><img alt="Particular Software" width="200px" src="https://raw.githubusercontent.com/Fody/Home/master/images/particular.svg?sanitize=true"></a>
|
||||||
|
|
||||||
|
|
||||||
|
### Bronze Sponsors
|
||||||
|
|
||||||
|
Support this project by [becoming a Bronze Sponsor](https://opencollective.com/fody/contribute/bronze-7085). The company avatar will show up here with a link to your OpenCollective Profile.
|
||||||
|
|
||||||
|
<a href="https://opencollective.com/fody/tiers/bronze/0/website"><img src="https://opencollective.com/fody/tiers/bronze/0/avatar.svg?avatarHeight=100"></a>
|
||||||
|
<a href="https://opencollective.com/fody/tiers/bronze/1/website"><img src="https://opencollective.com/fody/tiers/bronze/1/avatar.svg?avatarHeight=100"></a>
|
||||||
|
|
||||||
|
|
||||||
|
### Patrons and sponsors
|
||||||
|
|
||||||
|
Thanks to all the backers and sponsors! Support this project by [becoming a patron](https://opencollective.com/fody/contribute/patron-3059).
|
||||||
|
|
||||||
|
<a href="https://opencollective.com/fody#contributors"><img src="https://opencollective.com/fody/sponsor.svg?width=890&avatarHeight=50&button=false"><img src="https://opencollective.com/fody/backer.svg?width=890&avatarHeight=50&button=false"></a>
|
||||||
|
|
||||||
|
|
||||||
|
<!--- EndOpenCollectiveBackers -->
|
||||||
|
|
||||||
|
|
||||||
|
## Documentation and Further Learning
|
||||||
|
|
||||||
|
* [Licensing and patron FAQ](https://github.com/Fody/Home/tree/master/pages/licensing-patron-faq.md)<br>
|
||||||
|
**It is expected that all developers using Fody [become a Patron on OpenCollective](https://opencollective.com/fody/order/3059).** See [Licensing/Patron FAQ](https://github.com/Fody/Home/tree/master/pages/licensing-patron-faq.md) for more information.
|
||||||
|
* [Usage](https://github.com/Fody/Home/tree/master/pages/usage.md)<br>
|
||||||
|
Introduction to using Fody.
|
||||||
|
* [Configuration](https://github.com/Fody/Home/tree/master/pages/configuration.md)<br>
|
||||||
|
All configuration options for Fody.
|
||||||
|
* [Addin discovery](https://github.com/Fody/Home/tree/master/pages/addin-discovery.md)<br>
|
||||||
|
How addins are resolved.
|
||||||
|
* [List of Fody weavers/addins](https://github.com/Fody/Home/tree/master/pages/addins.md)<br>
|
||||||
|
* [Changelog](https://github.com/Fody/Fody/milestones?state=closed)
|
||||||
|
* [FodyAddinSamples](https://github.com/Fody/FodyAddinSamples)<br>
|
||||||
|
A GitHub repo that contains a working sample of every Fody addin.
|
||||||
|
* [Common errors](https://github.com/Fody/Home/tree/master/pages/common-errors.md)
|
||||||
|
* [In solution weaving](https://github.com/Fody/Home/tree/master/pages/in-solution-weaving.md)<br>
|
||||||
|
Writing an addin that manipulates IL within the same solution.
|
||||||
|
* [ProcessedByFody class](https://github.com/Fody/Home/tree/master/pages/processedbyfody-class.md)<br>
|
||||||
|
Marker class added to target assemblies for diagnostic purposes.
|
||||||
|
* [Strong naming](https://github.com/Fody/Home/tree/master/pages/strong-naming.md)
|
||||||
|
* [Supported runtimes and IDE](https://github.com/Fody/Home/tree/master/pages/supported-runtimes-and-ide.md)
|
||||||
|
* [Addin development](https://github.com/Fody/Home/tree/master/pages/addin-development.md)<br>
|
||||||
|
Building a new Fody addin.
|
||||||
|
* [Addin packaging](https://github.com/Fody/Home/tree/master/pages/addin-packaging.md)<br>
|
||||||
|
Packaging and deployment of Fody weavers.
|
||||||
|
* [BasicFodyAddin](https://github.com/Fody/Home/tree/master/BasicFodyAddin)<br>
|
||||||
|
A simple project meant to illustrate how to build an addin.
|
||||||
|
* [Fody Project Configuration Manager](https://github.com/tom-englert/ProjectConfigurationManager/wiki/6.-Fody)<br>
|
||||||
|
Provides an interactive tool that can support configuring weavers, which is especially helpful in solutions with many projects.
|
||||||
|
* [Backers tracking/info](https://github.com/Fody/Home/tree/master/pages/backers.md)
|
||||||
|
* [Donations](https://github.com/Fody/Home/tree/master/pages/donations.md)<br>
|
||||||
|
Every month the Fody project will donate a portion of funding raised to a charity or other cause.
|
||||||
|
|
||||||
|
|
||||||
|
## Contributors
|
||||||
|
|
||||||
|
This project exists thanks to all the people who contribute.
|
||||||
|
<a href="https://github.com/Fody/Fody/graphs/contributors"><img src="https://opencollective.com/fody/contributors.svg?width=890&button=false" /></a>
|
||||||
Reference in New Issue
Block a user