|
|
@ -28,6 +28,8 @@ public partial class LoginWindow : Window |
|
|
|
private void checkNvidia() |
|
|
|
private void checkNvidia() |
|
|
|
{ |
|
|
|
{ |
|
|
|
string nvidiaVersion = ""; |
|
|
|
string nvidiaVersion = ""; |
|
|
|
|
|
|
|
try |
|
|
|
|
|
|
|
{ |
|
|
|
using (Process process = new Process()) |
|
|
|
using (Process process = new Process()) |
|
|
|
{ |
|
|
|
{ |
|
|
|
process.StartInfo.FileName = "nvidia-smi"; |
|
|
|
process.StartInfo.FileName = "nvidia-smi"; |
|
|
@ -63,13 +65,14 @@ public partial class LoginWindow : Window |
|
|
|
// 获取完整的输出和错误信息 |
|
|
|
// 获取完整的输出和错误信息 |
|
|
|
string outputMsg = outputBuilder.ToString(); |
|
|
|
string outputMsg = outputBuilder.ToString(); |
|
|
|
string errorMsg = errorBuilder.ToString(); |
|
|
|
string errorMsg = errorBuilder.ToString(); |
|
|
|
nvidiaVersion = (string.IsNullOrWhiteSpace(errorMsg)?outputMsg:errorMsg).Trim(); |
|
|
|
nvidiaVersion = (string.IsNullOrWhiteSpace(errorMsg) ? outputMsg : errorMsg).Trim(); |
|
|
|
if (process.ExitCode == 0 || !string.IsNullOrWhiteSpace(nvidiaVersion)) |
|
|
|
if (process.ExitCode == 0 || !string.IsNullOrWhiteSpace(nvidiaVersion)) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (CompareVersions(nvidiaVersion, "528.33") <= 0) |
|
|
|
if (CompareVersions(nvidiaVersion, "528.33") <= 0) |
|
|
|
{ |
|
|
|
{ |
|
|
|
MessageBox messageBox = new MessageBox(); |
|
|
|
MessageBox messageBox = new MessageBox(); |
|
|
|
messageBox.Show(MultilingualHelper.getString("NotNvidiaVersionLow").Replace("%version", nvidiaVersion)); |
|
|
|
messageBox.Show(MultilingualHelper.getString("NotNvidiaVersionLow") |
|
|
|
|
|
|
|
.Replace("%version", nvidiaVersion)); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
@ -79,6 +82,13 @@ public partial class LoginWindow : Window |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
catch (Exception ex) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Logger.Error(ex.Message); |
|
|
|
|
|
|
|
MessageBox messageBox = new MessageBox(); |
|
|
|
|
|
|
|
messageBox.Show(MultilingualHelper.getString("NotNvidia")); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static int CompareVersions(string versionA, string versionB) |
|
|
|
public static int CompareVersions(string versionA, string versionB) |
|
|
|
{ |
|
|
|
{ |
|
|
|