浏览代码

测试

样式分支
applelon 2 年前
父节点
当前提交
14908f552e
共有 24 个文件被更改,包括 375 次插入68 次删除
  1. +9
    -0
      BPASmartClient.Business/BPASmartClient.Business.csproj
  2. +12
    -0
      BPASmartClient.Business/DataStorage.cs
  3. +134
    -0
      BPASmartClient.Business/InternetInfo.cs
  4. +43
    -0
      BPASmartClient.Business/MainConsole.cs
  5. +0
    -0
      BPASmartClient.Business/Plugin/ConfigMgr.cs
  6. +7
    -0
      BPASmartClient.Business/Plugin/DeviceMgr.cs
  7. +0
    -0
      BPASmartClient.Business/Plugin/IPlugin.cs
  8. +44
    -0
      BPASmartClient.Business/Plugin/MQTTMgr.cs
  9. +20
    -0
      BPASmartClient.Business/Plugin/OrderProxy.cs
  10. +0
    -0
      BPASmartClient.Business/Plugin/Plugin.cs
  11. +39
    -0
      BPASmartClient.Business/TopicDefine.cs
  12. +4
    -0
      BPASmartClient.Device/BPASmartClient.Device.csproj
  13. +9
    -1
      BPASmartClient.Device/BaseDevice.cs
  14. +9
    -1
      BPASmartClient.Device/IDevice.cs
  15. +0
    -12
      BPASmartClient.DeviceProxy/BPASmartClient.DeviceProxy.csproj
  16. +0
    -26
      BPASmartClient.DeviceProxy/DeviceMgr.cs
  17. +4
    -5
      BPASmartClient.MQTT/MqttHelper.cs
  18. +4
    -0
      BPASmartClient.MorkT/BPASmartClient.MorkT.csproj
  19. +2
    -0
      BPASmartClient.MorkT/Device_MorkT.cs
  20. +0
    -7
      BPASmartClient.OrderProxy/Class1.cs
  21. +25
    -0
      BPASmartClient/App.config
  22. +1
    -0
      BPASmartClient/BPASmartClient.csproj
  23. +1
    -1
      BPASmartClient/MainWindow.xaml.cs
  24. +8
    -15
      SmartClient.sln

+ 9
- 0
BPASmartClient.Business/BPASmartClient.Business.csproj 查看文件

@@ -6,10 +6,19 @@
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BPA.ApolloClient" Version="1.0.9" />
<PackageReference Include="BPA.Message" Version="1.0.9" />
<PackageReference Include="Microsoft.Extensions.Configuration" Version="6.0.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="6.0.0" />
<PackageReference Include="System.Configuration.ConfigurationManager" Version="6.0.0" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\BPASmartClient.Device\BPASmartClient.Device.csproj" />
<ProjectReference Include="..\BPASmartClient.Helper\BPASmartClient.Helper.csproj" />
<ProjectReference Include="..\BPASmartClient.Model\BPASmartClient.Model.csproj" />
<ProjectReference Include="..\BPASmartClient.MQTT\BPASmartClient.MQTT.csproj" />
</ItemGroup>

</Project>

+ 12
- 0
BPASmartClient.Business/DataStorage.cs 查看文件

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.Business
{
public class DataStorage
{
}
}

+ 134
- 0
BPASmartClient.Business/InternetInfo.cs 查看文件

@@ -0,0 +1,134 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using System.IO;
using Microsoft.Extensions.Configuration;
using System.Threading;
using BPASmartClient.Helper;
using BPASmartClient.Message;
using BPA.ApolloClient;

namespace BPASmartClient.Business
{
/// <summary>
/// 网络信息数据
/// </summary>
public class InternetInfo
{
/// <summary>
/// 配置初始化
/// </summary>
public static void InitConfig()
{
NetworkConnectState = UniversalHelper.GetInstance().GetNetworkState();
while (!NetworkConnectState)
{
NetworkConnectState = UniversalHelper.GetInstance().GetNetworkState();
Thread.Sleep(2000);
}

ClientId = int.Parse(System.Configuration.ConfigurationManager.AppSettings["ClientId"]);
IConfigurationBuilder configurationBuilder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory());
configurationBuilder.AddApolloConfiguration(p =>
{
p.AppId = "dev1_order";
p.MetaServer = "http://10.2.1.21:28070/";
p.Namespaces = new List<string>() { "DEV.Config"};
});
IConfiguration config = configurationBuilder.Build();
var mqttBroker = config.GetSection("BrokerHostSettings");
//while (StockServer == null)
//{
// try
// {
// IConfigurationBuilder configurationBuilder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddConsul(ConsulAddress, "root/basic.json", false, 5_000);
// IConfiguration config = configurationBuilder.Build();
// MqttUserName = config["MQTT:TcpAccount"];
// MqttPassword = config["MQTT:TcpPwd"];
// MqttAddress = config["MQTT:IP"];
// MqttPort = int.Parse(config["MQTT:Client"]);
// ApiAddress = config["GateWay:BaseURL"];
// OrderServer = config["GateWay:Order"];
// StockServer = config["GateWay:Stock"];
// IotApiAddress = config["IOT:Address"];
// }
// catch (Exception ex)
// {
// MessageLog.GetInstance.Show(ex.ToString());
// Thread.Sleep(30000);
// }
//}
}



/// <summary>
/// Consul 地址
/// </summary>
public static string ConsulAddress { get; set; }

/// <summary>
/// 网络连接状态
/// </summary>
public static bool NetworkConnectState { get; set; }

/// <summary>
/// 广告地址
/// </summary>
public static Uri SorbetesAddress { get; set; }

/// <summary>
/// 客户端ID
/// </summary>
public static int ClientId { get; set; }

/// <summary>
/// IOTAPI 地址
/// </summary>
public static string IotApiAddress { get; set; }

#region MQTT连接信息
/// <summary>
/// mqtt 服务地址
/// </summary>
public static string MqttAddress { get; set; }

/// <summary>
/// mqtt 用户名
/// </summary>
public static string MqttUserName { get; set; }

/// <summary>
/// mqtt 密码
/// </summary>
public static string MqttPassword { get; set; }

/// <summary>
/// mqtt 端口号
/// </summary>
public static int MqttPort { get; set; }
#endregion

#region API地址

/// <summary>
/// Api 网关地址
/// </summary>
public static string ApiAddress { get; set; }

/// <summary>
/// 订单服务
/// </summary>
public static string OrderServer { get; set; }

/// <summary>
/// 库存服务
/// </summary>
public static string StockServer { get; set; }
#endregion

}
}

+ 43
- 0
BPASmartClient.Business/MainConsole.cs 查看文件

@@ -0,0 +1,43 @@
using HBLConsole.Communication;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.Business
{
/// <summary>
/// 主控入口
/// </summary>
public class MainConsole
{
/// <summary>
/// 主业务线开始
/// </summary>
public void Start()
{
//网络相关
InternetInfo.InitConfig();
//业务插件初始化
Plugin.GetInstance().Init();
//主题初始化
TopicDefine.GetInstance().Initialize(Plugin.GetInstance().GetPlugin<DeviceMgr>().GetDevices());
//MQTT 重连成功
MqttHelper.GetInstance().Reconnection = new Action(() =>
{
MqttHelper.GetInstance().MqttSubscriptionAsync(TopicDefine.GetInstance().SubscribTopics.ToArray());
});
//MQTT 连接
MqttHelper.GetInstance().MqttInitAsync(InternetInfo.MqttUserName, InternetInfo.MqttPassword,
InternetInfo.MqttAddress, InternetInfo.MqttPort, DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss"));
}

/// <summary>
/// 主业务线停止
/// </summary>
public void Stop()
{
}
}
}

BPASmartClient.Business/ConfigMgr.cs → BPASmartClient.Business/Plugin/ConfigMgr.cs 查看文件


BPASmartClient.Business/DeviceMgr.cs → BPASmartClient.Business/Plugin/DeviceMgr.cs 查看文件

@@ -27,6 +27,11 @@ namespace BPASmartClient.Business
LoadDevice();
}

public List<IDevice> GetDevices()
{
return devices;
}

/// <summary>
/// 设备加载
/// </summary>
@@ -54,6 +59,8 @@ namespace BPASmartClient.Business
}
}



public void StartService()
{
this.devices.ForEach(device => device.StartMain());

BPASmartClient.Business/IPlugin.cs → BPASmartClient.Business/Plugin/IPlugin.cs 查看文件


+ 44
- 0
BPASmartClient.Business/Plugin/MQTTMgr.cs 查看文件

@@ -0,0 +1,44 @@
using HBLConsole.Communication;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.Business
{
public class MQTTMgr : IPlugin
{
//消息缓存
private ConcurrentQueue<string> msg = new ConcurrentQueue<string>();

public void Initialize()
{
//MQTT 重连成功
MqttHelper.GetInstance().Reconnection = new Action(() =>
{
MqttHelper.GetInstance().MqttSubscriptionAsync(TopicDefine.GetInstance().SubscribTopics.ToArray());
});

//MQTT 连接成功
MqttHelper.GetInstance().ConnectOk = new Action(() =>
{
MqttHelper.GetInstance().MqttSubscriptionAsync(TopicDefine.GetInstance().SubscribTopics.ToArray());
});
//MQTT 数据接收
MqttHelper.GetInstance().MqttReceive = new Action<MQTTnet.MqttApplicationMessageReceivedEventArgs>((receivce) =>
{
msg.Enqueue(Encoding.UTF8.GetString(receivce.ApplicationMessage.Payload));
});
//MQTT 初始化
MqttHelper.GetInstance().MqttInitAsync(InternetInfo.MqttUserName, InternetInfo.MqttPassword,
InternetInfo.MqttAddress, InternetInfo.MqttPort, DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss"));
}

public void Dispose()
{
MqttHelper.GetInstance().Close();
}
}
}

+ 20
- 0
BPASmartClient.Business/Plugin/OrderProxy.cs 查看文件

@@ -0,0 +1,20 @@
using HBLConsole.Communication;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.Business
{
public class OrderProxy : IPlugin
{
public void Initialize()
{
}

public void Dispose()
{
}
}
}

BPASmartClient.Business/Plugin.cs → BPASmartClient.Business/Plugin/Plugin.cs 查看文件


+ 39
- 0
BPASmartClient.Business/TopicDefine.cs 查看文件

@@ -0,0 +1,39 @@
using BPA.Message;
using BPA.Message.Enum;
using BPASmartClient.Device;
using BPASmartClient.Helper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.Business
{
/// <summary>
/// 主题定义
/// </summary>
public class TopicDefine : Singleton<TopicDefine>
{
/// <summary>
/// 获取订阅主题
/// </summary>
public List<string> SubscribTopics { get; private set; }
/// <summary>
/// 获取心跳上报主题
/// </summary>
public Dictionary<DeviceClientType, string> PushHeartbeatTopics { get; set; }
public void Initialize(List<IDevice> devices)
{
SubscribTopics = new List<string>();
PushHeartbeatTopics = new Dictionary<DeviceClientType, string>();
foreach (var device in devices)
{
SubscribTopics.Add(TOPIC.GetInstance.GetOrderPushTopic(device.DeviceType, InternetInfo.ClientId));
SubscribTopics.Add(TOPIC.GetInstance.GetBusinessTopic(device.DeviceType, InternetInfo.ClientId));

PushHeartbeatTopics.Add(device.DeviceType, TOPIC.GetInstance.GetHeatbeatTopic(device.DeviceType));
}
}
}
}

+ 4
- 0
BPASmartClient.Device/BPASmartClient.Device.csproj 查看文件

@@ -4,6 +4,10 @@
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BPA.Message" Version="1.0.9" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\BPASmartClient.Peripheral\BPASmartClient.Peripheral.csproj" />
</ItemGroup>


+ 9
- 1
BPASmartClient.Device/BaseDevice.cs 查看文件

@@ -1,4 +1,5 @@
using BPASmartClient.Peripheral;
using BPA.Message.Enum;
using BPASmartClient.Peripheral;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -20,7 +21,14 @@ namespace BPASmartClient.Device
/// 设备所有状态
/// </summary>
public DeviceStatus Status { get; set; }
/// <summary>
/// 设备名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 设备类型
/// </summary>
public abstract DeviceClientType DeviceType { get; }

public void Initliaze()
{


+ 9
- 1
BPASmartClient.Device/IDevice.cs 查看文件

@@ -1,4 +1,5 @@
using BPASmartClient.Peripheral;
using BPA.Message.Enum;
using BPASmartClient.Peripheral;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -16,8 +17,15 @@ namespace BPASmartClient.Device
/// 设备ID
/// </summary>
string DeviceId { get; set; }
/// <summary>
/// 设备名称
/// </summary>
string Name { get; set; }
/// <summary>
/// 设备类型
/// </summary>
DeviceClientType DeviceType { get; }
/// <summary>
/// 设备所有状态
/// </summary>
DeviceStatus Status { get; set; }


+ 0
- 12
BPASmartClient.DeviceProxy/BPASmartClient.DeviceProxy.csproj 查看文件

@@ -1,12 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\BPASmartClient.Device\BPASmartClient.Device.csproj" />
<ProjectReference Include="..\BPASmartClient.Helper\BPASmartClient.Helper.csproj" />
</ItemGroup>

</Project>

+ 0
- 26
BPASmartClient.DeviceProxy/DeviceMgr.cs 查看文件

@@ -1,26 +0,0 @@
using BPASmartClient.Device;
using BPASmartClient.Helper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.DeviceProxy
{
/// <summary>
/// 设备管理器,统一管理所有设备资源
/// </summary>
public class DeviceMgr:Singleton<DeviceMgr>
{
//设备集合
private List<IDevice> devices=new List<IDevice>();

/// <summary>
/// 设备加载
/// </summary>
public void LoadDevice() {
}
}
}

+ 4
- 5
BPASmartClient.MQTT/MqttHelper.cs 查看文件

@@ -8,13 +8,9 @@ using System.Threading;

namespace HBLConsole.Communication
{
public class MqttHelper
public class MqttHelper:Singleton<MqttHelper>
{

private volatile static MqttHelper _Instance;
public static MqttHelper GetInstance => _Instance ?? (_Instance = new MqttHelper());
private MqttHelper() { }

private IMqttClient client;
IMqttClientOptions options;

@@ -71,7 +67,10 @@ namespace HBLConsole.Communication
MessageLog.GetInstance.Show("MQTT连接成功!");
if (ConnectOk != null) ConnectOk();
}
}

public async void Close() {
await client.DisconnectAsync();
}

private void Reconnect()


+ 4
- 0
BPASmartClient.MorkT/BPASmartClient.MorkT.csproj 查看文件

@@ -4,6 +4,10 @@
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BPA.Message" Version="1.0.9" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\BPASmartClient.Device\BPASmartClient.Device.csproj" />
</ItemGroup>


+ 2
- 0
BPASmartClient.MorkT/Device_MorkT.cs 查看文件

@@ -10,6 +10,8 @@ namespace BPASmartClient.MorkT
{
public class Device_MorkT : BaseDevice
{
public override global::BPA.Message.Enum.DeviceClientType DeviceType { get { return BPA.Message.Enum.DeviceClientType.MORKIC; } }

public override void StartMain()
{
}


+ 0
- 7
BPASmartClient.OrderProxy/Class1.cs 查看文件

@@ -1,7 +0,0 @@
namespace BPASmartClient.OrderProxy
{
public class Class1
{

}
}

+ 25
- 0
BPASmartClient/App.config 查看文件

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!--通用配置-->

<!--测试服务 Consul 地址-->
<add key="ConsulAddress" value="http://111.9.47.105:9011/" />

<!--正式服务 Consul 地址-->
<!--<add key="ConsulAddress" value="http://162.14.105.138:9005" />-->

<!--客户端ID-->
<!--1:且时且多冰淇淋咖啡机,2:且时且多煮面机,3:海科煮面机测试店铺-->
<add key="ClientId" value="12"/>

<add key="COM_Coffee" value="COM3"/>
<add key="BAUD_Coffee" value="115200"/>
<add key="COM_IceCream" value="COM12"/>
<add key="BAUD_IceCream" value="9600"/>
<add key="IceCream_CXB_Threshold" value="90"/>
<add key="COM_ICChip" value="COM6"/>
<add key="BAUD_IChip" value="9600"/>

</appSettings>
</configuration>

+ 1
- 0
BPASmartClient/BPASmartClient.csproj 查看文件

@@ -5,6 +5,7 @@
<TargetFramework>net6.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWPF>true</UseWPF>
<StartupObject>BPASmartClient.App</StartupObject>
</PropertyGroup>

<ItemGroup>


+ 1
- 1
BPASmartClient/MainWindow.xaml.cs 查看文件

@@ -25,8 +25,8 @@ namespace BPASmartClient
{
public MainWindow()
{
Plugin.GetInstance().Init();
InitializeComponent();
new MainConsole().Start();
}

private void Button_Click(object sender, RoutedEventArgs e)


+ 8
- 15
SmartClient.sln 查看文件

@@ -41,8 +41,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.Helper", "BP
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.Message", "BPASmartClient.Message\BPASmartClient.Message.csproj", "{C517D33F-8800-405E-9D59-E1F6CA201431}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.DeviceProxy", "BPASmartClient.DeviceProxy\BPASmartClient.DeviceProxy.csproj", "{9D26C2D6-CF32-4FB6-A15E-8A1455DACD69}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.Status", "BPASmartClient.Status\BPASmartClient.Status.csproj", "{2C8DAB92-D5EB-4462-87C1-0BED75B26C54}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.IoT", "BPASmartClient.IoT\BPASmartClient.IoT.csproj", "{D3DBCC2D-086E-4E3A-B70A-22A79FB295CF}"
@@ -63,9 +61,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.OrderProxy",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.MessageCommunication", "BPASmartClient.MessageCommunication\BPASmartClient.MessageCommunication.csproj", "{DCC07B39-E342-4841-B9E4-4D44DA2978FD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BPASmartClient.EventBus", "BPASmartClient.EventBus\BPASmartClient.EventBus.csproj", "{C7FC5FC8-4C72-4CD3-973E-327BDA880DF5}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.EventBus", "BPASmartClient.EventBus\BPASmartClient.EventBus.csproj", "{C7FC5FC8-4C72-4CD3-973E-327BDA880DF5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BPASmartClient.Model", "BPASmartClient.Model\BPASmartClient.Model.csproj", "{268012B6-C4FC-4C40-802C-74D5FAD3CA45}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.Model", "BPASmartClient.Model\BPASmartClient.Model.csproj", "{268012B6-C4FC-4C40-802C-74D5FAD3CA45}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.Business", "BPASmartClient.Business\BPASmartClient.Business.csproj", "{EF5EF8EF-4A44-4E44-9594-D878CABC4182}"
EndProject
@@ -74,7 +72,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
.editorconfig = .editorconfig
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BPASmartClient.CustomResource", "BPASmartClient.CustomResource\BPASmartClient.CustomResource.csproj", "{CB1BC55F-D267-4724-89BE-96E3A5E432A6}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BPASmartClient.CustomResource", "BPASmartClient.CustomResource\BPASmartClient.CustomResource.csproj", "{CB1BC55F-D267-4724-89BE-96E3A5E432A6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lebai.SDK", "Lebai.SDK\Lebai.SDK.csproj", "{3A55F68A-D526-4CFC-A5A6-B69FB76716C2}"
EndProject
@@ -136,10 +134,6 @@ Global
{C517D33F-8800-405E-9D59-E1F6CA201431}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C517D33F-8800-405E-9D59-E1F6CA201431}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C517D33F-8800-405E-9D59-E1F6CA201431}.Release|Any CPU.Build.0 = Release|Any CPU
{9D26C2D6-CF32-4FB6-A15E-8A1455DACD69}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9D26C2D6-CF32-4FB6-A15E-8A1455DACD69}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9D26C2D6-CF32-4FB6-A15E-8A1455DACD69}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9D26C2D6-CF32-4FB6-A15E-8A1455DACD69}.Release|Any CPU.Build.0 = Release|Any CPU
{2C8DAB92-D5EB-4462-87C1-0BED75B26C54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2C8DAB92-D5EB-4462-87C1-0BED75B26C54}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2C8DAB92-D5EB-4462-87C1-0BED75B26C54}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -180,10 +174,6 @@ Global
{DCC07B39-E342-4841-B9E4-4D44DA2978FD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DCC07B39-E342-4841-B9E4-4D44DA2978FD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DCC07B39-E342-4841-B9E4-4D44DA2978FD}.Release|Any CPU.Build.0 = Release|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Release|Any CPU.Build.0 = Release|Any CPU
{C7FC5FC8-4C72-4CD3-973E-327BDA880DF5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C7FC5FC8-4C72-4CD3-973E-327BDA880DF5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C7FC5FC8-4C72-4CD3-973E-327BDA880DF5}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -196,6 +186,10 @@ Global
{EF5EF8EF-4A44-4E44-9594-D878CABC4182}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EF5EF8EF-4A44-4E44-9594-D878CABC4182}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EF5EF8EF-4A44-4E44-9594-D878CABC4182}.Release|Any CPU.Build.0 = Release|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CB1BC55F-D267-4724-89BE-96E3A5E432A6}.Release|Any CPU.Build.0 = Release|Any CPU
{3A55F68A-D526-4CFC-A5A6-B69FB76716C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3A55F68A-D526-4CFC-A5A6-B69FB76716C2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3A55F68A-D526-4CFC-A5A6-B69FB76716C2}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -218,7 +212,6 @@ Global
{B399BCFF-82E8-4940-9CE5-B7DCDDFDC696} = {9FB27073-61A0-4FE3-94DB-5FDDE062332F}
{A2A5CB83-11C7-4534-A65D-6F957B60EEFF} = {1A9920BA-7C8D-4BDC-8D7D-6544A71AF3CF}
{C517D33F-8800-405E-9D59-E1F6CA201431} = {1A9920BA-7C8D-4BDC-8D7D-6544A71AF3CF}
{9D26C2D6-CF32-4FB6-A15E-8A1455DACD69} = {6CEA3385-6F62-452A-8275-033A6037235D}
{2C8DAB92-D5EB-4462-87C1-0BED75B26C54} = {6CEA3385-6F62-452A-8275-033A6037235D}
{D3DBCC2D-086E-4E3A-B70A-22A79FB295CF} = {6CEA3385-6F62-452A-8275-033A6037235D}
{2BA531E8-7F85-4EBF-AE97-811CD7C83EF2} = {8712125E-14CD-4E1B-A1CE-4BDE03805942}
@@ -229,10 +222,10 @@ Global
{9F5E2879-972A-45FB-913C-89E9F0CEB189} = {666CB1A9-562E-453A-A2C7-FD9D77CFDFDD}
{EBDFF87C-0B98-4BB5-8760-D86964E38A88} = {6CEA3385-6F62-452A-8275-033A6037235D}
{DCC07B39-E342-4841-B9E4-4D44DA2978FD} = {3D1D0E04-03FD-480A-8CF8-6E01A2E28625}
{CB1BC55F-D267-4724-89BE-96E3A5E432A6} = {8712125E-14CD-4E1B-A1CE-4BDE03805942}
{C7FC5FC8-4C72-4CD3-973E-327BDA880DF5} = {1A9920BA-7C8D-4BDC-8D7D-6544A71AF3CF}
{268012B6-C4FC-4C40-802C-74D5FAD3CA45} = {1A9920BA-7C8D-4BDC-8D7D-6544A71AF3CF}
{EF5EF8EF-4A44-4E44-9594-D878CABC4182} = {6CEA3385-6F62-452A-8275-033A6037235D}
{CB1BC55F-D267-4724-89BE-96E3A5E432A6} = {8712125E-14CD-4E1B-A1CE-4BDE03805942}
{3A55F68A-D526-4CFC-A5A6-B69FB76716C2} = {666CB1A9-562E-453A-A2C7-FD9D77CFDFDD}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution


正在加载...
取消
保存