Merge branch 'feature/V1.1' of http://222.96.13.116/Million into feature/V1.1

This commit is contained in:
jwlee
2023-05-16 13:31:47 +09:00
8 changed files with 106 additions and 97 deletions

View File

@@ -350,10 +350,10 @@ namespace Million
sellExceptionScript.regularExpressionString = savedResult.SellExceptionRegularExpression;
var dic = new Dictionary<string, List<SearchResult>>();
//Parallel.For(0, tableList.Count, i =>
//{
for (var i = 0; i < tableList.Count; i++)
Parallel.For(0, tableList.Count, i =>
{
// for (var i = 0; i < tableList.Count; i++)
//{
var market = tableList[i];
var distinctIndicator = IndicatorSetupManager.Distinct(totalIndicator);
@@ -369,8 +369,8 @@ namespace Million
market, distinctIndicator, overlapBuyManagementList, buyScript, sellScript, sellExceptionScript);
dic[market.CoinFullName] = list;
}
}
//});
//}
});
foreach (var item in dic.Keys)
{
@@ -455,8 +455,11 @@ namespace Million
var totalCandleTypeList = totalIndicator.Select(t => t.MCandleTimeType).ToList();
var maxCandleType = totalCandleTypeList.Max();
var minMaxCandleType = totalCandleTypeList.Where(t => t < MCandleTimeType.H1).Max();
var list = totalCandleTypeList.Where(t => t < MCandleTimeType.H1).ToList();
var minMaxCandleType = MCandleTimeType.M1;
if (!(list == null || list.Count == 0))
minMaxCandleType = list.Max();
var buyList = new List<CandleDataList>();
var subBuyList = new List<CandleDataList>();

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
</startup>
</configuration>
</configuration>

View File

@@ -39,6 +39,7 @@
this.textBox_log.Location = new System.Drawing.Point(12, 12);
this.textBox_log.Multiline = true;
this.textBox_log.Name = "textBox_log";
this.textBox_log.ReadOnly = true;
this.textBox_log.Size = new System.Drawing.Size(284, 579);
this.textBox_log.TabIndex = 0;
//

View File

@@ -1,14 +1,8 @@
using System;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using Newtonsoft.Json;
@@ -28,7 +22,7 @@ namespace Million_Update_Server
private void writeLog(string text)
{
log = text + log;
log = text+"\r\n" + log;
Invoke(new MethodInvoker(delegate ()
{
@@ -72,43 +66,18 @@ namespace Million_Update_Server
try
{
// 수신한 데이터를 저장할 버퍼
byte[] messageBuffer = new byte[4096];
// 받은 데이터의 총 길이
int bytesRead;
while (true)
string data = "";
do
{
bytesRead = 0;
try
{
// 클라이언트에서 데이터 수신 대기
bytesRead = clientStream.Read(messageBuffer, 0, 4096);
}
catch
{
// 연결이 끊어졌을 경우 예외 발생
break;
}
byte[] buffer = new byte[tcpClient.ReceiveBufferSize];
int bytesRead = clientStream.Read(buffer, 0, buffer.Length);
data += Encoding.UTF8.GetString(buffer, 0, bytesRead);
} while (clientStream.DataAvailable);
// 수신한 데이터가 없을 경우
if (bytesRead == 0)
{
// 연결이 끊어졌음을 알리기 위해 예외 발생
throw new Exception("연결이 끊어졌습니다.");
}
var receivedPeople = JsonConvert.DeserializeObject<Million.SaveData.SavedResultData>(data);
// 수신한 데이터를 문자열로 변환
string message = Encoding.UTF8.GetString(messageBuffer, 0, bytesRead);
// 문자열을 Person 객체로 역직렬화
/*Person person = JsonConvert.DeserializeObject<Person>(message);
// 수신한 Person 객체를 출력
Console.WriteLine("수신한 Person 객체:");
Console.WriteLine("이름: " + person.Name);
Console.WriteLine("나이: " + person.Age);*/
}
}
catch (Exception ex)
{

View File

@@ -8,13 +8,29 @@
<OutputType>WinExe</OutputType>
<RootNamespace>Million_Update_Server</RootNamespace>
<AssemblyName>Million Update Server</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<PlatformTarget>x64</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
@@ -68,6 +84,7 @@
<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">
@@ -83,5 +100,23 @@
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Million\Million Core.csproj">
<Project>{10ef08cb-bf38-4882-a92a-30db34e8e8bd}</Project>
<Name>Million Core</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.8">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4.8%28x86 및 x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<PublishUrlHistory>publish\</PublishUrlHistory>
<InstallUrlHistory />
<SupportUrlHistory />
<UpdateUrlHistory />
<BootstrapperUrlHistory />
<ErrorReportUrlHistory />
<FallbackCulture>ko-KR</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
</PropertyGroup>
</Project>

View File

@@ -8,62 +8,54 @@
// </auto-generated>
//------------------------------------------------------------------------------
namespace Million_Update_Server.Properties
{
namespace Million_Update_Server.Properties {
using System;
/// <summary>
/// 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
/// </summary>
// 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
// 클래스에서 자동으로 생성되었습니다.
// 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여
// ResGen을 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
// 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을
// 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
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()
{
internal Resources() {
}
/// <summary>
/// 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Million_Update_Server.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대해 현재 스레드의 CurrentUICulture 속성을
/// 재정의합니다.
/// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대한 현재 스레드의 CurrentUICulture
/// 속성을 재정의합니다.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set
{
set {
resourceCulture = value;
}
}

View File

@@ -1,28 +1,24 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
// 이 코드는 도구를 사용하여 생성되었습니다.
// 런타임 버전:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
// 이러한 변경 내용이 손실됩니다.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Million_Update_Server.Properties
{
namespace Million_Update_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
{
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.7.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
{
public static Settings Default {
get {
return defaultInstance;
}
}