Sorgente Release 1 (Codename "Campra")
This commit is contained in:
8
.gitignore
vendored
Normal file
8
.gitignore
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
.vs/SamaPager/copilot-chat
|
||||||
|
.vs/SamaPager/CopilotIndices
|
||||||
|
.vs/SamaPager/FileContentIndex
|
||||||
|
SamaPager_Client/bin
|
||||||
|
SamaPager_Server/bin
|
||||||
|
SamaPager_Client/obj
|
||||||
|
SamaPager_Server/obj
|
||||||
|
|
||||||
BIN
.vs/SamaPager/v17/.suo
Normal file
BIN
.vs/SamaPager/v17/.suo
Normal file
Binary file not shown.
121
.vs/SamaPager/v17/DocumentLayout.backup.json
Normal file
121
.vs/SamaPager/v17/DocumentLayout.backup.json
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
{
|
||||||
|
"Version": 1,
|
||||||
|
"WorkspaceRootPath": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\",
|
||||||
|
"Documents": [
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|c:\\users\\andrea.fiorencis\\source\\repos\\samapager\\samapager_server\\aboutform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\aboutform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\server.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\server.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"DocumentGroupContainers": [
|
||||||
|
{
|
||||||
|
"Orientation": 0,
|
||||||
|
"VerticalTabListWidth": 256,
|
||||||
|
"DocumentGroups": [
|
||||||
|
{
|
||||||
|
"DockedWidth": 200,
|
||||||
|
"SelectedChildIndex": 3,
|
||||||
|
"Children": [
|
||||||
|
{
|
||||||
|
"$type": "Bookmark",
|
||||||
|
"Name": "ST:0:0:{e5c86464-96be-4d7c-9a8b-abcb3bbf5f92}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 1,
|
||||||
|
"Title": "AboutForm.cs [Progettazione]",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\AboutForm.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\AboutForm.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\AboutForm.cs [Progettazione]",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\AboutForm.cs [Progettazione]",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-25T07:43:57.854Z",
|
||||||
|
"EditorCaption": " [Progettazione]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 2,
|
||||||
|
"Title": "Server.cs",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Server.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\Server.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Server.cs",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\Server.cs",
|
||||||
|
"ViewState": "AgIAABEAAAAAAAAAAAA9wC8AAAAaAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-25T06:54:12.967Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 0,
|
||||||
|
"Title": "MainForm.cs [Progettazione]",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\MainForm.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs [Progettazione]*",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\MainForm.cs [Progettazione]*",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:46:45.555Z",
|
||||||
|
"EditorCaption": " [Progettazione]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 3,
|
||||||
|
"Title": "MainForm.cs",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\MainForm.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs*",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\MainForm.cs*",
|
||||||
|
"ViewState": "AgIAAAcAAAAAAAAAAIAwwFUAAAABAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:46:47.114Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 4,
|
||||||
|
"Title": "Splash.cs",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\Splash.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\Splash.cs",
|
||||||
|
"ViewState": "AgIAAAkAAAAAAAAAAAAEwBoAAAAoAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:43:42.922Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 5,
|
||||||
|
"Title": "Splash.cs [Progettazione]",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\Splash.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs [Progettazione]",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\Splash.cs [Progettazione]",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:14:33.748Z"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
121
.vs/SamaPager/v17/DocumentLayout.json
Normal file
121
.vs/SamaPager/v17/DocumentLayout.json
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
{
|
||||||
|
"Version": 1,
|
||||||
|
"WorkspaceRootPath": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\",
|
||||||
|
"Documents": [
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|c:\\users\\andrea.fiorencis\\source\\repos\\samapager\\samapager_server\\aboutform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\aboutform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\server.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\server.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\mainform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||||
|
"RelativeMoniker": "D:0:0:{6DBA2B59-938C-49F4-8BC1-9853CA60B365}|SamaPager_Server\\SamaPager_Server.csproj|solutionrelative:samapager_server\\splash.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"DocumentGroupContainers": [
|
||||||
|
{
|
||||||
|
"Orientation": 0,
|
||||||
|
"VerticalTabListWidth": 256,
|
||||||
|
"DocumentGroups": [
|
||||||
|
{
|
||||||
|
"DockedWidth": 200,
|
||||||
|
"SelectedChildIndex": 3,
|
||||||
|
"Children": [
|
||||||
|
{
|
||||||
|
"$type": "Bookmark",
|
||||||
|
"Name": "ST:0:0:{e5c86464-96be-4d7c-9a8b-abcb3bbf5f92}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 1,
|
||||||
|
"Title": "AboutForm.cs [Progettazione]",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\AboutForm.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\AboutForm.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\AboutForm.cs [Progettazione]",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\AboutForm.cs [Progettazione]",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-25T07:43:57.854Z",
|
||||||
|
"EditorCaption": " [Progettazione]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 2,
|
||||||
|
"Title": "Server.cs",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Server.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\Server.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Server.cs",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\Server.cs",
|
||||||
|
"ViewState": "AgIAABEAAAAAAAAAAAA9wC8AAAAaAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-25T06:54:12.967Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 0,
|
||||||
|
"Title": "MainForm.cs [Progettazione]",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\MainForm.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs [Progettazione]",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\MainForm.cs [Progettazione]",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:46:45.555Z",
|
||||||
|
"EditorCaption": " [Progettazione]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 3,
|
||||||
|
"Title": "MainForm.cs",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\MainForm.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\MainForm.cs",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\MainForm.cs",
|
||||||
|
"ViewState": "AgIAAAcAAAAAAAAAAIAwwFUAAAABAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:46:47.114Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 4,
|
||||||
|
"Title": "Splash.cs",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\Splash.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\Splash.cs",
|
||||||
|
"ViewState": "AgIAAAkAAAAAAAAAAAAEwBoAAAAoAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:43:42.922Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 5,
|
||||||
|
"Title": "Splash.cs [Progettazione]",
|
||||||
|
"DocumentMoniker": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs",
|
||||||
|
"RelativeDocumentMoniker": "SamaPager_Server\\Splash.cs",
|
||||||
|
"ToolTip": "C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\Splash.cs [Progettazione]",
|
||||||
|
"RelativeToolTip": "SamaPager_Server\\Splash.cs [Progettazione]",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2025-09-18T06:14:33.748Z"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
1
.vs/SamaPager/v17/ResourceExplorer/settings.json
Normal file
1
.vs/SamaPager/v17/ResourceExplorer/settings.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"CustomColumnOrderings":{"name":0,"file-path":1,"file-name":2,"neutral-value":3,"neutral-comment":4,"type":5},"ShowValidationErrors":true,"SelectedResourceGroups":[],"VisibleColumnKeys":["name","neutral-value"]}
|
||||||
31
SamaPager.sln
Normal file
31
SamaPager.sln
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 17
|
||||||
|
VisualStudioVersion = 17.11.35312.102
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SamaPager_Server", "SamaPager_Server\SamaPager_Server.csproj", "{6DBA2B59-938C-49F4-8BC1-9853CA60B365}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SamaPager_Client", "SamaPager_Client\SamaPager_Client.csproj", "{081F6484-5D31-49FE-A80B-BB78CE3FBCDF}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{6DBA2B59-938C-49F4-8BC1-9853CA60B365}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{6DBA2B59-938C-49F4-8BC1-9853CA60B365}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{6DBA2B59-938C-49F4-8BC1-9853CA60B365}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{6DBA2B59-938C-49F4-8BC1-9853CA60B365}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{081F6484-5D31-49FE-A80B-BB78CE3FBCDF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{081F6484-5D31-49FE-A80B-BB78CE3FBCDF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{081F6484-5D31-49FE-A80B-BB78CE3FBCDF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{081F6484-5D31-49FE-A80B-BB78CE3FBCDF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {44ABB018-4E7E-4D0A-808F-69A42CA052BF}
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
{"RootPath":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Client","ProjectFileName":"SamaPager_Client.csproj","Configuration":"Debug|AnyCPU","FrameworkPath":"","Sources":[{"SourceFile":"Client.cs"},{"SourceFile":"Form1.cs"},{"SourceFile":"Form1.Designer.cs"},{"SourceFile":"Program.cs"},{"SourceFile":"Properties\\AssemblyInfo.cs"},{"SourceFile":"Properties\\Resources.Designer.cs"},{"SourceFile":"Properties\\Settings.Designer.cs"},{"SourceFile":"obj\\Debug\\.NETFramework,Version=v4.8.AssemblyAttributes.cs"}],"References":[{"Reference":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\packages\\Krypton.Toolkit.95.25.8.235\\lib\\net48\\Krypton.Toolkit.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\Microsoft.CSharp.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\mscorlib.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Data.DataSetExtensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Data.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Deployment.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Design.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Drawing.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Net.Http.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Windows.Forms.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Xml.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Xml.Linq.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""}],"Analyzers":[],"Outputs":[{"OutputItemFullPath":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Client\\bin\\Debug\\SamaPager_Client.exe","OutputItemRelativePath":"SamaPager_Client.exe"},{"OutputItemFullPath":"","OutputItemRelativePath":""}],"CopyToOutputEntries":[]}
|
||||||
18
SamaPager_Client/App.config
Normal file
18
SamaPager_Client/App.config
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<configuration>
|
||||||
|
<configSections>
|
||||||
|
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
|
||||||
|
<section name="SamaPager_Client.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||||
|
</sectionGroup>
|
||||||
|
</configSections>
|
||||||
|
<startup>
|
||||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||||
|
</startup>
|
||||||
|
<userSettings>
|
||||||
|
<SamaPager_Client.Properties.Settings>
|
||||||
|
<setting name="DestinationServerIP" serializeAs="String">
|
||||||
|
<value>127.0.0.1</value>
|
||||||
|
</setting>
|
||||||
|
</SamaPager_Client.Properties.Settings>
|
||||||
|
</userSettings>
|
||||||
|
</configuration>
|
||||||
49
SamaPager_Client/Client.cs
Normal file
49
SamaPager_Client/Client.cs
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
|
using System.Net.Sockets;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SamaPager_Client
|
||||||
|
{
|
||||||
|
internal class Client
|
||||||
|
{
|
||||||
|
internal int Port { get; set; }
|
||||||
|
internal IPAddress DestinationIP { get; set; }
|
||||||
|
internal UdpClient UdpStack { get; set; }
|
||||||
|
private IPEndPoint serverEndPoint { get; set; }
|
||||||
|
|
||||||
|
internal Client(IPAddress destinationIP, int destinationPort)
|
||||||
|
{
|
||||||
|
this.DestinationIP = destinationIP;
|
||||||
|
this.Port = destinationPort;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal string StartClient()
|
||||||
|
{
|
||||||
|
serverEndPoint = new IPEndPoint(this.DestinationIP, this.Port);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
UdpStack = new UdpClient();
|
||||||
|
return "Serving on " + serverEndPoint;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
return $"Error ({ex.Message})";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void SendMessage(string message)
|
||||||
|
{
|
||||||
|
byte[] msgData = Encoding.UTF8.GetBytes(message);
|
||||||
|
UdpStack.Send(msgData, msgData.Length, serverEndPoint);
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void KillClient()
|
||||||
|
{
|
||||||
|
this.UdpStack.Close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
188
SamaPager_Client/Form1.Designer.cs
generated
Normal file
188
SamaPager_Client/Form1.Designer.cs
generated
Normal file
@@ -0,0 +1,188 @@
|
|||||||
|
namespace SamaPager_Client
|
||||||
|
{
|
||||||
|
partial class Form1
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Variabile di progettazione necessaria.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pulire le risorse in uso.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">ha valore true se le risorse gestite devono essere eliminate, false in caso contrario.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Codice generato da Progettazione Windows Form
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Metodo necessario per il supporto della finestra di progettazione. Non modificare
|
||||||
|
/// il contenuto del metodo con l'editor di codice.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
|
||||||
|
this.kryptonPictureBox1 = new Krypton.Toolkit.KryptonPictureBox();
|
||||||
|
this.sendBtn = new Krypton.Toolkit.KryptonButton();
|
||||||
|
this.kryptonStatusStrip1 = new Krypton.Toolkit.KryptonStatusStrip();
|
||||||
|
this.statusTxt = new System.Windows.Forms.ToolStripStatusLabel();
|
||||||
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||||
|
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.changeDestinationAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.restartUDPClientToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.messageTxt = new Krypton.Toolkit.KryptonTextBox();
|
||||||
|
this.kryptonManager2 = new Krypton.Toolkit.KryptonManager(this.components);
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
|
||||||
|
this.kryptonPanel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPictureBox1)).BeginInit();
|
||||||
|
this.kryptonStatusStrip1.SuspendLayout();
|
||||||
|
this.menuStrip1.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// kryptonPanel1
|
||||||
|
//
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonPictureBox1);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.sendBtn);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonStatusStrip1);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.menuStrip1);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.messageTxt);
|
||||||
|
this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.kryptonPanel1.Name = "kryptonPanel1";
|
||||||
|
this.kryptonPanel1.Size = new System.Drawing.Size(350, 356);
|
||||||
|
this.kryptonPanel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// kryptonPictureBox1
|
||||||
|
//
|
||||||
|
this.kryptonPictureBox1.Image = global::SamaPager_Client.Properties.Resources.shalom;
|
||||||
|
this.kryptonPictureBox1.Location = new System.Drawing.Point(32, 43);
|
||||||
|
this.kryptonPictureBox1.Name = "kryptonPictureBox1";
|
||||||
|
this.kryptonPictureBox1.Size = new System.Drawing.Size(278, 181);
|
||||||
|
this.kryptonPictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
|
||||||
|
this.kryptonPictureBox1.TabIndex = 3;
|
||||||
|
this.kryptonPictureBox1.TabStop = false;
|
||||||
|
//
|
||||||
|
// sendBtn
|
||||||
|
//
|
||||||
|
this.sendBtn.Location = new System.Drawing.Point(250, 248);
|
||||||
|
this.sendBtn.Name = "sendBtn";
|
||||||
|
this.sendBtn.Size = new System.Drawing.Size(80, 67);
|
||||||
|
this.sendBtn.TabIndex = 2;
|
||||||
|
this.sendBtn.Values.DropDownArrowColor = System.Drawing.Color.Empty;
|
||||||
|
this.sendBtn.Values.Text = "INVIA";
|
||||||
|
this.sendBtn.Click += new System.EventHandler(this.sendBtn_Click);
|
||||||
|
//
|
||||||
|
// kryptonStatusStrip1
|
||||||
|
//
|
||||||
|
this.kryptonStatusStrip1.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||||
|
this.kryptonStatusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.statusTxt});
|
||||||
|
this.kryptonStatusStrip1.Location = new System.Drawing.Point(0, 334);
|
||||||
|
this.kryptonStatusStrip1.Name = "kryptonStatusStrip1";
|
||||||
|
this.kryptonStatusStrip1.ProgressBars = null;
|
||||||
|
this.kryptonStatusStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.ManagerRenderMode;
|
||||||
|
this.kryptonStatusStrip1.Size = new System.Drawing.Size(350, 22);
|
||||||
|
this.kryptonStatusStrip1.TabIndex = 1;
|
||||||
|
this.kryptonStatusStrip1.Text = "kryptonStatusStrip1";
|
||||||
|
//
|
||||||
|
// statusTxt
|
||||||
|
//
|
||||||
|
this.statusTxt.Name = "statusTxt";
|
||||||
|
this.statusTxt.Size = new System.Drawing.Size(70, 17);
|
||||||
|
this.statusTxt.Text = "STATUS: Off";
|
||||||
|
//
|
||||||
|
// menuStrip1
|
||||||
|
//
|
||||||
|
this.menuStrip1.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||||
|
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.fileToolStripMenuItem});
|
||||||
|
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.menuStrip1.Name = "menuStrip1";
|
||||||
|
this.menuStrip1.Size = new System.Drawing.Size(350, 24);
|
||||||
|
this.menuStrip1.TabIndex = 4;
|
||||||
|
this.menuStrip1.Text = "menuStrip1";
|
||||||
|
//
|
||||||
|
// fileToolStripMenuItem
|
||||||
|
//
|
||||||
|
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.changeDestinationAddressToolStripMenuItem,
|
||||||
|
this.restartUDPClientToolStripMenuItem});
|
||||||
|
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
|
||||||
|
this.fileToolStripMenuItem.Size = new System.Drawing.Size(64, 20);
|
||||||
|
this.fileToolStripMenuItem.Text = "Network";
|
||||||
|
//
|
||||||
|
// changeDestinationAddressToolStripMenuItem
|
||||||
|
//
|
||||||
|
this.changeDestinationAddressToolStripMenuItem.Name = "changeDestinationAddressToolStripMenuItem";
|
||||||
|
this.changeDestinationAddressToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
|
||||||
|
this.changeDestinationAddressToolStripMenuItem.Text = "Change destination address";
|
||||||
|
this.changeDestinationAddressToolStripMenuItem.Click += new System.EventHandler(this.changeDestinationAddressToolStripMenuItem_Click);
|
||||||
|
//
|
||||||
|
// restartUDPClientToolStripMenuItem
|
||||||
|
//
|
||||||
|
this.restartUDPClientToolStripMenuItem.Name = "restartUDPClientToolStripMenuItem";
|
||||||
|
this.restartUDPClientToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
|
||||||
|
this.restartUDPClientToolStripMenuItem.Text = "Restart UDP Client";
|
||||||
|
this.restartUDPClientToolStripMenuItem.Click += new System.EventHandler(this.restartUDPClientToolStripMenuItem_Click);
|
||||||
|
//
|
||||||
|
// messageTxt
|
||||||
|
//
|
||||||
|
this.messageTxt.Location = new System.Drawing.Point(12, 248);
|
||||||
|
this.messageTxt.Multiline = true;
|
||||||
|
this.messageTxt.Name = "messageTxt";
|
||||||
|
this.messageTxt.Size = new System.Drawing.Size(232, 67);
|
||||||
|
this.messageTxt.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// kryptonManager2
|
||||||
|
//
|
||||||
|
this.kryptonManager2.GlobalPaletteMode = Krypton.Toolkit.PaletteMode.Office2010Silver;
|
||||||
|
//
|
||||||
|
// Form1
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(350, 356);
|
||||||
|
this.Controls.Add(this.kryptonPanel1);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||||
|
this.MainMenuStrip = this.menuStrip1;
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.Name = "Form1";
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||||
|
this.Text = "SamaPager Client";
|
||||||
|
this.Load += new System.EventHandler(this.Form1_Load);
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
|
||||||
|
this.kryptonPanel1.ResumeLayout(false);
|
||||||
|
this.kryptonPanel1.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPictureBox1)).EndInit();
|
||||||
|
this.kryptonStatusStrip1.ResumeLayout(false);
|
||||||
|
this.kryptonStatusStrip1.PerformLayout();
|
||||||
|
this.menuStrip1.ResumeLayout(false);
|
||||||
|
this.menuStrip1.PerformLayout();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Krypton.Toolkit.KryptonPanel kryptonPanel1;
|
||||||
|
private Krypton.Toolkit.KryptonTextBox messageTxt;
|
||||||
|
private Krypton.Toolkit.KryptonManager kryptonManager2;
|
||||||
|
private Krypton.Toolkit.KryptonStatusStrip kryptonStatusStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripStatusLabel statusTxt;
|
||||||
|
private Krypton.Toolkit.KryptonButton sendBtn;
|
||||||
|
private Krypton.Toolkit.KryptonPictureBox kryptonPictureBox1;
|
||||||
|
private System.Windows.Forms.MenuStrip menuStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem changeDestinationAddressToolStripMenuItem;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem restartUDPClientToolStripMenuItem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
63
SamaPager_Client/Form1.cs
Normal file
63
SamaPager_Client/Form1.cs
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
using Krypton.Toolkit;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Configuration;
|
||||||
|
using System.Data;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace SamaPager_Client
|
||||||
|
{
|
||||||
|
public partial class Form1 : Krypton.Toolkit.KryptonForm
|
||||||
|
{
|
||||||
|
IPAddress DestinationIP = IPAddress.Loopback;
|
||||||
|
Client pageClient { get; set; }
|
||||||
|
|
||||||
|
public Form1()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StartClient()
|
||||||
|
{
|
||||||
|
pageClient = new Client(DestinationIP, 2000);
|
||||||
|
statusTxt.Text = "STATUS: " + pageClient.StartClient();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Form1_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
StartClient();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void changeDestinationAddressToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
KryptonMessageBox.Show("WIP");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void restartUDPClientToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
statusTxt.Text = "STATUS: Restarting UdpClient";
|
||||||
|
StartClient();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void sendBtn_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if(messageTxt.Text == string.Empty)
|
||||||
|
{
|
||||||
|
KryptonMessageBox.Show("Inserire un messaggio");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pageClient.SendMessage(messageTxt.Text);
|
||||||
|
messageTxt.Text = String.Empty;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
129
SamaPager_Client/Form1.resx
Normal file
129
SamaPager_Client/Form1.resx
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
<?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>
|
||||||
|
<metadata name="kryptonStatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>165, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>322, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="kryptonManager2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
</root>
|
||||||
22
SamaPager_Client/Program.cs
Normal file
22
SamaPager_Client/Program.cs
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace SamaPager_Client
|
||||||
|
{
|
||||||
|
internal static class Program
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Punto di ingresso principale dell'applicazione.
|
||||||
|
/// </summary>
|
||||||
|
[STAThread]
|
||||||
|
static void Main()
|
||||||
|
{
|
||||||
|
Application.EnableVisualStyles();
|
||||||
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
Application.Run(new Form1());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
36
SamaPager_Client/Properties/AssemblyInfo.cs
Normal file
36
SamaPager_Client/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
// Le informazioni generali relative a un assembly sono controllate dal seguente
|
||||||
|
// set di attributi. Modificare i valori di questi attributi per modificare le informazioni
|
||||||
|
// associate a un assembly.
|
||||||
|
[assembly: AssemblyTitle("SamaPager_Client")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("SamaPager_Client")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © 2025")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// Se si imposta ComVisible su false, i tipi in questo assembly non saranno visibili
|
||||||
|
// ai componenti COM. Se è necessario accedere a un tipo in questo assembly da
|
||||||
|
// COM, impostare su true l'attributo ComVisible per tale tipo.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// Se il progetto viene esposto a COM, il GUID seguente verrà utilizzato come ID della libreria dei tipi
|
||||||
|
[assembly: Guid("081f6484-5d31-49fe-a80b-bb78ce3fbcdf")]
|
||||||
|
|
||||||
|
// Le informazioni sulla versione di un assembly sono costituite dai seguenti quattro valori:
|
||||||
|
//
|
||||||
|
// Versione principale
|
||||||
|
// Versione secondaria
|
||||||
|
// Numero di build
|
||||||
|
// Revisione
|
||||||
|
//
|
||||||
|
// È possibile specificare tutti i valori oppure impostare valori predefiniti per i numeri relativi alla revisione e alla build
|
||||||
|
// usando l'asterisco '*' come illustrato di seguito:
|
||||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||||
73
SamaPager_Client/Properties/Resources.Designer.cs
generated
Normal file
73
SamaPager_Client/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Il codice è stato generato da uno strumento.
|
||||||
|
// Versione runtime:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Le modifiche apportate a questo file possono provocare un comportamento non corretto e andranno perse se
|
||||||
|
// il codice viene rigenerato.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace SamaPager_Client.Properties {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via.
|
||||||
|
/// </summary>
|
||||||
|
// Questa classe è stata generata automaticamente dalla classe StronglyTypedResourceBuilder.
|
||||||
|
// tramite uno strumento quale ResGen o Visual Studio.
|
||||||
|
// Per aggiungere o rimuovere un membro, modificare il file con estensione ResX ed eseguire nuovamente ResGen
|
||||||
|
// con l'opzione /str oppure ricompilare il progetto VS.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.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>
|
||||||
|
/// Restituisce l'istanza di ResourceManager nella cache utilizzata da questa classe.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SamaPager_Client.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte le
|
||||||
|
/// ricerche di risorse eseguite utilizzando questa classe di risorse fortemente tipizzata.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap shalom {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("shalom", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
124
SamaPager_Client/Properties/Resources.resx
Normal file
124
SamaPager_Client/Properties/Resources.resx
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
<?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>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="shalom" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\shalom.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
||||||
38
SamaPager_Client/Properties/Settings.Designer.cs
generated
Normal file
38
SamaPager_Client/Properties/Settings.Designer.cs
generated
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Il codice è stato generato da uno strumento.
|
||||||
|
// Versione runtime:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Le modifiche apportate a questo file possono provocare un comportamento non corretto e andranno perse se
|
||||||
|
// il codice viene rigenerato.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace SamaPager_Client.Properties {
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.11.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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Configuration.DefaultSettingValueAttribute("127.0.0.1")]
|
||||||
|
public string DestinationServerIP {
|
||||||
|
get {
|
||||||
|
return ((string)(this["DestinationServerIP"]));
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
this["DestinationServerIP"] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
9
SamaPager_Client/Properties/Settings.settings
Normal file
9
SamaPager_Client/Properties/Settings.settings
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SamaPager_Client.Properties" GeneratedClassName="Settings">
|
||||||
|
<Profiles />
|
||||||
|
<Settings>
|
||||||
|
<Setting Name="DestinationServerIP" Type="System.String" Scope="User">
|
||||||
|
<Value Profile="(Default)">127.0.0.1</Value>
|
||||||
|
</Setting>
|
||||||
|
</Settings>
|
||||||
|
</SettingsFile>
|
||||||
BIN
SamaPager_Client/Resources/shalom.jpg
Normal file
BIN
SamaPager_Client/Resources/shalom.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.6 KiB |
93
SamaPager_Client/SamaPager_Client.csproj
Normal file
93
SamaPager_Client/SamaPager_Client.csproj
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProjectGuid>{081F6484-5D31-49FE-A80B-BB78CE3FBCDF}</ProjectGuid>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<RootNamespace>SamaPager_Client</RootNamespace>
|
||||||
|
<AssemblyName>SamaPager_Client</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||||
|
<FileAlignment>512</FileAlignment>
|
||||||
|
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||||
|
<Deterministic>true</Deterministic>
|
||||||
|
</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>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Krypton.Toolkit, Version=95.25.8.235, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Krypton.Toolkit.95.25.8.235\lib\net48\Krypton.Toolkit.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Design" />
|
||||||
|
<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.Net.Http" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="Client.cs" />
|
||||||
|
<Compile Include="Form1.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Form1.Designer.cs">
|
||||||
|
<DependentUpon>Form1.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<EmbeddedResource Include="Form1.resx">
|
||||||
|
<DependentUpon>Form1.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<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>
|
||||||
|
<DesignTime>True</DesignTime>
|
||||||
|
</Compile>
|
||||||
|
<None Include="packages.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>
|
||||||
|
<None Include="App.config" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\shalom.jpg" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
4
SamaPager_Client/packages.config
Normal file
4
SamaPager_Client/packages.config
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Krypton.Toolkit" version="95.25.8.235" targetFramework="net48" />
|
||||||
|
</packages>
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
{"RootPath":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server","ProjectFileName":"SamaPager_Server.csproj","Configuration":"Debug|AnyCPU","FrameworkPath":"","Sources":[{"SourceFile":"ConfigManager.cs"},{"SourceFile":"MainForm.cs"},{"SourceFile":"MainForm.Designer.cs"},{"SourceFile":"Server.cs"},{"SourceFile":"Splash.cs"},{"SourceFile":"Splash.Designer.cs"},{"SourceFile":"Program.cs"},{"SourceFile":"Properties\\AssemblyInfo.cs"},{"SourceFile":"Properties\\Resources.Designer.cs"},{"SourceFile":"Properties\\Settings.Designer.cs"},{"SourceFile":"obj\\Debug\\.NETFramework,Version=v4.8.AssemblyAttributes.cs"}],"References":[{"Reference":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\packages\\Krypton.Toolkit.95.25.8.235\\lib\\net48\\Krypton.Toolkit.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\Microsoft.CSharp.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\mscorlib.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\packages\\Newtonsoft.Json.13.0.4\\lib\\net45\\Newtonsoft.Json.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Data.DataSetExtensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Data.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Deployment.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Design.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Drawing.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Net.Http.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Windows.Forms.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Xml.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.8\\System.Xml.Linq.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""}],"Analyzers":[],"Outputs":[{"OutputItemFullPath":"C:\\Users\\andrea.fiorencis\\source\\repos\\SamaPager\\SamaPager_Server\\bin\\Debug\\SamaPager_Server.exe","OutputItemRelativePath":"SamaPager_Server.exe"},{"OutputItemFullPath":"","OutputItemRelativePath":""}],"CopyToOutputEntries":[]}
|
||||||
130
SamaPager_Server/AboutForm.Designer.cs
generated
Normal file
130
SamaPager_Server/AboutForm.Designer.cs
generated
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
partial class AboutForm
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutForm));
|
||||||
|
this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
|
||||||
|
this.kryptonLabel3 = new Krypton.Toolkit.KryptonLabel();
|
||||||
|
this.storkUrl = new Krypton.Toolkit.KryptonLinkLabel();
|
||||||
|
this.kryptonLabel2 = new Krypton.Toolkit.KryptonLabel();
|
||||||
|
this.kryptonLabel1 = new Krypton.Toolkit.KryptonLabel();
|
||||||
|
this.kryptonPictureBox1 = new Krypton.Toolkit.KryptonPictureBox();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
|
||||||
|
this.kryptonPanel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPictureBox1)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// kryptonPanel1
|
||||||
|
//
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonLabel3);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.storkUrl);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonLabel2);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonLabel1);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonPictureBox1);
|
||||||
|
this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.kryptonPanel1.Name = "kryptonPanel1";
|
||||||
|
this.kryptonPanel1.Size = new System.Drawing.Size(982, 309);
|
||||||
|
this.kryptonPanel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// kryptonLabel3
|
||||||
|
//
|
||||||
|
this.kryptonLabel3.Location = new System.Drawing.Point(12, 228);
|
||||||
|
this.kryptonLabel3.Name = "kryptonLabel3";
|
||||||
|
this.kryptonLabel3.Size = new System.Drawing.Size(446, 52);
|
||||||
|
this.kryptonLabel3.TabIndex = 4;
|
||||||
|
this.kryptonLabel3.Values.Text = resources.GetString("kryptonLabel3.Values.Text");
|
||||||
|
//
|
||||||
|
// storkUrl
|
||||||
|
//
|
||||||
|
this.storkUrl.Location = new System.Drawing.Point(12, 283);
|
||||||
|
this.storkUrl.Name = "storkUrl";
|
||||||
|
this.storkUrl.Size = new System.Drawing.Size(123, 20);
|
||||||
|
this.storkUrl.TabIndex = 3;
|
||||||
|
this.storkUrl.Values.Text = "Made by AndreStork";
|
||||||
|
this.storkUrl.LinkClicked += new System.EventHandler(this.storkUrl_LinkClicked);
|
||||||
|
//
|
||||||
|
// kryptonLabel2
|
||||||
|
//
|
||||||
|
this.kryptonLabel2.Location = new System.Drawing.Point(12, 47);
|
||||||
|
this.kryptonLabel2.Name = "kryptonLabel2";
|
||||||
|
this.kryptonLabel2.Size = new System.Drawing.Size(400, 36);
|
||||||
|
this.kryptonLabel2.TabIndex = 2;
|
||||||
|
this.kryptonLabel2.Values.Text = "SamaPager is a free and (in)secure way to comunicate with your friends,\r\nand anno" +
|
||||||
|
"unce events like office meetings, fire alerts or 9/11 attacks";
|
||||||
|
//
|
||||||
|
// kryptonLabel1
|
||||||
|
//
|
||||||
|
this.kryptonLabel1.LabelStyle = Krypton.Toolkit.LabelStyle.TitlePanel;
|
||||||
|
this.kryptonLabel1.Location = new System.Drawing.Point(12, 12);
|
||||||
|
this.kryptonLabel1.Name = "kryptonLabel1";
|
||||||
|
this.kryptonLabel1.Size = new System.Drawing.Size(110, 29);
|
||||||
|
this.kryptonLabel1.TabIndex = 1;
|
||||||
|
this.kryptonLabel1.Values.Text = "SamaPager";
|
||||||
|
//
|
||||||
|
// kryptonPictureBox1
|
||||||
|
//
|
||||||
|
this.kryptonPictureBox1.Image = global::SamaPager_Server.Properties.Resources._5pagers1shalom;
|
||||||
|
this.kryptonPictureBox1.Location = new System.Drawing.Point(494, 12);
|
||||||
|
this.kryptonPictureBox1.Name = "kryptonPictureBox1";
|
||||||
|
this.kryptonPictureBox1.Size = new System.Drawing.Size(472, 291);
|
||||||
|
this.kryptonPictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
|
||||||
|
this.kryptonPictureBox1.TabIndex = 0;
|
||||||
|
this.kryptonPictureBox1.TabStop = false;
|
||||||
|
//
|
||||||
|
// AboutForm
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(982, 309);
|
||||||
|
this.Controls.Add(this.kryptonPanel1);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.MinimizeBox = false;
|
||||||
|
this.Name = "AboutForm";
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||||
|
this.Text = "About SamaPager Server";
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
|
||||||
|
this.kryptonPanel1.ResumeLayout(false);
|
||||||
|
this.kryptonPanel1.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPictureBox1)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Krypton.Toolkit.KryptonPanel kryptonPanel1;
|
||||||
|
private Krypton.Toolkit.KryptonPictureBox kryptonPictureBox1;
|
||||||
|
private Krypton.Toolkit.KryptonLabel kryptonLabel2;
|
||||||
|
private Krypton.Toolkit.KryptonLabel kryptonLabel1;
|
||||||
|
private Krypton.Toolkit.KryptonLabel kryptonLabel3;
|
||||||
|
private Krypton.Toolkit.KryptonLinkLabel storkUrl;
|
||||||
|
}
|
||||||
|
}
|
||||||
26
SamaPager_Server/AboutForm.cs
Normal file
26
SamaPager_Server/AboutForm.cs
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Data;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
public partial class AboutForm : Krypton.Toolkit.KryptonForm
|
||||||
|
{
|
||||||
|
public AboutForm()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void storkUrl_LinkClicked(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Process.Start("https://andrestork.moe");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
126
SamaPager_Server/AboutForm.resx
Normal file
126
SamaPager_Server/AboutForm.resx
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
<?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>
|
||||||
|
<data name="kryptonLabel3.Values.Text" xml:space="preserve">
|
||||||
|
<value>This program is made to be used legally, every reference to terrorist attacks, war
|
||||||
|
crimes, or injecting explosives into pagers is to be considered purely random.
|
||||||
|
SamaPager is made to be used for legal purposes.
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
||||||
6
SamaPager_Server/App.config
Normal file
6
SamaPager_Server/App.config
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<configuration>
|
||||||
|
<startup>
|
||||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||||
|
</startup>
|
||||||
|
</configuration>
|
||||||
37
SamaPager_Server/ConfigManager.cs
Normal file
37
SamaPager_Server/ConfigManager.cs
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
using Newtonsoft.Json;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Xml;
|
||||||
|
|
||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
internal class ConfigManager
|
||||||
|
{
|
||||||
|
internal string FileName = "config.json";
|
||||||
|
internal string ListeningIP { get; set; }
|
||||||
|
internal int ListeningPort { get; set; }
|
||||||
|
|
||||||
|
internal ConfigManager(string fileName)
|
||||||
|
{
|
||||||
|
this.FileName = fileName;
|
||||||
|
|
||||||
|
if (!File.Exists(FileName))
|
||||||
|
{
|
||||||
|
ListeningIP = "0.0.0.0";
|
||||||
|
ListeningPort = 2000;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
string rawJson = File.ReadAllText(FileName);
|
||||||
|
ConfigManager config = JsonConvert.DeserializeObject<ConfigManager>(rawJson);
|
||||||
|
ListeningIP = config.ListeningIP;
|
||||||
|
ListeningPort = config.ListeningPort;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
241
SamaPager_Server/MainForm.Designer.cs
generated
Normal file
241
SamaPager_Server/MainForm.Designer.cs
generated
Normal file
@@ -0,0 +1,241 @@
|
|||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
partial class MainForm
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||||
|
this.kryptonManager1 = new Krypton.Toolkit.KryptonManager(this.components);
|
||||||
|
this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
|
||||||
|
this.logList = new Krypton.Toolkit.KryptonListBox();
|
||||||
|
this.kryptonStatusStrip1 = new Krypton.Toolkit.KryptonStatusStrip();
|
||||||
|
this.statusLabel = new System.Windows.Forms.ToolStripStatusLabel();
|
||||||
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||||
|
this.fileToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.infoToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.kryptonContextMenuItem1 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItems1 = new Krypton.Toolkit.KryptonContextMenuItems();
|
||||||
|
this.kryptonContextMenuItem2 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItem3 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItem4 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItem5 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItem6 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItem7 = new Krypton.Toolkit.KryptonContextMenuItem();
|
||||||
|
this.kryptonContextMenuItems4 = new Krypton.Toolkit.KryptonContextMenuItems();
|
||||||
|
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
|
||||||
|
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||||
|
this.trayShowForm = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.trayExit = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
|
||||||
|
this.kryptonPanel1.SuspendLayout();
|
||||||
|
this.kryptonStatusStrip1.SuspendLayout();
|
||||||
|
this.menuStrip1.SuspendLayout();
|
||||||
|
this.contextMenuStrip1.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// kryptonManager1
|
||||||
|
//
|
||||||
|
this.kryptonManager1.GlobalPaletteMode = Krypton.Toolkit.PaletteMode.Office2010Black;
|
||||||
|
//
|
||||||
|
// kryptonPanel1
|
||||||
|
//
|
||||||
|
this.kryptonPanel1.Controls.Add(this.logList);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.kryptonStatusStrip1);
|
||||||
|
this.kryptonPanel1.Controls.Add(this.menuStrip1);
|
||||||
|
this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.kryptonPanel1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.kryptonPanel1.Name = "kryptonPanel1";
|
||||||
|
this.kryptonPanel1.Size = new System.Drawing.Size(432, 389);
|
||||||
|
this.kryptonPanel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// logList
|
||||||
|
//
|
||||||
|
this.logList.Location = new System.Drawing.Point(12, 27);
|
||||||
|
this.logList.Name = "logList";
|
||||||
|
this.logList.Size = new System.Drawing.Size(400, 322);
|
||||||
|
this.logList.TabIndex = 4;
|
||||||
|
//
|
||||||
|
// kryptonStatusStrip1
|
||||||
|
//
|
||||||
|
this.kryptonStatusStrip1.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||||
|
this.kryptonStatusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.statusLabel});
|
||||||
|
this.kryptonStatusStrip1.Location = new System.Drawing.Point(0, 367);
|
||||||
|
this.kryptonStatusStrip1.Name = "kryptonStatusStrip1";
|
||||||
|
this.kryptonStatusStrip1.ProgressBars = null;
|
||||||
|
this.kryptonStatusStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.ManagerRenderMode;
|
||||||
|
this.kryptonStatusStrip1.Size = new System.Drawing.Size(432, 22);
|
||||||
|
this.kryptonStatusStrip1.TabIndex = 3;
|
||||||
|
this.kryptonStatusStrip1.Text = "kryptonStatusStrip1";
|
||||||
|
//
|
||||||
|
// statusLabel
|
||||||
|
//
|
||||||
|
this.statusLabel.Name = "statusLabel";
|
||||||
|
this.statusLabel.Size = new System.Drawing.Size(105, 17);
|
||||||
|
this.statusLabel.Text = "STATUS: Server Off";
|
||||||
|
//
|
||||||
|
// menuStrip1
|
||||||
|
//
|
||||||
|
this.menuStrip1.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||||
|
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.fileToolStripMenuItem1,
|
||||||
|
this.helpToolStripMenuItem});
|
||||||
|
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.menuStrip1.Name = "menuStrip1";
|
||||||
|
this.menuStrip1.Size = new System.Drawing.Size(432, 24);
|
||||||
|
this.menuStrip1.TabIndex = 0;
|
||||||
|
this.menuStrip1.Text = "menuStrip1";
|
||||||
|
//
|
||||||
|
// fileToolStripMenuItem1
|
||||||
|
//
|
||||||
|
this.fileToolStripMenuItem1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.exitToolStripMenuItem});
|
||||||
|
this.fileToolStripMenuItem1.Name = "fileToolStripMenuItem1";
|
||||||
|
this.fileToolStripMenuItem1.Size = new System.Drawing.Size(37, 20);
|
||||||
|
this.fileToolStripMenuItem1.Text = "File";
|
||||||
|
//
|
||||||
|
// exitToolStripMenuItem
|
||||||
|
//
|
||||||
|
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
|
||||||
|
this.exitToolStripMenuItem.Size = new System.Drawing.Size(92, 22);
|
||||||
|
this.exitToolStripMenuItem.Text = "Exit";
|
||||||
|
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
|
||||||
|
//
|
||||||
|
// helpToolStripMenuItem
|
||||||
|
//
|
||||||
|
this.helpToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.infoToolStripMenuItem2});
|
||||||
|
this.helpToolStripMenuItem.Name = "helpToolStripMenuItem";
|
||||||
|
this.helpToolStripMenuItem.Size = new System.Drawing.Size(44, 20);
|
||||||
|
this.helpToolStripMenuItem.Text = "Help";
|
||||||
|
//
|
||||||
|
// infoToolStripMenuItem2
|
||||||
|
//
|
||||||
|
this.infoToolStripMenuItem2.Name = "infoToolStripMenuItem2";
|
||||||
|
this.infoToolStripMenuItem2.Size = new System.Drawing.Size(107, 22);
|
||||||
|
this.infoToolStripMenuItem2.Text = "About";
|
||||||
|
this.infoToolStripMenuItem2.Click += new System.EventHandler(this.infoToolStripMenuItem2_Click);
|
||||||
|
//
|
||||||
|
// kryptonContextMenuItem1
|
||||||
|
//
|
||||||
|
this.kryptonContextMenuItem1.Text = "odio i negri";
|
||||||
|
//
|
||||||
|
// kryptonContextMenuItems1
|
||||||
|
//
|
||||||
|
this.kryptonContextMenuItems1.Items.AddRange(new Krypton.Toolkit.KryptonContextMenuItemBase[] {
|
||||||
|
this.kryptonContextMenuItem2});
|
||||||
|
//
|
||||||
|
// kryptonContextMenuItem2
|
||||||
|
//
|
||||||
|
this.kryptonContextMenuItem2.Text = "Info";
|
||||||
|
//
|
||||||
|
// notifyIcon1
|
||||||
|
//
|
||||||
|
this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip1;
|
||||||
|
this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
|
||||||
|
this.notifyIcon1.Text = "notifyIcon1";
|
||||||
|
this.notifyIcon1.Visible = true;
|
||||||
|
//
|
||||||
|
// contextMenuStrip1
|
||||||
|
//
|
||||||
|
this.contextMenuStrip1.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||||
|
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.trayShowForm,
|
||||||
|
this.trayExit});
|
||||||
|
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||||
|
this.contextMenuStrip1.Size = new System.Drawing.Size(104, 48);
|
||||||
|
//
|
||||||
|
// trayShowForm
|
||||||
|
//
|
||||||
|
this.trayShowForm.Name = "trayShowForm";
|
||||||
|
this.trayShowForm.Size = new System.Drawing.Size(103, 22);
|
||||||
|
this.trayShowForm.Text = "Show";
|
||||||
|
this.trayShowForm.Click += new System.EventHandler(this.trayShowForm_Click);
|
||||||
|
//
|
||||||
|
// trayExit
|
||||||
|
//
|
||||||
|
this.trayExit.Name = "trayExit";
|
||||||
|
this.trayExit.Size = new System.Drawing.Size(103, 22);
|
||||||
|
this.trayExit.Text = "Exit";
|
||||||
|
this.trayExit.Click += new System.EventHandler(this.trayExit_Click);
|
||||||
|
//
|
||||||
|
// MainForm
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(432, 389);
|
||||||
|
this.Controls.Add(this.kryptonPanel1);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MainMenuStrip = this.menuStrip1;
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.Name = "MainForm";
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||||
|
this.Text = "SamaPager Server";
|
||||||
|
this.Load += new System.EventHandler(this.MainForm_Load);
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
|
||||||
|
this.kryptonPanel1.ResumeLayout(false);
|
||||||
|
this.kryptonPanel1.PerformLayout();
|
||||||
|
this.kryptonStatusStrip1.ResumeLayout(false);
|
||||||
|
this.kryptonStatusStrip1.PerformLayout();
|
||||||
|
this.menuStrip1.ResumeLayout(false);
|
||||||
|
this.menuStrip1.PerformLayout();
|
||||||
|
this.contextMenuStrip1.ResumeLayout(false);
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Krypton.Toolkit.KryptonManager kryptonManager1;
|
||||||
|
private Krypton.Toolkit.KryptonPanel kryptonPanel1;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem1;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItems kryptonContextMenuItems1;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem2;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem3;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem4;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem5;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem6;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItem kryptonContextMenuItem7;
|
||||||
|
private Krypton.Toolkit.KryptonContextMenuItems kryptonContextMenuItems4;
|
||||||
|
private System.Windows.Forms.MenuStrip menuStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem1;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem helpToolStripMenuItem;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem infoToolStripMenuItem2;
|
||||||
|
private System.Windows.Forms.NotifyIcon notifyIcon1;
|
||||||
|
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem trayExit;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem trayShowForm;
|
||||||
|
private Krypton.Toolkit.KryptonStatusStrip kryptonStatusStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripStatusLabel statusLabel;
|
||||||
|
private Krypton.Toolkit.KryptonListBox logList;
|
||||||
|
}
|
||||||
|
}
|
||||||
86
SamaPager_Server/MainForm.cs
Normal file
86
SamaPager_Server/MainForm.cs
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
using Newtonsoft.Json;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Data;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
public partial class MainForm : Krypton.Toolkit.KryptonForm
|
||||||
|
{
|
||||||
|
Server srv { get; set; }
|
||||||
|
Thread listenThread { get; set; }
|
||||||
|
bool Stop = false;
|
||||||
|
|
||||||
|
public MainForm()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ListenWorker()
|
||||||
|
{
|
||||||
|
while (this.Stop == false)
|
||||||
|
{
|
||||||
|
string result = srv.StartListening();
|
||||||
|
this.Invoke((MethodInvoker)delegate
|
||||||
|
{
|
||||||
|
logList.Items.Add(result);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
srv.KillServer();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void MainForm_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
logList.Items.Add("Welcome to SamaPager Server");
|
||||||
|
srv = new Server(IPAddress.Any, 2000);
|
||||||
|
statusLabel.Text = "STATUS: " + srv.StartServer();
|
||||||
|
listenThread = new Thread(ListenWorker);
|
||||||
|
listenThread.Start();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void trayShowForm_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
this.Show();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void trayExit_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Exit();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnFormClosing(FormClosingEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.CloseReason == CloseReason.UserClosing)
|
||||||
|
{
|
||||||
|
e.Cancel = true;
|
||||||
|
Hide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Exit();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Exit()
|
||||||
|
{
|
||||||
|
this.Stop = true;
|
||||||
|
Application.Exit();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void infoToolStripMenuItem2_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
var aboutForm = new AboutForm();
|
||||||
|
aboutForm.ShowDialog();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
6064
SamaPager_Server/MainForm.resx
Normal file
6064
SamaPager_Server/MainForm.resx
Normal file
File diff suppressed because it is too large
Load Diff
24
SamaPager_Server/Program.cs
Normal file
24
SamaPager_Server/Program.cs
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
internal static class Program
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Punto di ingresso principale dell'applicazione.
|
||||||
|
/// </summary>
|
||||||
|
[STAThread]
|
||||||
|
static void Main()
|
||||||
|
{
|
||||||
|
Application.EnableVisualStyles();
|
||||||
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
var splash = new Splash();
|
||||||
|
splash.Show();
|
||||||
|
Application.Run();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
33
SamaPager_Server/Properties/AssemblyInfo.cs
Normal file
33
SamaPager_Server/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
// Le informazioni generali relative a un assembly sono controllate dal seguente
|
||||||
|
// set di attributi. Modificare i valori di questi attributi per modificare le informazioni
|
||||||
|
// associate a un assembly.
|
||||||
|
[assembly: AssemblyTitle("SamaPager_Server")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("SamaPager_Server")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © 2025")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// Se si imposta ComVisible su false, i tipi in questo assembly non saranno visibili
|
||||||
|
// ai componenti COM. Se è necessario accedere a un tipo in questo assembly da
|
||||||
|
// COM, impostare su true l'attributo ComVisible per tale tipo.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// Se il progetto viene esposto a COM, il GUID seguente verrà utilizzato come ID della libreria dei tipi
|
||||||
|
[assembly: Guid("6dba2b59-938c-49f4-8bc1-9853ca60b365")]
|
||||||
|
|
||||||
|
// Le informazioni sulla versione di un assembly sono costituite dai seguenti quattro valori:
|
||||||
|
//
|
||||||
|
// Versione principale
|
||||||
|
// Versione secondaria
|
||||||
|
// Numero di build
|
||||||
|
// Revisione
|
||||||
|
//
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||||
83
SamaPager_Server/Properties/Resources.Designer.cs
generated
Normal file
83
SamaPager_Server/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Il codice è stato generato da uno strumento.
|
||||||
|
// Versione runtime:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Le modifiche apportate a questo file possono provocare un comportamento non corretto e andranno perse se
|
||||||
|
// il codice viene rigenerato.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace SamaPager_Server.Properties {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via.
|
||||||
|
/// </summary>
|
||||||
|
// Questa classe è stata generata automaticamente dalla classe StronglyTypedResourceBuilder.
|
||||||
|
// tramite uno strumento quale ResGen o Visual Studio.
|
||||||
|
// Per aggiungere o rimuovere un membro, modificare il file con estensione ResX ed eseguire nuovamente ResGen
|
||||||
|
// con l'opzione /str oppure ricompilare il progetto VS.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.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>
|
||||||
|
/// Restituisce l'istanza di ResourceManager nella cache utilizzata da questa classe.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SamaPager_Server.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte le
|
||||||
|
/// ricerche di risorse eseguite utilizzando questa classe di risorse fortemente tipizzata.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap _5pagers1shalom {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("5pagers1shalom", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap SamaSplash {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("SamaSplash", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
127
SamaPager_Server/Properties/Resources.resx
Normal file
127
SamaPager_Server/Properties/Resources.resx
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
<?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>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="SamaSplash" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\SamaSplash.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="5pagers1shalom" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\5pagers1shalom.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
||||||
30
SamaPager_Server/Properties/Settings.Designer.cs
generated
Normal file
30
SamaPager_Server/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.42000
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace SamaPager_Server.Properties
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
7
SamaPager_Server/Properties/Settings.settings
Normal file
7
SamaPager_Server/Properties/Settings.settings
Normal file
@@ -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>
|
||||||
BIN
SamaPager_Server/Resources/5pagers1shalom.jpg
Normal file
BIN
SamaPager_Server/Resources/5pagers1shalom.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.4 KiB |
BIN
SamaPager_Server/Resources/SamaSplash.png
Normal file
BIN
SamaPager_Server/Resources/SamaSplash.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 182 KiB |
118
SamaPager_Server/SamaPager_Server.csproj
Normal file
118
SamaPager_Server/SamaPager_Server.csproj
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProjectGuid>{6DBA2B59-938C-49F4-8BC1-9853CA60B365}</ProjectGuid>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<RootNamespace>SamaPager_Server</RootNamespace>
|
||||||
|
<AssemblyName>SamaPager_Server</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||||
|
<FileAlignment>512</FileAlignment>
|
||||||
|
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||||
|
<Deterministic>true</Deterministic>
|
||||||
|
</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>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Krypton.Toolkit, Version=95.25.8.235, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Krypton.Toolkit.95.25.8.235\lib\net48\Krypton.Toolkit.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Newtonsoft.Json.13.0.4\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Design" />
|
||||||
|
<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.Net.Http" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="AboutForm.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="AboutForm.Designer.cs">
|
||||||
|
<DependentUpon>AboutForm.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ConfigManager.cs" />
|
||||||
|
<Compile Include="MainForm.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="MainForm.Designer.cs">
|
||||||
|
<DependentUpon>MainForm.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Server.cs" />
|
||||||
|
<Compile Include="Splash.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Splash.Designer.cs">
|
||||||
|
<DependentUpon>Splash.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<EmbeddedResource Include="AboutForm.resx">
|
||||||
|
<DependentUpon>AboutForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="MainForm.resx">
|
||||||
|
<DependentUpon>MainForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Splash.resx">
|
||||||
|
<DependentUpon>Splash.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<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>
|
||||||
|
<DesignTime>True</DesignTime>
|
||||||
|
</Compile>
|
||||||
|
<None Include="packages.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>
|
||||||
|
<None Include="App.config" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\SamaSplash.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\5pagers1shalom.jpg" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
51
SamaPager_Server/Server.cs
Normal file
51
SamaPager_Server/Server.cs
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
|
using System.Net.Sockets;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
internal class Server
|
||||||
|
{
|
||||||
|
internal IPAddress ListeningIp { get; set; }
|
||||||
|
internal int Port { get; set; }
|
||||||
|
internal UdpClient UdpServer { get; set; }
|
||||||
|
internal IPEndPoint ServerEndPoint { get; set; }
|
||||||
|
|
||||||
|
internal Server(IPAddress listeningIP, int port)
|
||||||
|
{
|
||||||
|
this.ListeningIp = listeningIP;
|
||||||
|
this.Port = port;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal string StartServer()
|
||||||
|
{
|
||||||
|
ServerEndPoint = new IPEndPoint(this.ListeningIp, this.Port);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
this.UdpServer = new UdpClient(ServerEndPoint);
|
||||||
|
return $"Listening on {ServerEndPoint}";
|
||||||
|
}
|
||||||
|
catch(Exception ex)
|
||||||
|
{
|
||||||
|
return $"Error ({ex.Message})";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
internal string StartListening()
|
||||||
|
{
|
||||||
|
IPEndPoint receiveEndPoint = ServerEndPoint;
|
||||||
|
byte[] receivedBytes = UdpServer.Receive(ref receiveEndPoint);
|
||||||
|
string receivedMessage = Encoding.UTF8.GetString(receivedBytes);
|
||||||
|
return $"[{DateTime.Now}] {receiveEndPoint}: {receivedMessage}";
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void KillServer()
|
||||||
|
{
|
||||||
|
this.UdpServer.Close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
75
SamaPager_Server/Splash.Designer.cs
generated
Normal file
75
SamaPager_Server/Splash.Designer.cs
generated
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
partial class Splash
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Variabile di progettazione necessaria.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pulire le risorse in uso.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">ha valore true se le risorse gestite devono essere eliminate, false in caso contrario.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Codice generato da Progettazione Windows Form
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Metodo necessario per il supporto della finestra di progettazione. Non modificare
|
||||||
|
/// il contenuto del metodo con l'editor di codice.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
this.timer1 = new System.Windows.Forms.Timer(this.components);
|
||||||
|
this.pictureBox1 = new System.Windows.Forms.PictureBox();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// timer1
|
||||||
|
//
|
||||||
|
this.timer1.Enabled = true;
|
||||||
|
this.timer1.Interval = 2000;
|
||||||
|
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
|
||||||
|
//
|
||||||
|
// pictureBox1
|
||||||
|
//
|
||||||
|
this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.pictureBox1.Image = global::SamaPager_Server.Properties.Resources.SamaSplash;
|
||||||
|
this.pictureBox1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.pictureBox1.Name = "pictureBox1";
|
||||||
|
this.pictureBox1.Size = new System.Drawing.Size(500, 200);
|
||||||
|
this.pictureBox1.TabIndex = 0;
|
||||||
|
this.pictureBox1.TabStop = false;
|
||||||
|
//
|
||||||
|
// Splash
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(500, 200);
|
||||||
|
this.Controls.Add(this.pictureBox1);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||||
|
this.Name = "Splash";
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||||
|
this.Text = "Form1";
|
||||||
|
this.Load += new System.EventHandler(this.Splash_Load);
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.Timer timer1;
|
||||||
|
private System.Windows.Forms.PictureBox pictureBox1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
33
SamaPager_Server/Splash.cs
Normal file
33
SamaPager_Server/Splash.cs
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Data;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace SamaPager_Server
|
||||||
|
{
|
||||||
|
public partial class Splash : Form
|
||||||
|
{
|
||||||
|
public Splash()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Splash_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void timer1_Tick(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
MainForm programma = new MainForm();
|
||||||
|
programma.Show();
|
||||||
|
this.Close();
|
||||||
|
timer1.Stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
123
SamaPager_Server/Splash.resx
Normal file
123
SamaPager_Server/Splash.resx
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=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>
|
||||||
|
<metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
</root>
|
||||||
5
SamaPager_Server/packages.config
Normal file
5
SamaPager_Server/packages.config
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<packages>
|
||||||
|
<package id="Krypton.Toolkit" version="95.25.8.235" targetFramework="net48" />
|
||||||
|
<package id="Newtonsoft.Json" version="13.0.4" targetFramework="net48" />
|
||||||
|
</packages>
|
||||||
BIN
SamaPager_Server/pager.ico
Normal file
BIN
SamaPager_Server/pager.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 173 KiB |
BIN
SamaSplash.psd
Normal file
BIN
SamaSplash.psd
Normal file
Binary file not shown.
BIN
packages/Krypton.Toolkit.95.25.8.235/.signature.p7s
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/.signature.p7s
vendored
Normal file
Binary file not shown.
BIN
packages/Krypton.Toolkit.95.25.8.235/Krypton Stable.png
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/Krypton Stable.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.1 KiB |
BIN
packages/Krypton.Toolkit.95.25.8.235/Krypton.Toolkit.95.25.8.235.nupkg
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/Krypton.Toolkit.95.25.8.235.nupkg
vendored
Normal file
Binary file not shown.
30
packages/Krypton.Toolkit.95.25.8.235/License.md
vendored
Normal file
30
packages/Krypton.Toolkit.95.25.8.235/License.md
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
BSD 3-Clause License
|
||||||
|
|
||||||
|
Copyright (c) 2017 - 2024, Krypton Suite
|
||||||
|
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
list of conditions and the following disclaimer.
|
||||||
|
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its
|
||||||
|
contributors may be used to endorse or promote products derived from
|
||||||
|
this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
335
packages/Krypton.Toolkit.95.25.8.235/README.md
vendored
Normal file
335
packages/Krypton.Toolkit.95.25.8.235/README.md
vendored
Normal file
@@ -0,0 +1,335 @@
|
|||||||
|
# <img src="https://github.com/Krypton-Suite/Standard-Toolkit/blob/master/Krypton.png?raw=true"> Standard Toolkit
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Start Document Outline -->
|
||||||
|
|
||||||
|
* [NuGet Information](#nuget-information)
|
||||||
|
* [Nightly](#nightly)
|
||||||
|
* [Canary](#canary)
|
||||||
|
* [Stable](#stable)
|
||||||
|
* [Documentation](#documentation)
|
||||||
|
* [Contributing to the Standard Toolkit](#contributing-to-the-standard-toolkit)
|
||||||
|
* [Package Support Information](#package-support-information)
|
||||||
|
* [Release Cadence](#release-cadence)
|
||||||
|
* [Package Descriptions](#package-descriptions)
|
||||||
|
* [Installing Pre-Release Versions](#installing-pre-release-versions)
|
||||||
|
* [Supporters](#supporters)
|
||||||
|
* [Toolkit Example images](#toolkit-example-images)
|
||||||
|
* [Discord Server](#discord-server)
|
||||||
|
* [Version History](#version-history)
|
||||||
|
* [Breaking Changes](#breaking-changes)
|
||||||
|
* [V90.00 (2024-11-12 - Build 2411 - November 2024)](v90-24-11-12--build-2411---november-2024)
|
||||||
|
* [Support for .NET 6/7](#support-for-net-67)
|
||||||
|
* [`KryptonButton` Properties](#kryptonbutton-properties)
|
||||||
|
* [API Changes](#api-changes)
|
||||||
|
* [`KryptonInputBox`](#kryptoninputbox)
|
||||||
|
* [Building the Toolkit](#building-the-toolkit)
|
||||||
|
* [V85.00 (2024-06-24 - Build 2406 - June 2024)](#v85-2024-06-24---build-2406---june-2024)
|
||||||
|
* [V80.00 (2023-11-14 - Build 2311 - November 2023)](#v80-2023-11-14---build-2311---november-2023)
|
||||||
|
* [Support for .NET Core 3.1 and .NET 5](#support-for-net-core-31-and-net-5)
|
||||||
|
* [KryptonMessageBoxButtons](#kryptonmessageboxbuttons)
|
||||||
|
* [Palette usages](#palette-usages)
|
||||||
|
* [Depreciation of `KryptonManager.Strings`](#depreciation-of-kryptonmanagerstrings)
|
||||||
|
* [Known Issues & Workarounds](#known-issues--workarounds)
|
||||||
|
* [Introduction](#introduction)
|
||||||
|
* [What is this Repository About?](#what-is-this-repository-about)
|
||||||
|
* [Contributing to this project](#contributing-to-this-project)
|
||||||
|
* [Individual Components](#individual-components)
|
||||||
|
* [Krypton Toolkit](#krypton-toolkit)
|
||||||
|
* [Krypton Ribbon](#krypton-ribbon)
|
||||||
|
* [Krypton Navigator](#krypton-navigator)
|
||||||
|
* [Krypton Workspace](#krypton-workspace)
|
||||||
|
* [Krypton Docking](#krypton-docking)
|
||||||
|
|
||||||
|
<!-- End Document Outline -->
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
|
||||||
|
# NuGet Information
|
||||||
|
|
||||||
|
## Nightly
|
||||||
|
|
||||||
|
| Module Name | Current Version | Github License |
|
||||||
|
|---|---|---|
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Toolkit-000080.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Toolkit.Nightly/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Docking-000080.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Docking.Nightly/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Navigator-000080.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Navigator.Nightly/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Ribbon-000080.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Ribbon.Nightly/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Workspace-000080.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Workspace.Nightly/) |  |
|
||||||
|
|
||||||
|
## Canary
|
||||||
|
|
||||||
|
| Module Name | Current Version | Github License |
|
||||||
|
|---|---|---|
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Toolkit-yellow.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Toolkit.Canary/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Docking-yellow.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Docking.Canary/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Navigator-yellow.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Navigator.Canary/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Ribbon-yellow.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Ribbon.Canary/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Workspace-yellow.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Workspace.Canary/) |  |
|
||||||
|
|
||||||
|
## Stable
|
||||||
|
|
||||||
|
| Module Name | Current Version | Github License |
|
||||||
|
|---|---|---|
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Toolkit-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Toolkit/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Toolkit (Lite)-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Toolkit.Lite/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Docking-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Docking/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Docking (Lite)-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Docking.Lite/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Navigator-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Navigator/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Navigator (Lite)-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Navigator.Lite/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Ribbon-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Ribbon/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Ribbon (Lite)-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Ribbon.Lite/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Workspace-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Workspace/) |  |
|
||||||
|
| <img src="https://img.shields.io/badge/Module-Workspace (Lite)-brightgreen.svg?style=flat-square" /> | [](https://www.nuget.org/packages/Krypton.Workspace.Lite/) |  |
|
||||||
|
|
||||||
|
Keep up-to-date [here](https://github.com/Krypton-Suite/Krypton-Toolkit-Suite-Version-Dashboard)
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
The online help will give an overview of what the toolkit is capable of.
|
||||||
|
|
||||||
|
<a href="https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/index.html"><img src="https://img.shields.io/badge/Documentation-Online Help-9cf.svg?style=flat-square" alt="Online Help" /></a>
|
||||||
|
|
||||||
|
If you require the full API reference, you can download the latest version by clicking the link below.
|
||||||
|
|
||||||
|
<a href="https://github.com/Krypton-Suite/Help-Files/releases"><img src="https://img.shields.io/badge/Documentation-API Reference-9cf.svg?style=flat-square" alt="API Reference" /></a>
|
||||||
|
|
||||||
|
#### Contributing to the Standard Toolkit
|
||||||
|
|
||||||
|
If you are interested in contributing to the Standard Toolkit, please read this [article](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Contributing/Contributing-Guidelines.html) first.
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
## Package Support Information
|
||||||
|
|
||||||
|
Full information about support can be found [here](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Support/Package%20Support%20Information.html)
|
||||||
|
|
||||||
|
### Release Cadence
|
||||||
|
|
||||||
|
See [Krypton Toolkit release cadence](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Support/Package%20Version%20Descriptions.html)
|
||||||
|
|
||||||
|
### Package Descriptions
|
||||||
|
|
||||||
|
To find out more about the differences between `Nightly`, `Canary` and `Stable` packages, please read this [article](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Support/Package%20Version%20Descriptions.html).
|
||||||
|
|
||||||
|
### Installing Pre-Release Versions
|
||||||
|
|
||||||
|
To find out how to install either `Canary` or `Nightly` versions, please check out this [article](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Support/How%20to%20Install%20Pre%20Release%20Packages.html).
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
## Supporters
|
||||||
|
|
||||||
|
Development of the Krypton Standard Toolkit is supported by these generous organisations:
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="200px">
|
||||||
|
<a href="https://www.jetbrains.com/">
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Supporter-Logos/jetbrains-logo.png?raw=true" /></center>
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td width="200px">
|
||||||
|
<a href="https://www.yourkit.com/">
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Supporter-Logos/yourkit-logo.png?raw=true" /></center>
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width="200px">
|
||||||
|
JetBrains provides cutting-edge IDE and developer productivity tools.
|
||||||
|
</td>
|
||||||
|
<td width="200px">
|
||||||
|
YourKit provides a market-leading intelligent <a href="https://www.yourkit.com/features/">Java Profiler</a> and <a href="https://www.yourkit.com/dotnet/features/">.NET Profiler</a>.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
## Toolkit Example images
|
||||||
|
Follow the links to see the different objects and layouts that this framework allows you to do: [Toolkit Demos](https://github.com/Krypton-Suite/Standard-Toolkit-Demos)
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
# Discord Server
|
||||||
|
|
||||||
|
<a href="https://discord.gg/CRjF6fY" alt="Join our Krypton Toolkit community Discord server"><img src="https://img.shields.io/badge/Discord-Join%20our%20server-7289DA?logo=discord&style=flat-square" /></a>
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
<!--# Project & item templates
|
||||||
|
|
||||||
|
<a href="https://tinyurl.com/StandardToolkitTemplates" alt="Download project & item templates"><img src="https://img.shields.io/badge/Templates-Download%20project%20%26%20item%20templates-blueviolet?style=flat-square" /></a>
|
||||||
|
|
||||||
|
=======-->
|
||||||
|
|
||||||
|
# Version History
|
||||||
|
|
||||||
|
<a href="https://github.com/Krypton-Suite/Standard-Toolkit/blob/master/Documents/Changelog/Changelog.md"><img src="https://img.shields.io/badge/Version History-Changelog-brightgreen.svg?style=flat-square" /></a>
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
# Breaking Changes
|
||||||
|
|
||||||
|
## V95.00 (2025-02-01 - Build 2502 - February 2025)
|
||||||
|
* Resolved [#1212](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1842), **[Breaking Change]** `KColorButton` 'drop-down' arrow should be drawn
|
||||||
|
- Create Scaled Drop Glyph and use for colour button and comboDrops
|
||||||
|
- Remove the `PaletteRedirectDropDownButton`
|
||||||
|
- Remove `KryptonPaletteImagesDropDownButton`
|
||||||
|
- **Breaking Change**: Remove `DropDownButtonImages` from designers
|
||||||
|
|
||||||
|
## V90.00 (2024-11-12 - Build 2411 - November 2024)
|
||||||
|
There are list of changes that have occurred during the development of the V90.00 version
|
||||||
|
- [#632](https://github.com/Krypton-Suite/Standard-Toolkit/issues/632), **[Breaking Change]** `KryptonPropertyGrid` should have a customisable back colour.
|
||||||
|
- `KryptonPropertyGrid` now uses the State### sets like the rest of the controls.
|
||||||
|
- Any build breaks in the designers can just be deleted, as the the colouring will be done by the `State####` equivalents
|
||||||
|
- [#1435](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1435), **Breaking Change** Take KMB back to the Winform override (Remove Checkbox etc)
|
||||||
|
- and [#1432](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1432), **Breaking Change placeholder** Copy `KryptonMessageBox` to `KryptonMessageBoxDep`
|
||||||
|
- The introduction of new Parameters elements to the `KryptonMessageBox` is now supported in the `KryptonMessageBoxDep` class
|
||||||
|
- This is so that the `KryptonMessageBox` gets back to being a drop in replacement for the WinForm `MessageBox`
|
||||||
|
- And a start of the introduction of the `KryptonMessageDialog` implementation of the UWP `MessageDialog`
|
||||||
|
- [#1424](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1424), **Breaking Change** `KryptonMessageBox` does not obey tab characters like `MessageBox`
|
||||||
|
- The optional `ContentAlignment` for a `KryptonMessageBox.Show` command is no longer possible.
|
||||||
|
- [#1356](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1356), AppButton colours don't change while switching themes
|
||||||
|
- See https://github.com/Krypton-Suite/Standard-Toolkit/issues/1356#issuecomment-2039412890
|
||||||
|
- `RibbonAppButton` has become `RibbonFileAppButton`
|
||||||
|
- Addition `RibbonFileAppTab` to hold the tab text (Defaults to `File`)
|
||||||
|
- Colours for the `FileAppTab` have been moved into the `StateCommon` area
|
||||||
|
- [#1206](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1206), Remove the `Font Size` (as it is already covered by the actual font !)
|
||||||
|
- [#1224](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1224), Move `GlobalPaletteMode` into `GlobalPalette` and rename
|
||||||
|
- BaseFont is now part of the KryptonManager class, and will override the applied palette font(s)
|
||||||
|
- `CustomPalette` must be derived from the `KryptonCustomPaletteBase` class
|
||||||
|
- `BasePaletteMode` has been removed from `KryptonCustomPaletteBase` class
|
||||||
|
- [#124](https://github.com/Krypton-Suite/Standard-Toolkit/issues/124), When setting AllowFormChrome = false, then the Form Bar should still be Theme rendered
|
||||||
|
- `AllowFormChrome` has been removed and replaced with `UseThemeFormChromeBorderWidth` to better explain what it is doing
|
||||||
|
- It means that a theme can get closer to "Material Design", and that the Title bar can still be themed (And rounded)
|
||||||
|
- [#215](https://github.com/Krypton-Suite/Standard-Toolkit/issues/215), `KryptonTreeView` Multi Node Select
|
||||||
|
- Designer values named `State####Pressed` have changed to `State#####MultiSelect` to reflect usage
|
||||||
|
- New ReeView Designer value `MultiSelect` allows drawing of selected items and retrieval via `CheckedNodes`
|
||||||
|
- [#1268](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1268), Many Krypton Controls have a `CornerRoundingRadius` that overrides the State#### Node Rounding values. Please remove!
|
||||||
|
- `CornerRoundingRadius` overrides **ONLY** the `StateCommon.Border.Rounding` which is incorrect.
|
||||||
|
- All `CornerRoundingRadius` have been removed
|
||||||
|
- [#1269](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1269), Remove AllowFormIntegrate to give consistent experience on all supported OS's
|
||||||
|
- Please check the images in the issue.
|
||||||
|
- To fix: just remove `AllowFormIntegrate` from your deisgner files
|
||||||
|
- [#1266](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1266), Since V 5.400, the QAT button is supposed to perform the close, therefore the Close Form button should not be visible
|
||||||
|
- The RibbonAppButton has a new Designer field for setting the "Form Close Visible" to off by default
|
||||||
|
|
||||||
|
### Support for .NET 6/7
|
||||||
|
As of V90.00, support for .NET 6 and 7 has been removed due to their release cadences.
|
||||||
|
|
||||||
|
|
||||||
|
### `KryptonButton` Properties
|
||||||
|
Some properties previously found in the root such as, `ShowSplitOption`, `UseAsADialogButton`, `UseAsUACElevationButton` and `UACShieldIconSize` are now located in the `Values` section.
|
||||||
|
|
||||||
|
### API Changes
|
||||||
|
If using `KryptonAboutToolkit`, please note that this has been superceded by `KryptonAboutBox`. Or if you use `KryptonThemeBrowserForm`, it has now been moved to `KryptonThemeBrowser` as the public facing API.
|
||||||
|
|
||||||
|
### `KryptonInputBox`
|
||||||
|
The `KryptonInputBox` now uses the new `KryptonInputBoxData` API, to handle data.
|
||||||
|
|
||||||
|
### Building the Toolkit
|
||||||
|
As of V90.00 support for longer path names **will** need to be enabled if you want to build the toolkit yourself. For more details on how to do this, please follow the instructions [here](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Contributing/Allowing-for-Longer-Path-and-File-Names.html).
|
||||||
|
|
||||||
|
## V85.00 (2025-02-01 - Build 2502 (Patch 5) - February 2025)
|
||||||
|
* Resolved [#1212](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1842), **[Breaking Change]** `KColorButton` 'drop-down' arrow should be drawn
|
||||||
|
- Create Scaled Drop Glyph and use for colour button and comboDrops
|
||||||
|
- Remove the `PaletteRedirectDropDownButton`
|
||||||
|
- Remove `KryptonPaletteImagesDropDownButton`
|
||||||
|
- **Breaking Change**: Remove `DropDownButtonImages` from designers
|
||||||
|
|
||||||
|
## V85.00 (2024-06-24 - Build 2406 - June 2024)
|
||||||
|
There are a list of changes that have occurred during the development of the V85.00 version
|
||||||
|
|
||||||
|
* [#1302](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1302), **[Breaking Change]** Font being used by "Professional" theme is pants !
|
||||||
|
- The Option to use `SystemDefault` no longer exists a font rendering hint
|
||||||
|
* [#1508](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1508), **[Breaking Change]** ButtonSpec does not open assigned context menu when clicked.
|
||||||
|
- Added property `ShowDrop`, which displays a drop-down arrow on the button.
|
||||||
|
- When a `KryptonContextMenu` is connected the menu is shown when the button is clicked.
|
||||||
|
- When a WinForms `ContextMenuStrip` is connected the menu is shown when the button is clicked.
|
||||||
|
- When both type of the above ContextMenus are connected the `KryptonContextMenu` takes precedence.
|
||||||
|
- The ButtonSpec's `Type` property does not need setting to "Context" to display the menu.
|
||||||
|
* [#1424](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1424), **[Breaking Change]** `KryptonMessageBox` does not obey tab characters like `MessageBox`
|
||||||
|
|
||||||
|
## V80.00 (2023-11-14 - Build 2311 - November 2023)
|
||||||
|
There are list of changes that have occurred during the development of the V80.00 version
|
||||||
|
|
||||||
|
### Support for .NET Core 3.1 and .NET 5
|
||||||
|
As of V80.00, support for .NET Core 3.1 and .NET 5 has been removed due to their release cadences. It is strongly advised that you migrate your application to .NET 8, as the latest LTS version, or the slightly older .NET 6, if you require a more supported version. If you do not make these mitigations, the packages **will** fail to install when upgrading, if your project is configured to use either .NET Core 3.1 and .NET 5.
|
||||||
|
|
||||||
|
### KryptonMessageBoxButtons
|
||||||
|
- https://github.com/Krypton-Suite/Standard-Toolkit/issues/728:
|
||||||
|
Bring MessageBox States inline with latest .Net 6 by using a new `KryptonMessageBoxButtons` type, which is effectively the same as .NET 6 enum version of `MessageBoxButtons` but backward compatible with .NET Framework 4.6.x onwards.
|
||||||
|
|
||||||
|
### Palette usages
|
||||||
|
- `KryptonPalette` has become `KryptonCustomPaletteBase` to better signify it's usage.
|
||||||
|
- `IPalette` has been removed, and the usage of `PaletteBase` throughout the toolkit is used; to ensure consistent usage.
|
||||||
|
|
||||||
|
### Depreciation of `KryptonManager.Strings`
|
||||||
|
In a effort to support translations, `KryptonManager.Strings` is now obsolete. As such, the new `KryptonLanguageManager` will handle such strings.
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
# Known Issues & Workarounds
|
||||||
|
- [#1109](https://github.com/Krypton-Suite/Standard-Toolkit/issues/1109) - KryptonPropertyGrid 'jagged' text
|
||||||
|
- Some controls can display `Jagged text` when drawing. (i.e. ComboBox contents / PropertyGrid / Extended controls )
|
||||||
|
This is due to the usage of the Legacy API `Application.SetCompatibleTextRenderingDefault` having a value of `true`. Please set it to false.
|
||||||
|
|
||||||
|
- [#665](https://github.com/Krypton-Suite/Standard-Toolkit/issues/665) - Workaround add `net48` or `net481` to your `<TargetFrameworks>` if using .NET 6 or 7
|
||||||
|
|
||||||
|
- .NET 6/7 Designer issues - If you are experiencing designer issues with your project, please refer to [this](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Support/Designer%20Fix.html) for more information
|
||||||
|
|
||||||
|
- ***URGENT:*** If anyone experiences "Double events" such as the one found [here](https://github.com/Krypton-Suite/Standard-Toolkit/issues/666), please can you report it ASAP, so that they can be investigated. Thanks!
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
The Krypton Suite contains user interface components designed to make it quick and easy for developers to create professional looking applications. It provides the essential building blocks needed to create a consistent look and feel across all your products. You can use the built-in palettes to achieve the same appearance as industry standard applications such as Microsoft Office `2007/2010/2013` & Microsoft 365, Visual Studio 2010. Alternatively you can create your own custom palettes to create a completely unique user interface. The Krypton Suite consists of five products called ***Krypton Toolkit***, ***Krypton Ribbon***, ***Krypton Navigator***, ***Krypton Workspace*** and ***Krypton Docking***.
|
||||||
|
|
||||||
|
## What is this Repository About?
|
||||||
|
- Modifications by Peter Wagner (aka Wagnerp), Simon Coghlan (aka Smurf-IV), Giduac &
|
||||||
|
Ahmed-Abdelhameed have been fixing and adding more capabilities to this toolkit.
|
||||||
|
- There is also an Extensions project, which takes these base controls and add more useful complete controls (Currently outside the scope of this help). To find out more, please head to this [link](https://github.com/Krypton-Suite/Extended-Toolkit)
|
||||||
|
- All .Net Versions from 4.6.2 are catered for (interim releases, i.e. releases in-between Long Term Support (LTS) versions of .NET will **only** be supported for the duration of that particular version, usually 24 months.)
|
||||||
|
- New versions of NuGet packages can be obtained via this [link](https://www.nuget.org/profiles/Krypton_Suite), or via your package manager by searching `Krypton.`.
|
||||||
|
- New, major versions are released annually, with patches if needed released throughout that period. Version 90 is expected to release in November 2024.
|
||||||
|
- For tips on how to build the toolkit for yourself, please read the following [article](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Contributing/How-to-Build.html).
|
||||||
|
|
||||||
|
## Contributing to this project
|
||||||
|
|
||||||
|
If you want to contribute to this project, please follow [these](https://krypton-suite.github.io/Standard-Toolkit-Online-Help/Source/Help/Output/articles/Contributing.html) guidelines. All contributions are welcome!
|
||||||
|
|
||||||
|
## Individual Components
|
||||||
|
|
||||||
|
### Krypton Toolkit
|
||||||
|
The Krypton Toolkit provides a set of basic user interface components for free. You can distribute the signed Krypton Toolkit assembly without charge or royalty with your own products. The Krypton Toolkit is great resource for speeding up development of professional looking applications. It works in tandem with the **MenuStrip**, **StatusStrip** and **ToolStrip** controls that come with .NET Framework controls. Using the Krypton Toolkit you can create a great looking application in just minutes.
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonToolkitExampleForm.gif?raw=true" /></center>
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonToolkitExampleGroup.gif?raw=true" /></center>
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonToolkitProgressBarExample.gif?raw=true" /></center>
|
||||||
|
|
||||||
|
### Krypton Ribbon
|
||||||
|
The Krypton Ribbon is designed to mimic the look, feel and operation of the ribbon control seen in the Microsoft Office `2007/2010/2013/365` applications such as Word and Excel. It provides advanced capabilities including the quick access toolbar, contextual tabs and auto shrinking groups. With rich design time support and sample code you can be up and running with the ribbon in no time at all. It integrates with the Krypton Toolkit architecture to ensure a consistent look and feel.
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonRibbonExample.gif?raw=true" /></center>
|
||||||
|
|
||||||
|
### Krypton Navigator
|
||||||
|
The Krypton Navigator is a user interface control that provides the user with a variety of ways to navigate around a set of pages. Think of it as a traditional TabControl on steroids. It has many different modes of operation allowing you to achieve exactly the right operation for your application. It integrates with the Krypton Toolkit architecture to ensure a consistent look and feel.
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonNavigatorExample.gif?raw=true" /></center>
|
||||||
|
|
||||||
|
### Krypton Workspace
|
||||||
|
The Krypton Workspace allows a document area to be created that the user can customise by dragging and dropping pages into new positions. Similar to the Visual Studio document area but with far greater flexibility and functionality. Each cell within the workspace uses an instance of the Krypton Navigator allowing a wide range of options for organising and displaying pages. It integrates with the Krypton Toolkit architecture to ensure a consistent look and feel.
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonWorkspaceExample.gif?raw=true" /></center>
|
||||||
|
|
||||||
|
### Krypton Docking
|
||||||
|
The Krypton Docking set of components allow the user to drag and drop docking pages into new locations in order to customise the organisation of the application content. It allows this in a way similar to that of Visual Studio 2008/2010. Each docking area uses an instance of the Krypton Workspace allowing a wide range of options for organising and displaying pages. It integrates with the Krypton Toolkit architecture to ensure a consistent look and feel.
|
||||||
|
|
||||||
|
<center><img src="https://github.com/Krypton-Suite/Documentation/blob/main/Assets/Standard-Toolkit/KryptonDockingExampleCustomised.gif?raw=true" /></center>
|
||||||
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net462/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net462/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138834
packages/Krypton.Toolkit.95.25.8.235/lib/net462/Krypton.Toolkit.xml
vendored
Normal file
138834
packages/Krypton.Toolkit.95.25.8.235/lib/net462/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net47/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net47/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net47/Krypton.Toolkit.xml
vendored
Normal file
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net47/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net471/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net471/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net471/Krypton.Toolkit.xml
vendored
Normal file
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net471/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net472/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net472/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net472/Krypton.Toolkit.xml
vendored
Normal file
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net472/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net48/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net48/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net48/Krypton.Toolkit.xml
vendored
Normal file
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net48/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net481/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net481/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net481/Krypton.Toolkit.xml
vendored
Normal file
138512
packages/Krypton.Toolkit.95.25.8.235/lib/net481/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net8.0-windows7.0/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net8.0-windows7.0/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138542
packages/Krypton.Toolkit.95.25.8.235/lib/net8.0-windows7.0/Krypton.Toolkit.xml
vendored
Normal file
138542
packages/Krypton.Toolkit.95.25.8.235/lib/net8.0-windows7.0/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net9.0-windows7.0/Krypton.Toolkit.dll
vendored
Normal file
BIN
packages/Krypton.Toolkit.95.25.8.235/lib/net9.0-windows7.0/Krypton.Toolkit.dll
vendored
Normal file
Binary file not shown.
138542
packages/Krypton.Toolkit.95.25.8.235/lib/net9.0-windows7.0/Krypton.Toolkit.xml
vendored
Normal file
138542
packages/Krypton.Toolkit.95.25.8.235/lib/net9.0-windows7.0/Krypton.Toolkit.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/.signature.p7s
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/.signature.p7s
vendored
Normal file
Binary file not shown.
20
packages/Newtonsoft.Json.13.0.4/LICENSE.md
vendored
Normal file
20
packages/Newtonsoft.Json.13.0.4/LICENSE.md
vendored
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2007 James Newton-King
|
||||||
|
|
||||||
|
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.
|
||||||
BIN
packages/Newtonsoft.Json.13.0.4/Newtonsoft.Json.13.0.4.nupkg
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/Newtonsoft.Json.13.0.4.nupkg
vendored
Normal file
Binary file not shown.
71
packages/Newtonsoft.Json.13.0.4/README.md
vendored
Normal file
71
packages/Newtonsoft.Json.13.0.4/README.md
vendored
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
#  Json.NET
|
||||||
|
|
||||||
|
[](https://www.nuget.org/packages/Newtonsoft.Json/)
|
||||||
|
[](https://dev.azure.com/jamesnk/Public/_build/latest?definitionId=8)
|
||||||
|
|
||||||
|
Json.NET is a popular high-performance JSON framework for .NET
|
||||||
|
|
||||||
|
## Serialize JSON
|
||||||
|
|
||||||
|
```csharp
|
||||||
|
Product product = new Product();
|
||||||
|
product.Name = "Apple";
|
||||||
|
product.Expiry = new DateTime(2008, 12, 28);
|
||||||
|
product.Sizes = new string[] { "Small" };
|
||||||
|
|
||||||
|
string json = JsonConvert.SerializeObject(product);
|
||||||
|
// {
|
||||||
|
// "Name": "Apple",
|
||||||
|
// "Expiry": "2008-12-28T00:00:00",
|
||||||
|
// "Sizes": [
|
||||||
|
// "Small"
|
||||||
|
// ]
|
||||||
|
// }
|
||||||
|
```
|
||||||
|
|
||||||
|
## Deserialize JSON
|
||||||
|
|
||||||
|
```csharp
|
||||||
|
string json = @"{
|
||||||
|
'Name': 'Bad Boys',
|
||||||
|
'ReleaseDate': '1995-4-7T00:00:00',
|
||||||
|
'Genres': [
|
||||||
|
'Action',
|
||||||
|
'Comedy'
|
||||||
|
]
|
||||||
|
}";
|
||||||
|
|
||||||
|
Movie m = JsonConvert.DeserializeObject<Movie>(json);
|
||||||
|
|
||||||
|
string name = m.Name;
|
||||||
|
// Bad Boys
|
||||||
|
```
|
||||||
|
|
||||||
|
## LINQ to JSON
|
||||||
|
|
||||||
|
```csharp
|
||||||
|
JArray array = new JArray();
|
||||||
|
array.Add("Manual text");
|
||||||
|
array.Add(new DateTime(2000, 5, 23));
|
||||||
|
|
||||||
|
JObject o = new JObject();
|
||||||
|
o["MyArray"] = array;
|
||||||
|
|
||||||
|
string json = o.ToString();
|
||||||
|
// {
|
||||||
|
// "MyArray": [
|
||||||
|
// "Manual text",
|
||||||
|
// "2000-05-23T00:00:00"
|
||||||
|
// ]
|
||||||
|
// }
|
||||||
|
```
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
- [Homepage](https://www.newtonsoft.com/json)
|
||||||
|
- [Documentation](https://www.newtonsoft.com/json/help)
|
||||||
|
- [NuGet Package](https://www.nuget.org/packages/Newtonsoft.Json)
|
||||||
|
- [Release Notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
|
||||||
|
- [Contributing Guidelines](https://github.com/JamesNK/Newtonsoft.Json/blob/master/CONTRIBUTING.md)
|
||||||
|
- [License](https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md)
|
||||||
|
- [Stack Overflow](https://stackoverflow.com/questions/tagged/json.net)
|
||||||
BIN
packages/Newtonsoft.Json.13.0.4/lib/net20/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/net20/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
10713
packages/Newtonsoft.Json.13.0.4/lib/net20/Newtonsoft.Json.xml
vendored
Normal file
10713
packages/Newtonsoft.Json.13.0.4/lib/net20/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/net35/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/net35/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
9861
packages/Newtonsoft.Json.13.0.4/lib/net35/Newtonsoft.Json.xml
vendored
Normal file
9861
packages/Newtonsoft.Json.13.0.4/lib/net35/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/net40/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/net40/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
10061
packages/Newtonsoft.Json.13.0.4/lib/net40/Newtonsoft.Json.xml
vendored
Normal file
10061
packages/Newtonsoft.Json.13.0.4/lib/net40/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/net45/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/net45/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
11698
packages/Newtonsoft.Json.13.0.4/lib/net45/Newtonsoft.Json.xml
vendored
Normal file
11698
packages/Newtonsoft.Json.13.0.4/lib/net45/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/net6.0/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/net6.0/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
11431
packages/Newtonsoft.Json.13.0.4/lib/net6.0/Newtonsoft.Json.xml
vendored
Normal file
11431
packages/Newtonsoft.Json.13.0.4/lib/net6.0/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.0/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.0/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
11386
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.0/Newtonsoft.Json.xml
vendored
Normal file
11386
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.0/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.3/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.3/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
11508
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.3/Newtonsoft.Json.xml
vendored
Normal file
11508
packages/Newtonsoft.Json.13.0.4/lib/netstandard1.3/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/lib/netstandard2.0/Newtonsoft.Json.dll
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/lib/netstandard2.0/Newtonsoft.Json.dll
vendored
Normal file
Binary file not shown.
11673
packages/Newtonsoft.Json.13.0.4/lib/netstandard2.0/Newtonsoft.Json.xml
vendored
Normal file
11673
packages/Newtonsoft.Json.13.0.4/lib/netstandard2.0/Newtonsoft.Json.xml
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
packages/Newtonsoft.Json.13.0.4/packageIcon.png
vendored
Normal file
BIN
packages/Newtonsoft.Json.13.0.4/packageIcon.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.7 KiB |
Reference in New Issue
Block a user