first commit
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
using System;
|
||||
using System.Net;
|
||||
using System.Net.Sockets;
|
||||
using System.Reflection;
|
||||
using System.Reflection.Metadata;
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class Peer {
|
||||
private readonly TcpListener _listener;
|
||||
private string _targetIp = "";
|
||||
private int _targetPort = 0;
|
||||
private int _port = 0;
|
||||
private string _name = "";
|
||||
private bool running = true;
|
||||
private bool hasConnected = false;
|
||||
private bool userOnline = false;
|
||||
|
||||
public Peer(int port, string targetIp, int targetPort, string name) {
|
||||
_listener = new TcpListener(IPAddress.Any, port);
|
||||
_port = port;
|
||||
_targetIp = targetIp;
|
||||
_targetPort = targetPort;
|
||||
_name = name;
|
||||
}
|
||||
|
||||
public async Task Start(){
|
||||
Task listen = StartListening();
|
||||
Task chat = StartChat();
|
||||
|
||||
await Task.WhenAll(listen, chat);
|
||||
}
|
||||
|
||||
private async Task StartListening(){
|
||||
_listener.Start();
|
||||
Console.WriteLine($"[info] Nasłuchuje na: 127.0.0.1:{_port}");
|
||||
while(running){
|
||||
try {
|
||||
TcpClient client = await _listener.AcceptTcpClientAsync();
|
||||
_ = Task.Run(() => HandleClient(client));
|
||||
} catch(Exception ex){
|
||||
Console.WriteLine($"[błąd] Wystąpił nieoczekiwany błąd przy nasłuchiwaniu: {ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private async Task HandleClient(TcpClient client) {
|
||||
try {
|
||||
using NetworkStream stream = client.GetStream();
|
||||
using StreamReader reader = new(stream, Encoding.UTF8);
|
||||
while(running){
|
||||
string? message = await reader.ReadLineAsync();
|
||||
if(message == null) break;
|
||||
|
||||
Content? contentData = JsonSerializer.Deserialize<Content>(message);
|
||||
if(contentData == null) break;
|
||||
|
||||
ProcessMessage(contentData);
|
||||
}
|
||||
} catch(Exception ex){
|
||||
Console.WriteLine(ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
private void ProcessMessage(Content contentData){
|
||||
try {
|
||||
ClearConsoleLine();
|
||||
Console.SetCursorPosition(0, Console.CursorTop - 1);
|
||||
if(contentData.Message == "!exit"){
|
||||
running = false;
|
||||
Console.WriteLine($"\n[info] Użytkownik {contentData.Sender} zakończył sesję");
|
||||
}
|
||||
|
||||
if(contentData.Message.Contains("dołączył/a do sesji") && !userOnline){
|
||||
SendMessage($"jest online! Przywitaj się :D", false).Wait();
|
||||
}
|
||||
|
||||
if(contentData.ByUser){
|
||||
Console.WriteLine($"\n[{contentData.SentAt}] {contentData.Sender}: {contentData.Message}");
|
||||
} else {
|
||||
Console.WriteLine($"\n[info] [{contentData.SentAt}] Użytkownik {contentData.Sender} {contentData.Message}");
|
||||
}
|
||||
|
||||
Console.Write("> ");
|
||||
} catch (Exception ex) {
|
||||
Console.WriteLine(ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
private async Task StartChat(){
|
||||
while(running){
|
||||
if(!hasConnected){
|
||||
await SendMessage("dołączył/a do sesji", false);
|
||||
hasConnected = true;
|
||||
}
|
||||
ClearConsoleLine();
|
||||
Console.SetCursorPosition(0, Console.CursorTop - 1);
|
||||
Console.Write("\n> ");
|
||||
string? message = Console.ReadLine();
|
||||
|
||||
if(message == "!exit"){
|
||||
await SendMessage("!exit", false);
|
||||
await SendMessage("opuścił/a sesję", false);
|
||||
running = false;
|
||||
break;
|
||||
} else {
|
||||
await SendMessage(message ?? "", true);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private async Task SendMessage(string message, bool by_user){
|
||||
try {
|
||||
TcpClient client = new ();
|
||||
await client.ConnectAsync(_targetIp, _targetPort);
|
||||
|
||||
Content data = new() { Sender = _name, IpAddress = $"127.0.0.1:{_port}", Message = message, SentAt = DateTime.Now, ByUser = by_user };
|
||||
string json = JsonSerializer.Serialize(data);
|
||||
|
||||
using NetworkStream stream = client.GetStream();
|
||||
using StreamWriter writer = new(stream, Encoding.UTF8) { AutoFlush = true };
|
||||
await writer.WriteAsync(json);
|
||||
|
||||
if(by_user){
|
||||
ClearConsoleLine();
|
||||
Console.SetCursorPosition(0, Console.CursorTop - 2);
|
||||
Console.WriteLine($"\n[{DateTime.Now}] Ja: {message}");
|
||||
}
|
||||
} catch(Exception ex){
|
||||
if(userOnline)
|
||||
Console.WriteLine($"[błąd] Nie udało się wysłać wiadomości: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void ClearConsoleLine(){
|
||||
int cur = Console.CursorTop;
|
||||
Console.SetCursorPosition(0, Console.CursorTop);
|
||||
Console.Write(new string(' ', Console.WindowWidth));
|
||||
Console.SetCursorPosition(0, cur);
|
||||
}
|
||||
}
|
||||
|
||||
public class Content {
|
||||
public string Sender { get; set; } = "";
|
||||
public string Message { get; set; } = "";
|
||||
public string IpAddress { get; set; } = "";
|
||||
public DateTime SentAt { get; set;}
|
||||
public bool ByUser { get; set; }
|
||||
}
|
||||
Executable
+10
@@ -0,0 +1,10 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net9.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.5.2.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PeerToPeer_Messenger", "PeerToPeer_Messenger.csproj", "{DEBFE5BC-9B40-D7C4-B922-7DE39176AA46}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{DEBFE5BC-9B40-D7C4-B922-7DE39176AA46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DEBFE5BC-9B40-D7C4-B922-7DE39176AA46}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DEBFE5BC-9B40-D7C4-B922-7DE39176AA46}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DEBFE5BC-9B40-D7C4-B922-7DE39176AA46}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {E4C633F1-4F75-4DEF-BAAD-CFFF486A78DB}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using System.Net;
|
||||
using System.Net.Sockets;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class Program {
|
||||
public static async Task Main(string[] args) {
|
||||
string? targetIp = "";
|
||||
int targetPort = 0;
|
||||
|
||||
try {
|
||||
Console.Clear();
|
||||
Console.WriteLine("Jak się nazywasz?");
|
||||
string name = Console.ReadLine() ?? "User";
|
||||
|
||||
Console.WriteLine("Wybierz port, którym będziesz posługiwał się do P2P: ");
|
||||
int port = int.Parse(Console.ReadLine() ?? "5000");
|
||||
|
||||
Console.WriteLine("Wpisz adres IP odbiorcy: ");
|
||||
targetIp = Console.ReadLine();
|
||||
|
||||
Console.WriteLine("Podaj port odbiorcy: ");
|
||||
targetPort = int.Parse(Console.ReadLine() ?? "5001");
|
||||
|
||||
Console.Clear();
|
||||
|
||||
var peer = new Peer(port, targetIp ?? "127.0.0.1", targetPort, name);
|
||||
await peer.Start();
|
||||
} catch(Exception ex){
|
||||
Console.WriteLine(ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
Executable
BIN
Binary file not shown.
+23
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"runtimeTarget": {
|
||||
"name": ".NETCoreApp,Version=v9.0",
|
||||
"signature": ""
|
||||
},
|
||||
"compilationOptions": {},
|
||||
"targets": {
|
||||
".NETCoreApp,Version=v9.0": {
|
||||
"PeerToPeer_Messenger/1.0.0": {
|
||||
"runtime": {
|
||||
"PeerToPeer_Messenger.dll": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"libraries": {
|
||||
"PeerToPeer_Messenger/1.0.0": {
|
||||
"type": "project",
|
||||
"serviceable": false,
|
||||
"sha512": ""
|
||||
}
|
||||
}
|
||||
}
|
||||
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"runtimeOptions": {
|
||||
"tfm": "net9.0",
|
||||
"framework": {
|
||||
"name": "Microsoft.NETCore.App",
|
||||
"version": "9.0.0"
|
||||
},
|
||||
"configProperties": {
|
||||
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
// <autogenerated />
|
||||
using System;
|
||||
using System.Reflection;
|
||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v9.0", FrameworkDisplayName = ".NET 9.0")]
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: System.Reflection.AssemblyCompanyAttribute("PeerToPeer_Messenger")]
|
||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
|
||||
[assembly: System.Reflection.AssemblyProductAttribute("PeerToPeer_Messenger")]
|
||||
[assembly: System.Reflection.AssemblyTitleAttribute("PeerToPeer_Messenger")]
|
||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||
|
||||
// Generated by the MSBuild WriteCodeFragment class.
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
c424b8d42f3704b2cdc8e26f70ca6efef32bc8e32676eff8162a7edfb2be94ed
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
is_global = true
|
||||
build_property.TargetFramework = net9.0
|
||||
build_property.TargetPlatformMinVersion =
|
||||
build_property.UsingMicrosoftNETSdkWeb =
|
||||
build_property.ProjectTypeGuids =
|
||||
build_property.InvariantGlobalization =
|
||||
build_property.PlatformNeutralAssembly =
|
||||
build_property.EnforceExtendedAnalyzerRules =
|
||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||
build_property.RootNamespace = PeerToPeer_Messenger
|
||||
build_property.ProjectDir = /Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/
|
||||
build_property.EnableComHosting =
|
||||
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||
build_property.EffectiveAnalysisLevelStyle = 9.0
|
||||
build_property.EnableCodeStyleSeverity =
|
||||
@@ -0,0 +1,8 @@
|
||||
// <auto-generated/>
|
||||
global using global::System;
|
||||
global using global::System.Collections.Generic;
|
||||
global using global::System.IO;
|
||||
global using global::System.Linq;
|
||||
global using global::System.Net.Http;
|
||||
global using global::System.Threading;
|
||||
global using global::System.Threading.Tasks;
|
||||
BIN
Binary file not shown.
@@ -0,0 +1 @@
|
||||
5edb3c008946c394435d37e2908a97d499b558e475364e8e500ae5707d605230
|
||||
@@ -0,0 +1,14 @@
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.GeneratedMSBuildEditorConfig.editorconfig
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.AssemblyInfoInputs.cache
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.AssemblyInfo.cs
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.csproj.CoreCompileInputs.cache
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/bin/Debug/net9.0/PeerToPeer_Messenger
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/bin/Debug/net9.0/PeerToPeer_Messenger.deps.json
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/bin/Debug/net9.0/PeerToPeer_Messenger.runtimeconfig.json
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/bin/Debug/net9.0/PeerToPeer_Messenger.dll
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/bin/Debug/net9.0/PeerToPeer_Messenger.pdb
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.dll
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/refint/PeerToPeer_Messenger.dll
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.pdb
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/PeerToPeer_Messenger.genruntimeconfig.cache
|
||||
/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/Debug/net9.0/ref/PeerToPeer_Messenger.dll
|
||||
Executable
BIN
Binary file not shown.
@@ -0,0 +1 @@
|
||||
60029226d177ef366457010af00a0d531f8a7c9ee1cea76d074eb032522c319d
|
||||
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
+69
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"format": 1,
|
||||
"restore": {
|
||||
"/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj": {}
|
||||
},
|
||||
"projects": {
|
||||
"/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj",
|
||||
"projectName": "PeerToPeer_Messenger",
|
||||
"projectPath": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj",
|
||||
"packagesPath": "/Users/krzysiek/.nuget/packages/",
|
||||
"outputPath": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/",
|
||||
"projectStyle": "PackageReference",
|
||||
"configFilePaths": [
|
||||
"/Users/krzysiek/.nuget/NuGet/NuGet.Config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
"net9.0"
|
||||
],
|
||||
"sources": {
|
||||
"/usr/local/share/dotnet/library-packs": {},
|
||||
"https://api.nuget.org/v3/index.json": {},
|
||||
"https://tizen.myget.org/F/dotnet/api/v3/index.json": {}
|
||||
},
|
||||
"frameworks": {
|
||||
"net9.0": {
|
||||
"targetAlias": "net9.0",
|
||||
"projectReferences": {}
|
||||
}
|
||||
},
|
||||
"warningProperties": {
|
||||
"warnAsError": [
|
||||
"NU1605"
|
||||
]
|
||||
},
|
||||
"restoreAuditProperties": {
|
||||
"enableAudit": "true",
|
||||
"auditLevel": "low",
|
||||
"auditMode": "direct"
|
||||
},
|
||||
"SdkAnalysisLevel": "9.0.200"
|
||||
},
|
||||
"frameworks": {
|
||||
"net9.0": {
|
||||
"targetAlias": "net9.0",
|
||||
"imports": [
|
||||
"net461",
|
||||
"net462",
|
||||
"net47",
|
||||
"net471",
|
||||
"net472",
|
||||
"net48",
|
||||
"net481"
|
||||
],
|
||||
"assetTargetFallback": true,
|
||||
"warn": true,
|
||||
"frameworkReferences": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"privateAssets": "all"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "/usr/local/share/dotnet/sdk/9.0.202/PortableRuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">/Users/krzysiek/.nuget/packages/</NuGetPackageRoot>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">/Users/krzysiek/.nuget/packages/</NuGetPackageFolders>
|
||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.13.1</NuGetToolVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<SourceRoot Include="/Users/krzysiek/.nuget/packages/" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
|
||||
Executable
+74
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"version": 3,
|
||||
"targets": {
|
||||
"net9.0": {}
|
||||
},
|
||||
"libraries": {},
|
||||
"projectFileDependencyGroups": {
|
||||
"net9.0": []
|
||||
},
|
||||
"packageFolders": {
|
||||
"/Users/krzysiek/.nuget/packages/": {}
|
||||
},
|
||||
"project": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj",
|
||||
"projectName": "PeerToPeer_Messenger",
|
||||
"projectPath": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj",
|
||||
"packagesPath": "/Users/krzysiek/.nuget/packages/",
|
||||
"outputPath": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/obj/",
|
||||
"projectStyle": "PackageReference",
|
||||
"configFilePaths": [
|
||||
"/Users/krzysiek/.nuget/NuGet/NuGet.Config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
"net9.0"
|
||||
],
|
||||
"sources": {
|
||||
"/usr/local/share/dotnet/library-packs": {},
|
||||
"https://api.nuget.org/v3/index.json": {},
|
||||
"https://tizen.myget.org/F/dotnet/api/v3/index.json": {}
|
||||
},
|
||||
"frameworks": {
|
||||
"net9.0": {
|
||||
"targetAlias": "net9.0",
|
||||
"projectReferences": {}
|
||||
}
|
||||
},
|
||||
"warningProperties": {
|
||||
"warnAsError": [
|
||||
"NU1605"
|
||||
]
|
||||
},
|
||||
"restoreAuditProperties": {
|
||||
"enableAudit": "true",
|
||||
"auditLevel": "low",
|
||||
"auditMode": "direct"
|
||||
},
|
||||
"SdkAnalysisLevel": "9.0.200"
|
||||
},
|
||||
"frameworks": {
|
||||
"net9.0": {
|
||||
"targetAlias": "net9.0",
|
||||
"imports": [
|
||||
"net461",
|
||||
"net462",
|
||||
"net47",
|
||||
"net471",
|
||||
"net472",
|
||||
"net48",
|
||||
"net481"
|
||||
],
|
||||
"assetTargetFallback": true,
|
||||
"warn": true,
|
||||
"frameworkReferences": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"privateAssets": "all"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "/usr/local/share/dotnet/sdk/9.0.202/PortableRuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Executable
+8
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"version": 2,
|
||||
"dgSpecHash": "beA8EarBYH0=",
|
||||
"success": true,
|
||||
"projectFilePath": "/Users/krzysiek/Projekty/PRYWATNE/Desktopowe/CSharp/PeerToPeer_Messenger/PeerToPeer_Messenger.csproj",
|
||||
"expectedPackageFiles": [],
|
||||
"logs": []
|
||||
}
|
||||
Reference in New Issue
Block a user