diff --git a/Plane.Windows.Messages/Message.cs b/Plane.Windows.Messages/Message.cs index 3d36b7d..b9f403f 100644 --- a/Plane.Windows.Messages/Message.cs +++ b/Plane.Windows.Messages/Message.cs @@ -8,6 +8,7 @@ namespace Plane.Windows.Messages public static class Message { private static Action ShowAction { get; set; } + private static Action ConnectAction { get; set; } public static void Configure(Action showAction) { @@ -18,5 +19,15 @@ namespace Plane.Windows.Messages { ShowAction?.Invoke(message); } + + public static void Configure(Action connectAction) + { + ConnectAction = connectAction; + } + + public static void Connect(bool isConnected) + { + ConnectAction?.Invoke(isConnected); + } } } diff --git a/Plane.Windows/IniHelper/IniFiles.cs b/Plane.Windows/IniHelper/IniFiles.cs new file mode 100644 index 0000000..98dfdd4 --- /dev/null +++ b/Plane.Windows/IniHelper/IniFiles.cs @@ -0,0 +1,58 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; + +namespace Plane.Windows.IniHelper +{ + /// + /// IniFiles 的摘要说明。 + /// 示例文件路径:C:\file.ini + /// [Server] //[*] 表示缓存区 + /// name=localhost //name 表示主键,localhost 表示值 + /// + public class IniFiles + { + public string path; + [DllImport("kernel32")] //返回0表示失败,非0为成功 + private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); + [DllImport("kernel32")] //返回取得字符串缓冲区的长度 + private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath); + /// + /// 保存ini文件的路径 + /// 调用示例:var ini = IniFiles("C:\file.ini"); + /// + /// + public IniFiles() + { + this.path = Environment.CurrentDirectory + @"\Config.ini"; + } + /// + /// 写Ini文件 + /// 调用示例:ini.IniWritevalue("Server","name","localhost"); + /// + /// [缓冲区] + /// 键 + /// 值 + public void IniWritevalue(string Section, string Key, string value) + { + WritePrivateProfileString(Section, Key, value, this.path); + } + /// + /// 读Ini文件 + /// 调用示例:ini.IniWritevalue("Server","name"); + /// + /// [缓冲区] + /// 键 + /// + public string IniReadvalue(string Section, string Key) + { + StringBuilder temp = new StringBuilder(255); + + int i = GetPrivateProfileString(Section, Key, "", temp, 255, this.path); + return temp.ToString(); + } + + } +} diff --git a/Plane.Windows/Plane.Windows.csproj b/Plane.Windows/Plane.Windows.csproj index 142d995..c5e52f1 100644 --- a/Plane.Windows/Plane.Windows.csproj +++ b/Plane.Windows/Plane.Windows.csproj @@ -51,6 +51,7 @@ +