修改菜单加载逻辑
This commit is contained in:
@@ -125,10 +125,15 @@ namespace JoyD.Windows.CS.Toprie
|
|||||||
{
|
{
|
||||||
_deviceManager.ProjectPath = _projectPath;
|
_deviceManager.ProjectPath = _projectPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ProjectPath改变时,无论是否为自动配置,都要加载菜单
|
||||||
|
LoadMenuConfig();
|
||||||
|
|
||||||
// 只有当自动配置开启时,才加载配置文件
|
// 只有当自动配置开启时,才加载配置文件
|
||||||
if (_autoConfig && !_isConfigLoaded)
|
if (_autoConfig && !_isConfigLoaded)
|
||||||
{
|
{
|
||||||
LoadAllConfigs();
|
LoadZoneConfig();
|
||||||
|
LoadTemperatureDiffConfig();
|
||||||
// 设置配置已加载标志
|
// 设置配置已加载标志
|
||||||
_isConfigLoaded = true;
|
_isConfigLoaded = true;
|
||||||
}
|
}
|
||||||
@@ -332,6 +337,7 @@ namespace JoyD.Windows.CS.Toprie
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void LoadAllConfigs()
|
private void LoadAllConfigs()
|
||||||
{
|
{
|
||||||
|
LoadMenuConfig();
|
||||||
LoadZoneConfig();
|
LoadZoneConfig();
|
||||||
LoadTemperatureDiffConfig();
|
LoadTemperatureDiffConfig();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2250,7 +2250,11 @@ namespace JoyD.Windows.CS.Toprie
|
|||||||
// 如果解析失败或长度不合理,使用默认值
|
// 如果解析失败或长度不合理,使用默认值
|
||||||
if (payloadLength <= 0 || payloadLength > 1000000) // 合理性检查
|
if (payloadLength <= 0 || payloadLength > 1000000) // 合理性检查
|
||||||
{
|
{
|
||||||
Log($"警告: 从头部解析的payload长度不合理 ({payloadLength}),使用默认值");
|
// 提取原始4个字节,不作字节序变换
|
||||||
|
byte[] rawBytes = new byte[4];
|
||||||
|
Array.Copy(headerData, 5, rawBytes, 0, 4);
|
||||||
|
string hexString = BitConverter.ToString(rawBytes).Replace("-", "");
|
||||||
|
Log($"警告: 从头部解析的payload长度不合理 ({hexString}={payloadLength}),使用默认值");
|
||||||
payloadLength = WIDTH * HEIGHT * 2; // 使用默认分辨率计算
|
payloadLength = WIDTH * HEIGHT * 2; // 使用默认分辨率计算
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user