2021.03.23 14:33:50.492 array out of range in 'SMBIOS.mqh' (170,8)
Es scheint eine andere Anzahl von Feldern zu geben. Ich habe versucht, ein Array mit einem Rand zu erstellen und zu sehen, ob es sich bewegt. Wiederveröffentlichte SMBIOS.mqh.
PS: wie gesagt, nur auf einem Computer getestet. Kein Zugang zu den anderen. Es muss Ihnen also nicht leid tun.wie man es hübsch aussehen lässt:
template <typename T> T StringToInteger2( const string Str ) { T Res = 0; // const int Size = MathMin(StringLen(Str), sizeof(T)); const int Size = StringLen(Str); for (int i = 0; i < Size; i++) Res = (Res << 8) + Str[i]; return(Res); } //const uint SMBIOS_signature = 'RSMB'; const uint SMBIOS_signature = StringToInteger2<uint>("RSMB");
Es scheint eine andere Anzahl von Feldern zu geben. Ich habe versucht, ein Array mit einem Rand zu erstellen und zu sehen, ob es sich verschiebt. Wiederveröffentlichte SMBIOS.mqh.
2021.03.23 14:49:24.516 Location in chassis: 2021.03.23 14:49:24.516 array out of range in 'SMBIOS.mqh' (192,24)
Ich danke Ihnen. Schön, aber irgendwie überflüssig. Ich möchte es ohne ausführbaren Code.
Win7 x64
Es hat geklappt, ich muss es mit 4 verschrauben,
Funktioniert auch, wenn man nicht eingeloggt ist.
2021.03.23 15:40:24.109 Terminal Windows 7 Service Pack 1 build 7601, Intel Core i3-3220 @ 3.30GHz, 0 / 7 Gb Speicher, 11 / 298 Gb Festplatte, IE 11, UAC, GMT+3
FM 0 15:51:26.042 Test_SMBIOS (USDSEK,M1) System Management BIOS Version: 2.7 GF 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) System BIOS Version: 4.6 RM 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Embedded Controller Firmware Version: 255.255 LJ 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) BIOS Vendor: American Megatrends Inc. QN 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) BIOS Version: V1.6 DI 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) BIOS Release Date: 04/17/2012 RE 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) UUID: {0000-00-00-00-8 c89a5ffbfb6} FL 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) System Manufacturer: MSI DE 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Product Name: MS-7788 QR 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Product Version: 1.0 KK 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Product Serial Number: To be filled by O.E.M. ON 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) SKU Number: To be filled by O.E.M. KH 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Family: To be filled by O.E.M. FH 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Mainboard Manufacturer: MSI OL 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Mainboard Name: H61M-P20 (G3) (MS-7788) ED 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Mainboard Version: 1.0 KM 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Mainboard Serial Number: To be filled by O.E.M. EN 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Asset Tag: To be filled by O.E.M. CI 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) Location in chassis: To be filled by O.E.M. MP 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) {0000-00-00-00-8 c89a5ffbfb6} EH 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) To be filled by O.E.M. IP 0 15:51:26.043 Test_SMBIOS (USDSEK,M1) To be filled by O.E.M.
Eine weitere Korrektur.
Win7 x64
Ist das die gesamte Ausgabe?

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Geschriebener Code zum Lesen von Hardware-Informationen (Motherboard und Plattform) aus SMBIOS. Natürlich wird die WinAPI verwendet. Kann verwendet werden, um Produkte an Hardware zu binden. Meiner Meinung nach macht es keinen Sinn, sich an etwas anderes als die Hauptplatine zu binden. Laufwerke und Grafikkarten sind variabel.
Fügen Sie SMBIOS.mqh in Include ein.
Test SMBIOS.mq5 - in Skripten.
Für den echten Gebrauch, wenn Sie keine unnötigen Informationen benötigen, kommentieren Sie es aus / definieren Sie nicht #define SMBIOS_DEBUG
Ich habe es nur auf einem Laptop und einem VPS getestet, und es muss überprüft und gemeldet werden, wenn es nicht richtig funktioniert. Überprüfen Sie die Daten mit dem Programm hwinfo.
1. Der Code geht davon aus, dass die Daten von SMBIOS in einer festen Reihenfolge ausgegeben werden.Wenn es alsoUnstimmigkeiten gibt, ist es ratsam, eine vollständige Testausgabe und Screenshots von hwinfo auf den Registerkarten BIOS, System, Mainboard und Systemgehäuse im Motherboard/SMBIOS-DMI-Baum zu erstellen. Andernfalls kann ich keine Fehlersuche durchführen.
2. Ich brauche einen Rat von Handy-Programmierern, wie man es hier schön aussehen lassen kann: